Sto cercando il processo avviato in Linux con ID processo 0. So che init
ha PID 1, che è il primo processo in Linux, esiste qualche processo con PID 0?
Sto cercando il processo avviato in Linux con ID processo 0. So che init
ha PID 1, che è il primo processo in Linux, esiste qualche processo con PID 0?
Risposte:
Dalla pagina di Wikipedia intitolata: Identificatore del processo :
Esistono due attività con ID di processo particolarmente distinti: swapper o sched ha l'ID di processo 0 ed è responsabile del paging ed è effettivamente parte del kernel piuttosto che un normale processo in modalità utente . L'ID processo 1 è in genere il processo di init principalmente responsabile dell'avvio e dell'arresto del sistema. Inizialmente, l'ID processo 1 non era specificamente riservato per init da alcuna misura tecnica: aveva semplicemente questo ID come conseguenza naturale dell'essere il primo processo invocato dal kernel. I sistemi Unix più recenti in genere hanno componenti del kernel aggiuntivi visibili come "processi", nel qual caso il PID 1 è attivamente riservato al processo init per mantenere la coerenza con i sistemi più vecchi.
Puoi vedere le prove di questo se guardi i PID (PPID) principali di init
e 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
è il demone del thread del kernel. Tutti i kthreads sono biforcuti da questo thread. Puoi vedere le prove di questo se guardi altri processi usando ps
e vedendo chi è il loro 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]
Notate che sono tutti 2
.
kswapd[0-9]*
, quale sul mio sistema ha attualmente PID 52? Sembra anche essere responsabile del paging.
Dal wiki Identificatore del processo :
Esistono due attività con ID di processo particolarmente distinti: swapper o sched ha l'ID di processo 0 ed è responsabile del paging ed è effettivamente parte del kernel piuttosto che un normale processo in modalità utente.