Mein Ubuntu verbraucht mehr Speicher, als der Task-Manager anzeigt:
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
Das ist seltsam. Kann jemand diesen Unterschied erklären?
Was aber noch wichtiger ist: Ich möchte wissen, wie viel Speicher ein Prozess wirklich verbraucht. Ich möchte nicht die Größe des virtuellen Speichers kennen, sondern den residenten Speicher plus den Swap eines Prozesses.
Ich habe auch versucht, das Format param "sz" von 'ps' auszugeben, aber die Summe davon ist zu hoch (16000 MB) (param 'size' ergibt 36700 MB). Gibt es noch andere Möglichkeiten?
Ich möchte das wirklich nutzen, um zu bestimmen, welche Programme / Prozesse zu viel Speicher verbrauchen (und tauschen), um sie zu töten, weil Speicher wertvoll ist :-) Das ergibt einfach keinen Sinn, also frage ich hier.
Ausgabe von / 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