Proc को फाइल सिस्टम क्यों कहा जाता है?


20

procफाइल सिस्टम कर्नेल एक Linux सिस्टम पर प्रत्येक चल प्रक्रिया के बारे में जानकारी देने के लिए अनुमति देता है।

procफाइल सिस्टम क्यों कहा जाता है? यह एक वास्तविक फ़ाइल सिस्टम की तरह नहीं है ext4। यह फाइलों का एक संग्रह है जिसमें चल रही प्रक्रियाओं की जानकारी है।

जवाबों:


25

/procएक फाइल सिस्टम क्योंकि उपयोगकर्ता प्रक्रियाओं परिचित सिस्टम कॉल और पुस्तकालय कॉल, जैसे के साथ इसके माध्यम से नेविगेट कर सकते है opendir(), readdir(), chdir()और getcwd()। यहां तक ​​कि open(), read()और इसमें close()दिखाई देने वाली बहुत सारी "फाइलों" पर काम करते हैं /proc। अधिकांश इरादों और लगभग सभी उद्देश्यों के लिए, /procएक फाइल सिस्टम है, इस तथ्य के बावजूद कि इसकी फाइलें कुछ डिस्क पर ब्लॉक पर कब्जा नहीं करती हैं।

मुझे लगता है कि हम सभी को स्पष्ट करना चाहिए कि "फाइल सिस्टम" शब्द की परिभाषा हम वर्तमान में उपयोग कर रहे हैं। Ext4 के संदर्भ में, जब हम "फाइल सिस्टम" लिखते हैं, तो हम शायद डिस्क ब्लॉक के लेआउट के संयोजन के बारे में बात कर रहे हैं, डिस्क ब्लॉक के बारे में मेटाडेटा जानकारी के विनिर्देश जो डिस्क पर कहीं रहते हैं, और कोड जो इसके साथ काम करता है उस पर डिस्क लेआउट। के संदर्भ में /usr, /tmp, /var/runऔर इतने पर, हम समझ या कैसे कुछ चीजें नाम के लिए का एक साझा अवधारणा वाले हैं उनमें लेखन। "फाइल सिस्टम" शब्द के दो उपयोग वास्तव में काफी अलग हैं। /procजैसा कि आपने नोट किया है, वास्तव में "फाइल सिस्टम" का दूसरा प्रकार है।


9
जब तक कोई यह नहीं /procसोचता कि फाइलों में हमेशा डिस्क-समर्थित (या टेप-समर्थित, या सीडी-समर्थित या जो कुछ भी समर्थित है) फ़ाइलों के लिए डरावने क्वाट का उपयोग करने का कोई कारण नहीं है । वे हमेशा नहीं होते हैं - हमेशा रैम-डिस्क के बारे में भी सोचते हैं। में एक "वास्तविक" फ़ाइल के साथ एक खुला / लिखना / बंद अनुक्रम /home, हमेशा यह मतलब नहीं हो सकता है कि इसी फ़ाइल को स्थायी रूप से प्रतिबिंबित करने के लिए किए गए संगत परिवर्तनों को पहले से ही बनाया और पूरा किया गया है।
हेगन वॉन एटिजन

10
tl? dr: क्योंकि यह फाइलों का एक सिस्टम है?
जोर्ग डब्ल्यू मित्तग

1
ध्यान दें कि यह "लिनक्स में, सब कुछ एक फ़ाइल है" कहावत भी बताती है।
dr01

यह एक समान तरीके से एक फाइल सिस्टम है कि स्क्रीन एक "डेस्कटॉप" है। रूपकों के साथ कंप्यूटर शब्दावली समाप्त हो जाती है।
Barmar

18

यह केवल जानकारी युक्त फ़ाइलों का एक क्षेत्र है

लेकिन यह वास्तव में एक फाइलसिस्टम है । फाइलसिस्टम को लिखने योग्य नहीं है और उन्हें स्थायी भंडारण पर नहीं रहना है।

नोट: procfs(कर्नेल में छद्म फाइलसिस्टम कार्यान्वयन) और इसके पारंपरिक आरोह बिंदु के बीच अंतर है /proc। आप सिद्धांत में procfsकहीं भी माउंट कर सकते हैं , लेकिन यह दुर्लभ है। उसके कारण, लोग अक्सर इस बारे में बात करते हैं /procकि उनका वास्तव में क्या मतलब है procfs

procfsको एक छद्म फाइलसिस्टम कहा जाता है क्योंकि procfsसामान्य फाइलसिस्टम के संचालन द्वारा फाइल नहीं बनाई जाती है, लेकिन कर्नेल में कहीं और क्या हो रहा है, उसके आधार पर फाइलसिस्टम कार्यान्वयन द्वारा खुद को जोड़ा और हटा दिया जाता है।


तो क्यों / आदि / उदाहरण के लिए बूट को फ़ाइल सिस्टम नहीं कहा जाता है ???
मखलौफ गरारबीआई

7
क्योंकि वे एक फाइलसिस्टम में निर्देशिका हैं। (ठीक है, /bootअक्सर एक अलग फाइल सिस्टम है, लेकिन यह एक अलग तरह का फाइल सिस्टम नहीं है।)
cjm

9

यदि डेटा को एक तरह से व्यवस्थित किया जाता है, तो उन्हें फ़ाइल सिस्टम के लिए उपयोग किए जाने वाले तंत्रों के माध्यम से एक्सेस किया जा सकता है जिसे आप पूरी तरह से एक फ़ाइल सिस्टम कह सकते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.