memoriahasznalat, shell

Hali!
Egy kerdes: shellbol egyszeruen hogyan tudom lekerdezni hogy egy program mennyi memoriat igenyelt futtatasa soran? Mint ahogy `time
` visszaadja a netto ill. valos futasi ido"t, ugyanez, csak memoriaban. A getrusage() C lib fuggveny alapjan talaltam meg hogy az /usr/bin/time (nem a shell-builtin `time`! az buta) ki tudja ezeket iratni, a man alapjan van is egy tonna memoriara vonatkozo kapcsoloja (-f %M %t %K %D %p %X %Z), de ezek mind 0-t adnak vissza (kiveve a pagesize, %Z, az kiadja hogy 4096). Szoval ez latszolag nem jo, tesztelve debian/etch es fedora/fc[78] disztrokon, mind sima mezei parancsokra (pl echo) mind cel-programokra, amikre kivancsi is vagyok - es ezutobbiakra me'g egy top is kimutatja hogy joparszaz mega't felvesz. Mind mezei juzerkent (mindenfele ulimit korlatozas nelkul, persze) es mind root-kent probaltam.
Otlet?
Koszi, A.

Hozzászólások

Hirtelen /proc nézegetéssel emberileg fogyasztható a /proc/self/status, gondolom ott valahol kell/lehet linux-specifikus megoldást találni.

Azt a fenebe... a /proc/self/status elfelejti a Vm* parametereket, amint a processz atkerul zombi allapotba. Igy le se lehet kerdezni a progi futasa utan - max persze allando pollozgatassal, menet kozben (de az minden csak nem elegans). A /proc/self/stat[m]-ben pedig ha jol latom ez a peak mem usage nincs benne. Eh. Tenyleg nins erre semmi megoldas, nem nagyon hiszem el...