Je suis à la recherche du processus démarré sous Linux portant l'ID de processus 0. Je sais que le initPID 1, premier processus sous Linux, existe-t-il un processus avec le PID 0?
Il existe deux tâches avec des ID de processus spécialement distingués: swapper
ou sched a l'ID de processus 0 et est responsable de la pagination . Il fait en fait partie du noyau plutôt que d'un processus normal en mode utilisateur . L'ID de processus 1 est généralement le processus init principalement responsable du démarrage et de l'arrêt du système. À l'origine, l'ID de processus 1 n'était pas spécifiquement réservé à init par des mesures techniques: il l'avait simplement comme conséquence naturelle d'être le premier processus invoqué par le noyau. Les systèmes Unix plus récents comportent généralement des composants de noyau supplémentaires visibles en tant que «processus», auquel cas le PID 1 est activement réservé pour le processus init afin de maintenir la cohérence avec les systèmes plus anciens.
Vous pouvez en voir la preuve si vous regardez les PID parents (PPID) de initet kthreadd:
kthreaddest le démon de threads du noyau. Tous les kthreads sont fourchus à partir de ce fil. Vous pouvez en voir la preuve si vous examinez d'autres processus utilisant pset identifiant leur PPID:
Donc, si le PID 0 est le swapper, qu’est-ce kswapd[0-9]*qui a actuellement le PID 52 sur mon système? Il semble également être responsable de la pagination.
Ruslan
1
@Ruslan - si vous avez des questions à suivre, posez-les sur le site principal, les commentaires ne sont pas destinés à cela. Référence cette question dans votre nouvelle question.
slm
bien, mais quand on crée un nouveau processus utilisant un processus fils fork , obtenir le pid 0 ?
roottraveller
@roottraveller pas nécessairement, quel que soit le PID des parents est l'endroit où la fourche s'est produite sera ce qui apparaît.
Il existe deux tâches avec des ID de processus spécialement distingués: swapper ou sched a l'ID de processus 0 et est responsable de la pagination. Il fait en fait partie du noyau plutôt que d'un processus normal en mode utilisateur.
Réponses:
De la page wikipedia intitulée: Identifiant du processus :
Vous pouvez en voir la preuve si vous regardez les PID parents (PPID) de
init
etkthreadd
:kthreadd
est le démon de threads du noyau. Tous les kthreads sont fourchus à partir de ce fil. Vous pouvez en voir la preuve si vous examinez d'autres processus utilisantps
et identifiant leur PPID:Remarquez qu'ils sont tous
2
.la source
kswapd[0-9]*
qui a actuellement le PID 52 sur mon système? Il semble également être responsable de la pagination.Depuis le wiki d' identification de processus :
la source
Le processus avec
pid 0
est le planificateur,la source