PID 0 hangi süreçte?


Yanıtlar:


51

Başlıklı wikipedia sayfasından: İşlem tanımlayıcısı :

Özel olarak ayırt edilmiş işlem ID'lerine sahip iki görev vardır: takas veya zamanlama işlem ID 0'a sahiptir ve çağrı işleminden sorumludur ve aslında normal bir kullanıcı modu işleminden ziyade çekirdeğin bir parçasıdır . İşlem Kimliği 1 genellikle sistemin başlatılması ve kapatılmasından sorumlu olan başlangıç sürecidir. Başlangıçta, işlem kimliği 1 herhangi bir teknik önlem tarafından özel olarak başlatılmadı: bu kimliği çekirdeğin başlattığı ilk işlem olmanın doğal bir sonucu olarak görüyordu. Daha yeni Unix sistemleri tipik olarak 'işlemler' olarak görülebilen ilave çekirdek bileşenlere sahiptir; bu durumda, PID 1, init işleminin daha eski sistemlerle tutarlılığını korumak için aktif olarak ayrılmıştır.

Eğer ebeveyn PID'ler (PPID) ait bakarsanız bu kanıtlarını görebilirsiniz initve 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çekirdek iş parçacığı arka plan programıdır. Bütün iplikler bu konuya göre ayrıldı. psPPID'nin kim olduğunu kullanan ve kullanan diğer işlemlere bakarsanız, bunun kanıtını görebilirsiniz :

$ 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]

Dikkat onların hepsi 2.


Öyleyse, eğer PID 0 değiştirilebilirse, kswapd[0-9]*sistemimde şu an hangi PID 52 var? Sayfalamadan da sorumlu görünüyor.
Ruslan

1
@Ruslan - Eğer soruları takip ediyorsanız lütfen ana siteden onlara sorun, yorumlar bunun için değildir. Bu soruya yeni sorunuzda referans verin.
slm

peki, ama çatal alt sürecini kullanarak yeni bir süreç yarattığımızda 0 ödensin mi?
roottraveller

@ roottraveller zorunlu değil, ebeveynlerin her ne olursa olsun PID çatalın oluştuğu yerde ortaya çıkacak.
slm

10

Gönderen işlem tanımlayıcı wiki:

Özel olarak ayırt edilmiş işlem ID'lerine sahip iki görev vardır: takas veya zamanlama işlem ID 0'a sahiptir ve çağrı işleminden sorumludur ve aslında normal bir kullanıcı modu işleminden ziyade çekirdeğin bir parçasıdır.


5

İle süreç pid 0zamanlayıcı,

İşlem Kimliği Açıklama:
0 Zamanlayıcı
1 Başlangıç ​​işlemi
2 kflushd
3 kupdate
4 kpiod
5 kswapd
6 mdrecoveryd

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.