![/proc/[pid]/status는 항상 kB를 사용합니까?](https://linux55.com/image/64120/%2Fproc%2F%5Bpid%5D%2Fstatus%EB%8A%94%20%ED%95%AD%EC%83%81%20kB%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
특히 proc
VmRSS 값은 항상 kB
? 믿을만한 답변을 찾을 수 없습니다문서, 유닛에 붙어 있는 것처럼 보이지만.
답변1
예, 항상 kB 단위입니다. 정확하게는 KiB(1000이 아닌 1024바이트)입니다.
적어도 Linux 4.0에서는(그리고 이 코드는 최소한 2005년 4월 이후로 본질적으로 변경되지 않았습니다. 이때 Linus가 전환했으며 git
더 이상 확인하고 싶지 않습니다)task_mem
존재하다fs/proc/task_mmu.c
. 몇 줄 발췌:
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),
⋮
);
C를 읽을 수 있는지 확실하지 않지만 "kB"가 하드코딩되어 있습니다. 다른 장치에 대한 논리 출력은 없습니다.