Le processus créé par le noyau est appelé « processus parent ». Un processus dérivé ou généré à partir d’un processus parent est appelé « processus enfant ». Un processus parent peut être constitué de plusieurs processus enfants, chacun avec un PID (Process ID) unique mais partageant le même PPID.
Dans ce guide, nous explorons les différentes méthodes que vous pouvez utiliser pour trouver l'ID de processus parent (PPID) ou le processus sur votre système Linux.
Quelle est la différence entre PID et PPID ?
Un programme chargé en mémoire et exécuté est appelé un processus. Une fois démarré, un processus se voit attribuer un numéro unique, appelé ID de processus (PID), qui l'identifie de manière unique dans le système. Le processus peut être référencé à tout moment grâce à son PID. Par exemple, pour tuer un processus, vous devez d'abord connaître son PID.
En plus du PID, chaque processus se voit attribuer un ID de processus parent (PPID), indiquant quel processus l'a généré. Le PPID est donc le PID du parent du processus.
Pour illustrer cela, supposons que le processus 5 avec le PID 5050 démarre le processus 6. Le processus 6 se verra attribuer un PID unique, tel que 6670, mais se verra toujours attribuer le PPID 5050.
Le processus parent ici est le processus 5 et le processus enfant est le 6. Le processus enfant se voit attribuer un PID unique mais le PPID est le même que le PID du processus parent (processus 5)
Un processus parent unique peut démarrer plusieurs processus enfants, chaque processus enfant a un PID unique mais tous partagent le même PPID.
Trouver l'ID de processus parent (PPID) sous Linux
Il existe deux manières principales de trouver le PPID d'un processus en cours d'exécution sur un système Linux :
Utilisez la commande pstree pour trouver le PPID du processus Linux
La commande pstree est un outil de ligne de commande qui affiche les processus en cours d'exécution sous la forme d'une arborescence, ce qui en fait un moyen pratique d'afficher les processus dans une hiérarchie. Il affiche les relations parent-enfant dans une hiérarchie arborescente.
Avec l'option -p, pstree affiche tous les processus parents en cours d'exécution et leurs processus enfants correspondants et leurs PID respectifs.
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com ⚡ pstree -p
Afficher les processus en cours d'exécution Linux dans une hiérarchie arborescente
À partir de la sortie, nous pouvons voir l’ID du processus parent et l’ID du processus enfant.
Pour démontrer, nous allons vérifier le PPID de Mozilla Firefox et toute la hiérarchie des processus à l'aide de la commande suivante :
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com ⚡ pstree -p | grep 'firefox'
Trouver le PPID d'un processus Linux
Il ressort de la sortie que le PPID de Firefox est 21401 et que le reste sont les PID du processus enfant.
Pour afficher uniquement le PPID de Firefox et ignorer le reste de la sortie, dirigez la sortie vers la commande head pour afficher la première ligne avec -1.
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com ⚡ pstree -p | grep 'firefox' | head -1
Imprimer le PPID du processus Linux
Utilisez la commande ps pour trouver le PPID du processus Linux
Une autre option pour trouver le PPID d'un processus est la commande ps, qui est une commande largement utilisée pour afficher les processus en cours d'exécution sur un système Linux.
Lorsqu'elle est utilisée avec l'option -ef, la commande ps répertorie tous les processus en cours d'exécution avec leurs détails tels que l'UID, le PID, le PPID, etc.
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com ⚡ ps -ef
Liste des processus Linux en cours d'exécution à l'aide de PID
Pour affiner et afficher le PPID d'un processus spécifique, tel que Firefox, transmettez l'option -e et dirigez la sortie vers la commande grep comme indiqué :
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com ⚡ ps -e | grep 'firefox' 21401 ? 00:00:11 firefox
Trouver le PID du processus Linux
Encore une fois, à partir du résultat, vous pouvez voir que le PPID pour Firefox est 21401.
Dans ce guide, nous montrons comment trouver le PPID d'un processus en cours d'exécution sur un système Linux. Vous pouvez utiliser la commande pstree ou la commande ps pour atteindre le même objectif.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!