Я шукаю процес, розпочатий в Linux, який має ідентифікатор процесу 0. Я знаю, init
є PID 1, який є першим процесом в Linux, чи є процес з PID 0?
Я шукаю процес, розпочатий в Linux, який має ідентифікатор процесу 0. Я знаю, init
є PID 1, який є першим процесом в Linux, чи є процес з PID 0?
Відповіді:
На сторінці вікіпедії під назвою: Ідентифікатор процесу :
Існують два завдання із спеціально розрізненими ідентифікаторами процесу: swapper або sched має ідентифікатор процесу 0 і відповідає за підключення , і насправді є частиною ядра, а не звичайним процесом у режимі користувача . Ідентифікатор 1 процесу, як правило, є процесом init, головним чином відповідальним за запуск і вимкнення системи. Спочатку ідентифікатор 1 процесу не був спеціально зарезервований для init будь-якими технічними заходами: він просто мав цей ідентифікатор як природний наслідок того, що це перший процес, на який викликається ядро. Більш пізні системи Unix, як правило, містять додаткові компоненти ядра, видимі як "процеси", і в цьому випадку PID 1 активно зарезервований для процесу init для підтримки узгодженості зі старими системами.
Докази цього ви можете побачити, якщо подивитись батьківські PID (PPID) init
та 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
є демоном нитки ядра. Всі kthreads роздвоєні з цієї нитки. Ви можете ознайомитися з цим, якщо подивитися на інші процеси, використовуючи ps
та бачити, хто їх 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]
Зверніть увагу, вони всі 2
.
kswapd[0-9]*
, що в моїй системі має PID 52? Здається, він також відповідає за пейджинги.
З вікі Ідентифікатор процесу :
Існують дві задачі із спеціально розрізненими ідентифікаторами процесу: swapper або sched має ідентифікатор процесу 0 і відповідає за підкачку, і насправді є частиною ядра, а не звичайним процесом у режимі користувача.