Escenario: De repente, mi computadora se siente lenta. El mouse se mueve pero las ventanas tardan años en abrirse, etc. uptime
dice que la carga es de 7.69 y sube.
¿Cuál es la forma más rápida de averiguar qué procesos son la causa de la carga?
Ahora, "top" y herramientas similares no son la respuesta porque muestran el uso de CPU o memoria, pero no ambas al mismo tiempo. Lo que necesito es el comando único que podría escribir mientras sucede, algo que resolverá cualquiera de
El sistema está tratando de intercambiar 8 GB de RAM al disco porque el proceso X ...
o
el proceso X busca por todo el disco
o
el proceso X usa 400% de CPU "
Entonces, lo que estoy buscando es iostat, htop / atop y herramientas similares que se ejecutan en una con una salida como esta:
1235 cp - Disk trashing
87 chrome - Uses 2 GB of RAM
137 nfs_bench - Uses 95% of the network bandwidth
No quiero una herramienta que me dé algunos números que pueda analizar, sino una herramienta que me diga exactamente qué proceso causa la carga actual. Suponga que el usuario frente al teclado apenas sabe cómo escribir "proceso", pero el usuario se abruma rápidamente cuando se trata de "tamaño residente", "memoria virtual" o "ciclo de vida del proceso".
Mi argumento es el siguiente: un usuario nota un problema. Puede haber miles de razones ... bueno, casi :-) El usuario quiere saber la fuente del problema.
Las soluciones actuales me dan muchos números, y necesito saber qué significan estos números. Lo que estoy buscando es una meta herramienta. El 99% de los datos es irrelevante para el problema. Entonces, lo que la herramienta debería hacer es buscar procesos que acaparen algunos recursos y enumerar solo aquellos junto con "este proceso necesita mucha CPU, esto produce muchas IRQ, este proceso asigna mucha RAM (y aún está creciendo)".
Esta será una lista relativamente corta. Será mucho más simple para alguien nuevo en esto localizar al culpable de esta lista que de la salida de, digamos, lo htop
que me da alrededor de 5000 números pero requiere que yo mismo doble los procesos de subprocesos múltiples (tengo 50 líneas que dicen VIRT 2750M
pero solo 16 GB de RAM: la máquina debería intercambiarse a sí misma pero, por supuesto, esta es una interpretación errónea de los datos que pueden suceder rápidamente).
top
significa la producción )