你想找到那條線3427 1 根 S 36964 124% 2% tmux -L l在以下 top 指令的螢幕截圖中。
為什麼 tmux 可以使用超過 100% 的記憶體?這很令人困惑...
這是top指令的bug嗎?
Mem: 28748K used, 1060K free, 0K shrd, 888K buff, 2452K cached
CPU: 15% usr 80% sys 0% nic 3% idle 0% io 0% irq 0% sirq
Load average: 6.47 4.22 2.96 3/78 14674
PID PPID USER STAT VSZ %MEM %CPU COMMAND
1028 1 root S 1536 5% 8% /usr/sbin/pppd pty /usr/sbin/pptp 10.
81 2 root SW 0 0% 4% [mtdblockd]
1477 1 root S 2616 9% 4% /usr/sbin/collectd -f
3427 1 root S 36964 124% 2% tmux -L l
1561 1 root S 752 3% 1% /usr/bin/luci-bwc -d
273 2 root SW 0 0% 1% [usb-storage]
16393 6202 root R 1368 5% 1% top
955 1 root S 1420 5% 1% hostapd -P /var/run/wifi-phy0.pid -B
14299 21514 root R 1364 5% 1% top
345 1 root S 788 3% 1% /sbin/hotplug2 --override --persisten
949 2 root SW 0 0% 1% [irq/39-b43]
1619 1 root S 1588 5% 0% /bin/sh /usr/bin/multiwan agent
67 2 root SW 0 0% 0% [kswapd0]
2540 1619 root S 1496 5% 0% /bin/sh /usr/bin/multiwan agent
329 1 root S 1372 5% 0% syslogd -C16
1826 345 root S 784 3% 0% /sbin/hotplug2 --override --persisten
8859 9515 root S 3468 12% 0% vim python_pydiction.vim
1435 1 root S N 2632 9% 0% smbd -D
1507 1506 root S 2616 9% 0% /usr/sbin/collectd -f
1509 1506 root S 2616 9% 0% /usr/sbin/collectd -f
答案1
這是一個錯誤(或者可能是一個“功能”)忙碌盒。
busybox top 將 %MEM 計算為 VSZ/MemTotal,而不是 RSS/MemTotal。
從https://unix.stackexchange.com/questions/44948/what-do-tops-mem-and-vsz-mean
請記住 VSZ 是虛擬記憶體,其中的內容比實際記憶體還要多。
答案2
如果您有多個處理器,這是可能的。
跑步
expr $(grep processor /proc/cpuinfo | cut -d: -f2 | tail -1) + 1
查看您有多少處理器;這將找到processor
行,從中取出最後一個數字並將其加一。命令grep
搜索processor
,cut
獲取後面的部分:
並tail
獲取最後一行,expr
然後用於對其加 1;您可以執行man
這樣的命令來了解如何使用某個命令。