Jak używać polecenia PMAP Linux do sprawdzania użycia pamięci

Jak używać polecenia PMAP Linux do sprawdzania użycia pamięci
„W Linux polecenie PMAP pomaga zgłosić użycie pamięci jednego procesu lub wielu procesów za pomocą PID. W przypadku użycia PMAP przekazuje szczegóły dotyczące użytkowania pamięci, takie jak przestrzeń adresowa wspólnej przestrzeni pamięci i uprawnienia.

Procesy działające w systemie operacyjnym są przydzielane do różnych regionów, które wykorzystują przestrzeń pamięci wirtualnej odwzorowaną na pamięć fizyczną w warstwie abstrakcyjnej. Jądro zachowuje zatem tabelę tłumaczeniową podkreślającą każdy proces, a wszelkie wprowadzone zmiany są aktualizowane w tabeli tłumaczenia. Polecenie PMAP jest potrzebne do uzyskania dostępu do tego miejsca pamięci używanego przez każdy proces, aw tym przewodniku nauczysz się używać polecenia PMAP, aby wyświetlić użycie pamięci przez proces."

Jak używać PMAP

Składnia do użycia PMAP to:

pmap [opcje] PID […]

Dlatego pierwszą rzeczą do zrobienia jest uzyskanie identyfikatora procesu konkretnego procesu i istnieją różne sposoby zdobycia PID. Aby szybko uzyskać PID procesu, użyj PS Aux, a następnie grep nazwę procesu lub użyj opcji PIDOF.

Na przykład, aby uzyskać PID procesu BASH:

1. Za pomocą PS Aux

$ ps aux | Grep Bash

2. Za pomocą PIDOF

$ pidof bash

Za pomocą

PMAP, aby uzyskać użycie pamięci jednego procesu

Teraz, gdy masz PID procesu docelowego, możesz sprawdzić jego użycie pamięci za pomocą poniższego polecenia.

$ PMAP 4959

Wyjście będzie:

Ze wyjścia widać, że pierwszy wiersz podkreśla nazwę procesu, w tym przypadku Bash i jego identyfikator procesu. Kolejne wiersze zaczynają się od zmapowanego adresu pamięci, a następnie rozmiar pamięci konkretnego adresu pamięci w Kilobytes.

Pozostałe znaki reprezentują uprawnienia pamięci wirtualnej, analizowane poniżej.

R: sugeruje, że proces może odczytać mapowaną pamięć.

w: sugeruje, że proces może zapisać do mapowanej pamięci.

X: sugeruje, że proces może wykonywać instrukcje w zmapowanej pamięci.

Korzystanie z PMAP, aby uzyskać użycie pamięci wielu procesów

Polecenie PMAP jest używane z wieloma PID oddzielonymi przestrzenią, aby uzyskać ich użycie pamięci. Na przykład, jeśli masz PIDS 1818, 1741 i 4959, poleceniem będzie:

$ PMAP 1818 1741 4959

Wyjście jest podobne do jednego procesu, z tym wyjątkiem, że użycie pamięci zostanie oddzielone na każdy proces, jak pokazano poniżej.


Dla wyjścia następnego procesu:

Otrzymanie rozszerzonego wyjścia PMAP

Aby uzyskać rozszerzony format użycia pamięci, dodaj -x do polecenia PMAP, jak w poniższym przykładzie.

$ pmap -x 4959

Wydłużone wyjście polecenia będzie:

Zauważysz, że niektóre dodatkowe pola są wyświetlane z rozszerzonym wyjściem. Każdy z pól reprezentuje inne informacje o użyciu pamięci.

Adres: Reprezentuje początkowy adres mapowania.

Kbytes: To jest rozmiar przestrzeni pamięci wirtualnej.

Rss: To jest rozmiar zestawu rezydentów reprezentowany w kilobytes.

Brudny: Wspólne i prywatne brudne strony wyrażone w kilobajtach.

Tryb: uprawnienia do mapy.

Mapowanie: To jest plik, który popiera mapę i może to być „[stos]” lub „[anon]”.

PMAP Show Format urządzenia

Opcja -D, gdy jest używana z PMAP, wyświetla format urządzenia powiązany z konkretnym procesem.

$ pmap -d 4959

Do wyjścia dodają jeszcze dwa pola.

Zrównoważyć: reprezentuje przesunięcie pliku, jeśli pamięć jest oparta na pliku.

Urządzenie: Format urządzenia.

PMAP wyświetl wszystko

Opcja -x wyświetla rozszerzone wyjście. Możesz jednak pokazać wszystko, co jądro może uzyskać na temat użycia pamięci procesu, dodając opcję -x.

$ pmap -x 4959

Inne opcje PMAP

1. Zdobądź pełną ścieżkę

Aby uzyskać pełną ścieżkę plików:

$ pmap -p 4959

2. Ignoruj ​​nazwy kolumn


Jeśli chcesz wykluczyć nazwy kolumn podczas wyświetlania raportu wyjściowego, na przykład przy uzyskiwaniu nazwy urządzenia:

$ pmap -qd 4959

3. Zdobądź wersję PMAP

Aby zobaczyć bieżącą wersję PMAP:

$ pmap -v

4. Strona pomocy PMAP


Aby otworzyć stronę pomocy PMAP.

$ pmap - -Help

Wniosek

Podczas pracy z Linuksem zrozumienie zarządzania pamięcią może być skomplikowane. Na szczęście z pomocą polecenia PMAP możesz uzyskać pełny obraz tego, co dzieje się w pamięci. Polecenie PMAP jest doskonałym narzędziem dla każdego, kto zajmuje się mapami pamięci procesu. Ten przewodnik obejmował wspólne użycie polecenia PMAP Linux, aby zacząć.