Czy jest aplikacja, która może pokazywać użycie pamięci w podobny sposób jak na górze?

8

Chciałbym zostawić aplikację uruchomioną w moim terminalu, która pokazuje mi użycie pamięci, podobnie jak toppokazuje procesor i inne informacje oraz iotoppokazuje najlepszych użytkowników we / wy.

Top i iotop

Czy taka aplikacja istnieje?

PS Wiem, że top pokazuje również zużycie pamięci, ale mówię o sortowaniu według zużycia pamięci i nie pokazywaniu żadnych innych informacji (podobnych do tego, co iotoprobi).

RolandiXor
źródło
W górnym naciśnij M, aby posortować według zużycia pamięci. Czy o to ci chodzi?
papież
Nie jestem również pewien, jakich funkcji chcesz / nie chcesz, ale htopto topalternatywa, której używam. Chociaż brzmi to tak, jakbyś szukał mniej, ale bardziej konkretnych funkcji, niż więcej funkcji?
adempewolff
@adempewolff dokładnie. Na przykład iotop robi to, co mówi - pokazuje użycie I / O moich aplikacji i nic więcej. Chcę móc uruchomić powiedz „memtop” i po prostu uzyskać% wykorzystania pamięci. htopnie jest tym, czego szukam - ponieważ pokazuje inne rzeczy (w tym użycie procesora), które już otrzymałem top. Mam na myśli, że bez wątpienia lubię htop (już go używałem), ale nie tego szukam w tym przypadku.
RolandiXor

Odpowiedzi:

8

Najbliżej mogłem znaleźć memtopskrypt w języku Python dostępny tutaj w Google Code.

Zrzut ekranu: wprowadź opis zdjęcia tutaj

Jak korzystać z memtop

  • Jest to skrypt w języku Python, więc po prostu zrób a sudo mv memtop-1.0.0.py /usr/bin/memtop.pyi a, chmod +x /path/to/memtop.pyaby był wykonywalny
  • Domyślny okres aktualizacji wynosi 15 minut; użyj przełącznika, -p 1aby ustawić go na 1 minutę itp. (nie możesz zejść niżej, chyba że zmodyfikujesz źródło)
  • Użyj -l N, gdzie N to liczba procesów, które chcesz pokazać, w zależności od wielkości twojego terminala.
  • Służy -mdo wyświetlania „więcej” informacji, tj. Statystyk wymiany / strony u dołu zrzutu ekranu.

Htop przebraniu memtop opcji

Jeśli nie używasz htopinaczej, konfiguracja z opcją F2-setup wygląda całkiem łatwo memtop:

wprowadź opis zdjęcia tutaj

  • Konfiguracja htop jest przechowywana ~/.config/htop/htoprc, więc po prostu usuń, htoprcaby przywrócić normalny htop .
ish
źródło
Projekt właśnie został przeniesiony do GitHub: github.com/MartinThoma/memtop
Martin Thoma
2

Nie znam żadnej konkretnej aplikacji do monitorowania tego, co chcesz w czasie rzeczywistym, ale znalazłem informacje, które mogą być pomocne.

Najpierw ps -e -orss=,args= | sort -b -k1,1n | pr -TW$COLUMNSoto proste polecenie wydrukowania tych informacji (tutaj: http://www.linuxquestions.org/questions/linux-general-1/how-to-show-the-memory-usage-per-process-160181/ )

Po drugie, oto kilka informacji o skryptach, które robią to samo:

http://unixlive.editboard.com/t4-memory-usage-retrieval-on-linux-process-wise-and-general

i

http://unixlive.editboard.com/t5-how-much-ram-is-used-per-program

Możesz napisać własny skrypt / program do swoich potrzeb. Informacje, których potrzebujesz, są aktualizowane w /proc/czasie rzeczywistym, ale musisz rozwiązać dwa problemy:

  1. Wątpię, czy istnieje jeden plik z listą wszystkich procesów i wykorzystania ich pamięci w czasie rzeczywistym. Zamiast tego każdy proces ma swoje własne pliki (w /proc/[pid]/), a niektóre z potencjalnych plików do znalezienia te informacje nie są czytelne dla człowieka - choć podejrzewam, że statmi statusposiadają niezbędne informacje i są zarówno czytelny dla człowieka.
  2. Wyświetlanie wszystkich tych informacji w czasie rzeczywistym. Wiem bardzo niewiele o skryptach bash lub programowaniu, ale aby wyświetlać informacje w czasie rzeczywistym, musisz użyć czegoś takiego jak wiele tailpoleceń z potokiem, aby posortować / wydrukować tylko pożądane informacje dla każdego procesu.

Nie do końca pełna odpowiedź, ale mam nadzieję, że daje to kilka pomysłów na to, co możesz spróbować. Powodzenia!

adempewolff
źródło
2

Spróbuj, watch memstat -wa może watch free -m.

Belacqua
źródło
1

htop jest całkiem świetny. Jest dość lekki (w przeciwieństwie do gnome-system-monitor. Nie ma dla mnie sensu, że program do monitorowania systemu powinien często być programem o najwyższym stopniu wykorzystania).

Naciśnij klawisz F6, a następnie użyj klawiszy strzałek lub myszy, aby przejść do sortowania według MEM%.

tsbertalan
źródło
2
Chociaż podoba mi się ta odpowiedź i htop (już jej użyłem), szukam aplikacji, która działa zgodnie z zasadą robienia jednej rzeczy i robienia jej dobrze (jak iotop).
RolandiXor