GNU/Linux >> Linux Esercitazione >  >> Linux

Quale processo ha Pid 0?

Sto cercando il processo avviato in Linux che ha ID processo 0. Conosco init ha PID 1 , che è il primo processo in Linux, esiste un processo con PID 0?

Risposta accettata:

Dalla pagina di Wikipedia intitolata:Identificatore di processo:

Esistono due attività con ID di processo particolarmente distinti:swapper o programmato ha ID processo 0 ed è responsabile del paging, ed è
effettivamente parte del kernel piuttosto che un normale processo in modalità utente.
Process ID 1 è solitamente il processo init principalmente responsabile dell'avvio di
e spegnere il sistema. In origine, il processo ID 1 non era
non specificamente riservato a init da alcuna misura tecnica:esso
aveva semplicemente questo ID come conseguenza naturale di 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 precedenti.

Puoi vedere l'evidenza di ciò 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 kthread sono biforcati da questo thread. Puoi vederne la prova se guardi altri processi usando ps e vedere 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]

Nota che sono tutti 2 .


Linux
  1. Come determinare quale processo sta scrivendo su disco in Linux

  2. Ottieni in modo programmatico il pid genitore di un altro processo?

  3. Conteggio dei file aperti per processo

  4. Determinazione del particolare processore su cui è in esecuzione un processo

  5. Umask corrente di un processo con <pid>

Non riesci a uccidere il processo Gedit dal suo Pid?

Avviare un processo su un Tty diverso?

Come trovare il nome del processo dal suo PID

Trova quale processo sta modificando un file

Determina in quali gruppi si trova un processo in esecuzione?

Variabili d'ambiente di un processo in esecuzione su Unix?