Při zjišťování informací o tom kolik zabírá konkrétní proces paměti, získáme několik odlišných hodnot. Konkrétně VIRT
, RES
, SHR
, SWAP
, CODE
a DATA
, což může být matoucí, ale vzhledem k tomu, že pokaždé řešíme trochu odlišný problém, hledáme pokaždé odlišné informace. Proto je třeba pochopit význam jednotlivých hodnot, které jsou níže detailněji popsány.
Přesto nejčastěji hledáme hodnotu RES+SWAP-SHR
.
Jde o kompletní paměť mapovanou procesem. Tato hodnota zahrnuje kód, data, sdílené knihovny, swapované stránky i soubory mapované do paměti. Jedná se o zavádějící hodnotu, protože například mapované soubory nejsou ihned uloženy do paměti, ale natahují se až ve chvíli, kdy jsou některé jejich části skutečně potřeba. Hodnota tedy zahrnuje i data, která v paměti aktuálně ani nejsou.
Hodnota, kterou proces skutečně zabírá ve fyzické paměti RAM. Ale POZOR, v této hodnotě není zahrnuta paměť, která může být swapována, a naopak je v ní zahrnuta sdílená paměť SHR
.
Jedná se o část paměti, která může být potencionálně sdílena s jinými procesy. Například paměť s binárním kódem (především knihovny) je jen pro čtení, takže do ní nelze zapisovat a není problém ji tedy sdílet. Prakticky každý proces potřebuje systémovou knihovnu glibc, ta je mu tedy mapována, ale nekopíruje se, zůstává tedy v paměti jen jednou.
Velikost dat odložených do swapu.
Fyzická paměť pro executable code, označovaná jako ’text resident set’ neboli TRS
.
Fyzická paměť pro vše kromě executable code, označovaná jako ’data resident set’ neboli DRS
.