Examen des informations de processus

Le noyau fournit des informations utiles sur les processus et l'environnement. Ces commandes permettent d'afficher ces informations.

La ps ligne de commande

Sous Linux®, les unités d'exécution Java™ sont implémentées en tant qu'unités d'exécution système et peuvent être visibles dans la table de processus, en fonction de la distribution Linux .

L'exécution de la commande ps vous donne un instantané des processus en cours. La commande ps obtient ses informations du système de fichiers /proc. Voici un exemple d'utilisation de la commande ps:

ps -efwH

UID  PID  PPID  C STIME TTY   TIME        CMD
cass 1234 1231  0 Aug07  ?    00:00:00    /bin/bash
cass 1555 1234  0 Aug07  ?    00:00:02    java app
cass 1556 1555  0 Aug07  ?    00:00:00    java app
cass 1557 1556  0 Aug07  ?    00:00:00    java app
cass 1558 1556  0 Aug07  ?    00:00:00    java app
cass 1559 1556  0 Aug07  ?    00:00:00    java app
cass 1560 1556  0 Aug07  ?    00:00:00    java app    	   
e
Indique la sélection de tous les processus.
f
Fournit une liste complète.
l
Affiche dans un format long.
m
Affiche les unités d'exécution si elles n'apparaissent pas par défaut.
w
Modificateur de sortie qui garantit une sortie large.
H
Utile lorsque vous êtes intéressé par les unités d'exécution Java car il affiche une liste hiérarchique. Avec un affichage hiérarchique, vous pouvez déterminer quel processus est l'unité d'exécution primordiale, lequel est le gestionnaire des unités d'exécution et quelles sont les unités d'exécution enfants. Dans l'exemple précédent, le processus 1555 est l'unité d'exécution primordiale, tandis que le processus 1556 est le gestionnaire d'unité d'exécution. Tous les processus enfants ont un ID de processus parent qui pointe vers le gestionnaire d'unité d'exécution.

La top ligne de commande

La commande top affiche en temps réel les processus les plus gros consommateurs d'UC ou de mémoire. Il fournit une interface interactive pour la manipulation des processus et permet un tri en fonction de différents critères, par exemple l'utilisation de l'UC ou de la mémoire. Appuyez sur h lorsque vous exécutez top pour voir toutes les commandes interactives disponibles.

La commande top affiche plusieurs champs d'information pour chaque processus. Le champ de processus affiche le nombre total de processus qui s'exécutent, mais divise les informations en tâches qui s'exécutent, sont mises en veille, sont arrêtées ou stoppées mais non abandonnées. Outre l'affichage du PID, PPID et de l'UID, la commande top affiche des informations sur l'utilisation de la mémoire et l'espace de permutation. :NONE.memaffiche des statistiques sur l'utilisation de la mémoire, y compris la mémoire disponible, la mémoire disponible, la mémoire utilisée, la mémoire partagée et la mémoire utilisée pour les mémoires tampon. L'espace de permutation affiche l'espace de permutation total, l'espace de permutation disponible, et l'espace de permutation utilisé.

La vmstat ligne de commande

La commande vmstat signale les statistiques sur la mémoire virtuelle. Elle est utile pour effectuer un contrôle général de l'état du système car elle génère un rapport sur l'ensemble du système. Les commandes telles que top permettent d'obtenir des informations plus spécifiques sur l'opération du processus.

Lorsque vous l'utilisez pour la première fois durant une session, les informations sont signalées sous la forme de moyennes depuis le dernier réamorçage. Un autre usage permet de générer des rapports basés sur une période d'échantillonnage que vous pouvez préciser en tant qu'option. vmstat 3 4 affiche des valeurs toutes les 3 secondes à quatre reprises. Il peut être utile de démarrer vmstat avant l'application, de faire diriger sa sortie ver un fichier et d'étudier ultérieurement les statistiques lors du démarrage et de l'exécution de l'application.

La sortie de base de cette commande s'affiche dans ces sections :

processus
Indique le nombre de processus en attente d'exécution, qui sont bloqués ou qui ont été permutés.
Mémoire
Indique la quantité de mémoire (en kilo-octets) permutée, disponible, mise en tampon, et mise en cache. Si la mémoire disponible diminue pendant certaines étapes de l'exécution de vos applications, cela désigne peut-être une fuite de mémoire.
permutation
Indique les kilo-octets par seconde de mémoire permutée depuis et vers le disque. La mémoire est permutée vers le disque s'il n'y a pas assez de RAM pour tout stocker. Des valeurs élevées peuvent indiquer que la quantité de RAM disponible est insuffisante (même s'il est normal d'avoir une permutation lors du premier démarrage de l'application).
io
Indique le nombre de blocs par seconde de mémoire envoyés et reçus des unités par blocs.
système
Affiche les interruptions et les changements de contexte par seconde. Une pénalité de performance est associée à chaque changement de contexte. Une valeur élevée dans cette section peut signifier que le programme n'évolue pas bien.
unité centrale
Affiche la ventilation du temps processeur entre le temps utilisateur, le temps système et le délai d'inactivité. Les chiffres du délai d'inactivité indiquent le degré d'occupation d'un processeur, une valeur basse signifiant que le processeur est occupé. Vous pouvez utiliser ces données pour comprendre quels domaines de votre programme utilisent le plus l'UC.