मैं डिवाइस ड्राइवर पर शुरुआत कर रहा हूं ...।
मैं जानना चाहूंगा कि प्रमुख और मामूली संख्याओं का उपयोग करके डिवाइस फ़ाइलों और ड्राइवरों से फ़ाइल संचालन कैसे स्थित है?
मैं डिवाइस ड्राइवर पर शुरुआत कर रहा हूं ...।
मैं जानना चाहूंगा कि प्रमुख और मामूली संख्याओं का उपयोग करके डिवाइस फ़ाइलों और ड्राइवरों से फ़ाइल संचालन कैसे स्थित है?
जवाबों:
यदि आप लिनक्स डिवाइस ड्राइवरों को प्रोग्राम करना सीख रहे हैं, तो मुझे आपको बताना चाहिए कि इस विषय पर एक मुफ्त ईबुक है।
लिनक्स डिवाइस ड्राइवर्स, तीसरा संस्करण
हमारे जवाब सिर्फ लिंक से अधिक प्रदान करना चाहिए। तो यहाँ एक प्रासंगिक अर्क है।
crw-rw-rw- 1 root root 1, 3 Apr 11 2002 null crw------- 1 root root 10, 1 Apr 11 2002 psaux crw------- 1 root root 4, 1 Oct 28 03:04 tty1 crw-rw-rw- 1 root tty 4, 64 Apr 11 2002 ttys0 crw-rw---- 1 root uucp 4, 65 Apr 11 2002 ttyS1 crw--w---- 1 vcsa tty 7, 1 Apr 11 2002 vcs1 crw--w---- 1 vcsa tty 7, 129 Apr 11 2002 vcsa1 crw-rw-rw- 1 root root 1, 5 Apr 11 2002 zero
परंपरागत रूप से, प्रमुख संख्या डिवाइस से जुड़े ड्राइवर की पहचान करती है। के लिये उदाहरण, / Dev / बातिल तथा / Dev / शून्य दोनों चालक 1 द्वारा प्रबंधित हैं, जबकि आभासी चोर- तलवों और सीरियल टर्मिनलों का प्रबंधन चालक 4 द्वारा किया जाता है; इसी तरह, दोनों vcs1 तथा vcsa1 डिवाइस ड्राइवर द्वारा प्रबंधित किए जाते हैं 7. आधुनिक लिनक्स कर्नेल कई ड्राइवरों को अनुमति देते हैं प्रमुख संख्या साझा करें, लेकिन अधिकांश डिवाइस जो आप देखेंगे वह अभी भी पर आयोजित किए गए हैं एक प्रमुख-एक-चालक सिद्धांत।
माइनर नंबर का उपयोग कर्नेल द्वारा यह निर्धारित करने के लिए किया जाता है कि कौन सा डिवाइस है करने के लिए भेजा। आपके ड्राइवर के लिखे जाने के आधार पर (जैसा कि हम नीचे देखेंगे), आप कर सकते हैं या तो कर्नेल से अपने डिवाइस पर एक सीधा सूचक प्राप्त करें, या आप नाबालिग का उपयोग कर सकते हैं उपकरणों की एक स्थानीय सरणी में एक सूचकांक के रूप में अपने आप को संख्या। किसी भी तरह, कर्नेल ही इस तथ्य से परे मामूली संख्या के बारे में कुछ नहीं जानता कि वे किस संदर्भ में हैं आपके ड्राइवर द्वारा लागू किए गए उपकरण।