Portál AbcLinuxu, 1. června 2025 07:55


Dotaz: /usr/bin/time --format '%K' program == 0 ??

27.2.2009 13:48 vencas | skóre: 32
/usr/bin/time --format '%K' program == 0 ??
Přečteno: 368×
Odpovědět | Admin

Zdravím, snažil jsem se nějak ze skriptu dostat, kolik zabere proces v paměti.

Dle manuálu pustím

$ /usr/bin/time --format '%t' yade-trunk perf.py
# ...
0

a stejně když dám formát %M. Htop mi ale ukazuje v tutéž chvíli RES 131M a VIRT 951M (takže to není zaokrouhlením na kB).

Může mi někdo poradit, co dělám špatně? Nebo jiný způsob, jak aspoň přibližně zjistit (buď z bashe, nebo lépe z c/c++) kolik program "zabírá paměti"? (Nemusí to být přesné, klidně s mmapovanými soubory, jde jen o srovnání jednotlivých případl). Jedu na ubuntu 8.10, jádro 2.6.27; na lennym se time ale chová stejně (chybně).

Dík.

 

 

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

27.2.2009 14:17 pht | skóre: 48 | blog: pht
Rozbalit Rozbalit vše Re: /usr/bin/time --format '%K' program == 0 ??
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud jde o běžící proces, tak stačí kouknout do /proc/pid/status
In Ada the typical infinite loop would normally be terminated by detonation.
27.2.2009 14:40 vencas | skóre: 32
Rozbalit Rozbalit vše Re: /usr/bin/time --format '%K' program == 0 ??

Paráda, děkuju. Dá se to případně získat nějak přímo voláním user-space funkce? Ale jestli ne, takhle je to taky super. V.

27.2.2009 16:21 pht | skóre: 48 | blog: pht
Rozbalit Rozbalit vše Re: /usr/bin/time --format '%K' program == 0 ??
To nevím. Možná na to něco existuje, ale ten soubor v proc je hlavní zdroj informací.
In Ada the typical infinite loop would normally be terminated by detonation.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.