ड्राइवर किसी भी अन्य कार्यक्रम के समान हैं, उन्हें कई स्रोत फ़ाइलों में शामिल किया जा सकता है। लिनक्स डिवाइस ड्राइवरों को सीधे कर्नेल या कर्नेल मॉड्यूल में संकलित किया जा सकता है। कर्नेल मॉड्यूल को गतिशील रूप से लोड किए जाने में सक्षम होने का लाभ है (यानी आपको उनका उपयोग करने के लिए एक नए कर्नेल को संकलित करने की आवश्यकता नहीं है)।
आप स्पष्ट रूप से हमेशा लिनक्स स्रोत कोड को देख सकते हैं, लेकिन यह एक चुनौतीपूर्ण काम हो सकता है। हालाँकि, जैसा कि लिनक्स ड्राइवरों में कुछ भी फाइलें हैं। इसका मतलब है कि अन्य प्रोग्राम VFS इंटरफ़ेस के माध्यम से उन्हें एक्सेस करते हैं। उदाहरण के लिए, आप CDROM को ioctl()
इसके डिवाइस फ़ाइल का उपयोग करके कॉल के माध्यम से नियंत्रित कर सकते हैं ।
मैं अत्यधिक लिनक्स डिवाइस ड्राइवर्स की जाँच करने की सलाह दूंगा । यह स्वतंत्र रूप से उपलब्ध है और आपके सवालों का जवाब देगा। विशेष रूप से, आप अध्याय 2 के माध्यम से पढ़ सकते हैं जो आपको दिखाता है कि एक सरल "हैलो, कर्नेल" मॉड्यूल कैसे बनाया जाए। यह आपके द्वारा पूछे जाने की तुलना में कहीं अधिक हो सकता है, लेकिन आप उन बिट्स और टुकड़ों को पढ़ सकते हैं, जिनमें आप रुचि रखते हैं। ; P