Jak odczytać zużycie pamięci w htopie?


30

To mój wynik htopa:

wprowadź opis zdjęcia tutaj

Na przykład jestem zaskoczony tym skryptem ruby:

wprowadź opis zdjęcia tutaj

Ile pamięci fizycznej używa? 3+1+8+51+51? 51? 51+51?


Następnie RESkolumna jest tą, na którą chcesz spojrzeć.
David Schwartz

tak, patrzę na to. Ale jakie jest użycie pamięci przez mój skrypt? Dlaczego są dwa 51? Czy zużywa 102 megabajty? Czy tylko 51 megabajtów? W zewnętrznych OZE procesowych zawiera wewnętrzne RES procesowych, dlaczego 3, 1, 8są mniej niż 51?
Lai Yu-Hsuan

2
Istnieją dwa 51, ponieważ proces rozwidlił się. Najprawdopodobniej nie zużywa 102 megabajtów, ponieważ oba procesy wykorzystują te same 51 megabajtów, ale nie można tego łatwo stwierdzić. Drugi proces RES zawiera proces wewnętrzny, jeśli pamięć ta znajduje się również w innym procesie, a nie, jeśli nie. Pola RES informują, ile pamięci fizycznej używa każdy proces, ale inne procesy mogą (ale nie muszą) również używać tej samej pamięci fizycznej.
David Schwartz

1
Jeśli chcesz wiedzieć, czy dwa procesy używają tej samej pamięci, użyj pmap -d <identyfikator procesu>
Sirch

1
@ LaiYu-Hsuan: Tak, mylisz się. Strony nie są kopiowane, są udostępniane. Są one kopiowane tylko wtedy, gdy którykolwiek proces zapisuje na stronie, wówczas należy je udostępnić. (Nazywa się to „kopiuj przy pisaniu” lub „CoW”.)
David Schwartz

Odpowiedzi:


45

Ukryj wątki użytkownika (shift + H) i zamknij widok drzewa procesów (F5), a następnie możesz uporządkować interesujący Cię proces według PID i przeczytać kolumnę RES (sortuj według MEM%, naciskając shift + M lub F3, aby wyszukać w linii cmd)


4
Shift-H jest tym, czego szukałem od wieków. Dzięki!
opłacony frajer

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.