Scenariusz: nagle mój komputer jest powolny. Porusza się myszką, ale otwieranie się okien trwa wieki itp., uptime
Mówi, że obciążenie wynosi 7,69 i rośnie.
Jaki jest najszybszy sposób, aby dowiedzieć się, które procesy są przyczyną obciążenia?
Teraz „najlepsze” i podobne narzędzia nie są odpowiedzią, ponieważ pokazują zużycie procesora lub pamięci, ale nie oba jednocześnie. Potrzebuję tylko jednego polecenia, które mógłbym wpisać na bieżąco - coś, co rozwiąże którekolwiek z nich
System próbuje zamienić 8 GB pamięci RAM na dysk, ponieważ proces X ...
lub
proces X szuka na całym dysku
lub
proces X zużywa 400% procesora ”
Tak więc szukam iostat, htop / atop i podobnych narzędzi do jednego z takim wyjściem:
1235 cp - Disk trashing
87 chrome - Uses 2 GB of RAM
137 nfs_bench - Uses 95% of the network bandwidth
Nie chcę narzędzia, które podaje mi liczby, które mogę analizować, ale narzędzia, które mówi mi dokładnie, który proces powoduje bieżące obciążenie. Załóżmy, że użytkownik przed klawiaturą ledwo wie, jak napisać „proces”, ale użytkownik jest szybko przytłoczony, jeśli chodzi o „wielkość rezydenta”, „pamięć wirtualną” lub „cykl życia procesu”.
Mój argument brzmi następująco: użytkownik zauważa problem. Powodów może być tysiące ... no prawie :-) Użytkownik chce poznać źródło problemu.
Obecne rozwiązania dają mi wiele liczb i muszę wiedzieć, co one oznaczają. To, czego szukam, to narzędzie meta. 99% danych nie ma znaczenia dla problemu. Narzędzie powinno więc poszukać procesów, które pochłaniają niektóre zasoby, i wymienić tylko te wraz z „ten proces wymaga dużo procesora, powoduje wiele przerwań IRQ, proces ten alokuje dużo pamięci RAM (i wciąż rośnie)”.
To będzie stosunkowo krótka lista. O wiele łatwiej będzie zlokalizować winowajcę z tej listy niż z wyniku, powiedzmy, htop
który daje mi około 5000 liczb, ale wymaga ode mnie samodzielnego złożenia procesów wielowątkowych (mam 50 wierszy, które mówią, VIRT 2750M
ale tylko 16 GB pamięci RAM - maszyna powinna zamienić się na śmierć, ale oczywiście jest to błędna interpretacja danych, która może się zdarzyć szybko).
top
oznacza wynik)