मैं लिनक्स में शुरू होने वाली प्रक्रिया की तलाश कर रहा हूं जिसमें प्रक्रिया आईडी है। मुझे पता है init
कि पीआईडी 1 है, जो लिनक्स में पहली प्रक्रिया है, क्या पीआईडी 0 के साथ कोई प्रक्रिया है?
मैं लिनक्स में शुरू होने वाली प्रक्रिया की तलाश कर रहा हूं जिसमें प्रक्रिया आईडी है। मुझे पता है init
कि पीआईडी 1 है, जो लिनक्स में पहली प्रक्रिया है, क्या पीआईडी 0 के साथ कोई प्रक्रिया है?
जवाबों:
विकिपीडिया पृष्ठ से शीर्षक: प्रक्रिया पहचानकर्ता :
विशेष रूप से प्रतिष्ठित प्रक्रिया ID के साथ दो कार्यों के होते हैं: swapper या Sched प्रक्रिया ID 0 है और के लिए जिम्मेदार है पेजिंग , और वास्तव में एक सामान्य कर्नेल के बजाय का हिस्सा है उपयोगकर्ता के मोड प्रक्रिया। प्रक्रिया ID 1 आमतौर पर init प्रक्रिया है जो सिस्टम को शुरू करने और बंद करने के लिए मुख्य रूप से जिम्मेदार है। मूल रूप से, प्रक्रिया ID 1 को विशेष रूप से किसी भी तकनीकी उपायों द्वारा init के लिए आरक्षित नहीं किया गया था: यह बस इस आईडी के कर्नेल द्वारा आहूत पहली प्रक्रिया होने के स्वाभाविक परिणाम के रूप में थी। अधिक हाल ही में यूनिक्स प्रणालियों में आमतौर पर अतिरिक्त कर्नेल घटक होते हैं जो 'प्रक्रियाओं' के रूप में दिखाई देते हैं, इस मामले में पीआईडी 1 सक्रिय रूप से पुराने सिस्टम के साथ स्थिरता बनाए रखने के लिए इनिट प्रक्रिया के लिए आरक्षित है।
आप इसका प्रमाण देख सकते हैं यदि आप मूल पीआईडी (पीपीआईडी) 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
कर्नेल थ्रेड डेमॉन है। सभी धागे इस धागे से कांटे गए हैं। आप इसका प्रमाण देख सकते हैं यदि आप अन्य प्रक्रियाओं का उपयोग करके ps
देख रहे हैं और देख रहे हैं कि उनका पीपीआईडी कौन है:
$ 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 है? यह पेजिंग के लिए भी जिम्मेदार लगता है।
से प्रक्रिया पहचानकर्ता विकि:
विशेष रूप से प्रतिष्ठित प्रक्रिया आईडी के साथ दो कार्य हैं: स्वैपर या शेड्यूल में प्रक्रिया 0 है और पेजिंग के लिए जिम्मेदार है, और वास्तव में सामान्य उपयोगकर्ता-मोड प्रक्रिया के बजाय कर्नेल का हिस्सा है।