Particularmente, ¿ procsiempre enumera el valor de VmRSS en kB? No puedo encontrar una respuesta sólida en la documentación , aunque parece que se adhiere a una unidad.
10
Particularmente, ¿ procsiempre enumera el valor de VmRSS en kB? No puedo encontrar una respuesta sólida en la documentación , aunque parece que se adhiere a una unidad.
Sí, siempre está en kB. KiB (1024 bytes, no 1000) para ser exactos.
Por lo menos en Linux 4.0 (y el código ha sido en gran parte sin cambios desde por lo menos, abril de 2005- que es cuando cambiaron a Linus git, y yo no se preocupan de comprobar de nuevo más) que la producción viene de task_memenfs/proc/task_mmu.c . Extrayendo algunas líneas:
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),
⋮
);
No estoy seguro si puedes leer C, pero ese "kB" está codificado allí. No hay lógica para generar ninguna otra unidad.
/proc/meminfo?man 5 procNo está exactamente claro aquí.fs/proc/meminfo.c. (Y envíe un parche a la página de manual para aclararlo).