Jak mogę sprawdzić całkowitą pamięć przydzieloną dla konkretnego procesu w Ubuntu?
Jak mogę sprawdzić całkowitą pamięć przydzieloną dla konkretnego procesu w Ubuntu?
Odpowiedzi:
Próbować:
pidof bash | xargs ps -o rss,sz,vsz
Aby znaleźć wykorzystanie pamięci przez bieżącą bash
powłokę (zakładając, że używasz bash
). Zmień bash
na wszystko, co badasz. Jeśli szukasz jednego konkretnego procesu, po prostu użyj go samodzielnie:
ps -o rss,sz,vsz <process id>
Ze man
strony:
RSS
: resident set size, nie wymieniona pamięć fizyczna używana przez zadanie (w kilobajtach).
SZ
: rozmiar na fizycznych stronach obrazu podstawowego procesu. Obejmuje to miejsce na tekst, dane i stos.
VSZ
: rozmiar pamięci wirtualnej procesu w KiB (jednostki 1024-bajtowe).
man
Aktualizacja ps
będzie lista wszystkich możliwych argumentów do -o
opcji (jest sporo do wyboru). Zamiast tego -o rss,sz
możesz użyć v
opcji stylu BSD (bez myślnika), która pokazuje alternatywny układ pamięci.
Możesz użyć pmap
która pokazuje mapę pamięci procesu:
pmap -p pid
Więcej informacji na ten temat można znaleźć na stronie podręcznika użytkownika man pmap
lub w pmap (1): zgłoś mapę pamięci procesu - stronę podręcznika systemu Linux .
jak sprawdzić całkowitą pamięć przydzieloną dla konkretnego procesu w Ubuntu?
Nie definiują co jest pamięć przydzielona do procesu, a właściwie, że jest to dość skomplikowane pytanie (co współdzielonych mapowania pamięci - patrz mmap (2) do szczegółów; co POSIX pamięci współdzielonej - patrz shm_overview (7) dla bardziej ; co z niektórymi stronami w pamięci podręcznej stron używanymi do otwieranych plików; etc ...)
Można użyć /proc/
systemu plików (który jest używany przez BTW ps
, pmap
, top
, htop
itd ....). Czytaj dalej proc (5) . W szczególności dla procesu pid 1234 można użyć /proc/1234/status
, /proc/1234/statm
, /proc/1234/maps
itd ... Są to wszystkie pliki tekstowe pseudo-(trochę jak rury), które można zobaczyć z cat
(lub czytają kolejno wewnątrz jakiegoś programu). BTW, z wnętrza programu, którego możesz użyć /proc/self
(który jest pseudo dowiązaniem symbolicznym), np. Czytać sekwencyjnie /proc/self/status
itp ...
Zobacz także LinuxAteMyRam .