Ubuntu của tôi ăn nhiều bộ nhớ hơn trình quản lý tác vụ đang hiển thị:
sudo ps -e --format rss | awk 'BEGIN{c=0} {c+=$1} END{print c/1024}'
2750.29
free -m
total used free shared buffers cached
Mem: 3860 2765 1094 0 3 300
-/+ buffers/cache: 2461 1398
Swap: 2729 2374 354
Điều đó thật lạ. Ai đó có thể giải thích sự khác biệt này?
Nhưng điều quan trọng hơn: tôi muốn biết một quá trình thực sự sử dụng bao nhiêu bộ nhớ. Tôi không muốn biết kích thước bộ nhớ ảo, mà là bộ nhớ lưu trú cộng với hoán đổi của một quá trình.
Tôi cũng đã cố gắng xuất định dạng param "sz" của 'ps', nhưng tổng số này là cao (16000 MB) (kích thước param 'cho 36700 MB). Có sự lựa chọn nào khác không?
Tôi thực sự muốn sử dụng cái này, để xác định chương trình / quy trình nào đang ăn nhiều bộ nhớ (và trao đổi), để tiêu diệt chúng, bởi vì bộ nhớ rất có giá trị :-) Điều này thực sự không có ý nghĩa, vì vậy tôi đang hỏi ở đây.
Đầu ra của / Proc / meminfo:
MemTotal: 3952812 kB
MemFree: 1119192 kB
Buffers: 2676 kB
Cached: 290068 kB
SwapCached: 160980 kB
Active: 1805396 kB
Inactive: 731680 kB
Active(anon): 1745820 kB
Inactive(anon): 689184 kB
Active(file): 59576 kB
Inactive(file): 42496 kB
Unevictable: 148 kB
Mlocked: 148 kB
SwapTotal: 2795272 kB
SwapFree: 390900 kB
Dirty: 1984 kB
Writeback: 0 kB
AnonPages: 2085472 kB
Mapped: 67432 kB
Shmem: 190676 kB
Slab: 88012 kB
SReclaimable: 42704 kB
SUnreclaim: 45308 kB
KernelStack: 5496 kB
PageTables: 87860 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 4771676 kB
Committed_AS: 9522364 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 374404 kB
VmallocChunk: 34359330144 kB
HardwareCorrupted: 0 kB
AnonHugePages: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 61440 kB
DirectMap2M: 4030464 kB