/ Proc / [pid] / status usa sempre kB?


10

In particolare, procelenca sempre il valore VmRSS in kB? Non riesco a trovare una risposta solida sulla documentazione , anche se sembra che si attacchi a un'unità.

Risposte:


10

Sì, è sempre in KB. KiB (1024 byte, non 1000) per l'esattezza.

Almeno in Linux 4.0 (e questo codice è stato in gran parte invariato almeno dal aprile 2005, che, quando Linus passati a git, e non mi importa di controllare ulteriormente) che la produzione viene da task_meminfs/proc/task_mmu.c . Estrarre alcune righe:

seq_printf(m,
    "VmPeak:\t%8lu kB\n"
    "VmSize:\t%8lu kB\n"
    "VmLck:\t%8lu kB\n"
    "VmPin:\t%8lu kB\n"
    "VmHWM:\t%8lu kB\n"
    "VmRSS:\t%8lu kB\n"
    "VmData:\t%8lu kB\n"
    "VmStk:\t%8lu kB\n"
    "VmExe:\t%8lu kB\n"
    "VmLib:\t%8lu kB\n"
    "VmPTE:\t%8lu kB\n"
    "VmPMD:\t%8lu kB\n"
    "VmSwap:\t%8lu kB\n",
    hiwater_vm << (PAGE_SHIFT-10),
    
);

Non sono sicuro di poter leggere C, ma quel "kB" è codificato lì. Non esiste alcuna logica per l'uscita di qualsiasi altra unità.


Lo stesso vale per /proc/meminfo? man 5 procnon è esattamente chiaro qui.
olejorgenb,

1
@olejorgenb sì, è codificato anche come kB. Guarda dentro fs/proc/meminfo.c. (E per favore, manda una patch alla manpage per chiarire.)
derobert
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.