Je recherche le processus démarré sous Linux qui a l'ID de processus 0. Je sais que init
a le PID 1, qui est le premier processus sous Linux, y a-t-il un processus avec le PID 0?
De la page wikipedia intitulée: Identificateur de processus :
Il existe deux tâches avec des ID de processus spécialement distingués: swapper ou sched has identifie le processus 0 et est responsable de pagination , et fait en fait partie du noyau plutôt qu'un processus normal 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 avait simplement cet ID comme conséquence naturelle d'être le premier processus invoqué par le noyau. Les systèmes Unix plus récents ont généralement des composants de noyau supplémentaires visibles en tant que "processus", auquel cas le PID 1 est activement réservé au processus init pour maintenir la cohérence avec les systèmes plus anciens.
Vous pouvez voir la preuve de cela si vous regardez les PID parents (PPID) de init
et kthreadd
:
$ ps -eaf
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Jun24 ? 00:00:02 /sbin/init
root 2 0 0 Jun24 ? 00:00:00 [kthreadd]
kthreadd
est le démon de thread du noyau. Tous les kthreads sont bifurqués à partir de ce fil. Vous pouvez en voir la preuve si vous examinez d'autres processus à l'aide de ps
et voyez qui est leur PPID:
$ ps -eaf
root 3 2 0 Jun24 ? 00:00:57 [ksoftirqd/0]
root 4 2 0 Jun24 ? 00:01:19 [migration/0]
root 5 2 0 Jun24 ? 00:00:00 [watchdog/0]
root 15 2 0 Jun24 ? 00:01:28 [events/0]
root 19 2 0 Jun24 ? 00:00:00 [cpuset]
root 20 2 0 Jun24 ? 00:00:00 [khelper]
Notez qu'ils sont tous 2
.
Du identificateur de processus wiki:
Il y a 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, et fait en fait partie du noyau plutôt qu'un processus en mode utilisateur normal.
Le processus avec pid 0
est le planificateur,
Description de l'ID de processus:
0 Le planificateur
1 Le processus init
2 kflushd
3 kupdate
4 kpiod
5 kswapd
6 mdrecoveryd