Scénario : Tout à coup, mon ordinateur est lent. La souris bouge mais les fenêtres mettent du temps à s'ouvrir, etc. uptime
dit que la charge est de 7,69 et augmente.
Quel est le moyen le plus rapide de trouver le ou les processus qui sont à l'origine de la charge ?
Maintenant, "top" et les outils similaires ne sont pas la réponse parce qu'ils montrent soit l'utilisation du CPU ou de la mémoire mais pas les deux en même temps. Ce dont j'ai besoin, c'est d'une commande unique que je pourrais taper au fur et à mesure - quelque chose qui déterminerait n'importe quel des éléments suivants
Le système essaie d'échanger 8 Go de RAM sur le disque parce que le processus X ...
ou
le processus X cherche sur tout le disque
ou
le processus X utilise 400% du CPU"
Ce que je recherche, c'est iostat, htop/atop et d'autres outils similaires qui fonctionnent en même temps avec une sortie comme celle-ci :
1235 cp - Disk trashing
87 chrome - Uses 2 GB of RAM
137 nfs_bench - Uses 95% of the network bandwidth
Je ne veux pas d'un outil qui me donne quelques chiffres que je peux analyser, mais un outil qui me dise exactement quel processus est à l'origine de la charge actuelle. Supposons que l'utilisateur devant le clavier sache à peine écrire "processus", mais qu'il soit rapidement dépassé lorsqu'il s'agit de "taille des résidents", de "mémoire virtuelle" ou de "cycle de vie des processus".
Mon argument est le suivant : Un utilisateur remarque un problème. Il peut y avoir des milliers de raisons ... enfin, presque :-) L'utilisateur veut connaître la source du problème.
Les solutions actuelles me donnent beaucoup de chiffres, et j'ai besoin de savoir ce que ces chiffres signifient. Ce que je recherche, c'est un méta-outil. 99% des données ne sont pas pertinentes pour le problème. Donc ce que l'outil devrait faire, c'est rechercher les processus qui monopolisent certaines ressources et ne lister que ceux-là avec "ce processus a besoin de beaucoup de CPU, il produit beaucoup d'IRQs, ce processus alloue beaucoup de RAM (et il continue de croître)".
Cette liste sera relativement courte. Il sera beaucoup plus simple pour un novice de localiser le coupable à partir de cette liste qu'à partir de la sortie de, disons, htop
ce qui me donne environ 5000 numéros mais m'oblige à plier moi-même des processus multi-threads (j'ai 50 lignes qui disent VIRT 2750M
mais seulement 16 Go de RAM - la machine devrait s'échanger jusqu'à la mort, mais bien sûr, il s'agit d'une mauvaise interprétation des données qui peut se produire rapidement).