Sea*_*abs 8 linux top arm busybox
我在小型嵌入式 ARM 系统上使用 BusyBox。我正在尝试读取“顶部”输出,特别是对于列出的 Python 进程。这个进程使用了多少实际内存?还有 VSZ 代表什么?该系统只有 64MB 的 RAM。
内存:已使用 41444K,可用 20572K,0K 碎片,0K buff,18728K 缓存 CPU:3% usr 3% sys 0% nic 92% idle 0% io 0% irq 0% sirq 平均负载:0.00 0.04 0.05 1/112 31667 PID PPID 用户状态 VSZ %VSZ %CPU 命令 777 775 python S 146m 241% 3% /usr/bin/python -u -- dpdsrv.py
VSZ
(或者VIRT
,取决于 的版本top
)是映射到进程地址空间的内存量。它包括由进程的可执行文件和共享库、其堆和堆栈以及它已映射的任何其他内容支持的页面。
在您显示的示例输出的情况下,虚拟大小大于系统上的物理内存量,因此进程地址空间中的某些(大多数!)页面在物理上并不存在于 RAM 中。这不是问题:许多程序包含大量代码并映射大量共享库,但它们实际上只使用该代码的某些部分,或者至少同时只使用该代码的某些部分,这允许内核丢弃不使用时从内存中取出未使用的部分,甚至从一开始就从不加载它们。
您的版本top
似乎没有显示一RES
列,它会告诉您进程地址空间中有多少内存当前驻留在 RAM 中。
归档时间: |
|
查看次数: |
17321 次 |
最近记录: |