हाल ही में, मैंने लिनक्स चलाने वाले एम्बेडेड डिवाइस के ड्राइवर को विकसित करना शुरू किया।लिनक्स कर्नेल/ड्राइवर विकास के लिए नया
अब तक मेरे पास केवल लिनक्स आंतरिक के बारे में पढ़ा गया है।
चालक devlopment में कोई पूर्व अनुभव होने के बाद, मुझे अपने पहले चरण को जमीन पर मुश्किल लग रहा है।
- मैंने कर्नेल स्रोत-कोड (v2.6.32) डाउनलोड किया है।
- मैंने लिनक्स डिवाइस ड्राइवर्स (3e)
- पढ़ा है (स्किम्प्ड) स्टैक ओवरव्लो पर मैंने कुछ संबंधित पोस्ट पढ़ी हैं।
- मैं समझता हूं कि लिनक्स में "मोनोलिथिक" दृष्टिकोण है।
- मैंने कर्नेल बनाया है (मेन्यूकॉन्फ इत्यादि में मौजूदा ड्राइवर शामिल है)
- मुझे kconfig और मेकफ़ाइल फ़ाइलों की मूल बातें पता हैं ताकि कोई समस्या न हो।
कोई संरचना (अर्थात अंतर-लिंक)
कर्नेल-स्रोत कोड में विभिन्न निर्देशिकाओं के वर्णन कर सकते।दूसरे शब्दों में, एक स्रोत-कोड फ़ाइल को देखते हुए
जो अन्य फ़ाइलों यह संबंधित कोड के लिए को उल्लेख करता है("#include" -s एक आंशिक विचार प्रदान करते हैं)
क्या कोई बेहतर विचार पाने में मेरी मदद कर सकता है?
किसी भी मदद की सराहना की जाएगी
धन्यवाद।
इसे साफ़ करना चाहिए। http://www.youtube.com/watch?v=ENNKtfR2PYc –
कर्नेल के लिए एक सरल मॉड्यूल हैलो वर्ल्ड लिखें। फिर एक बार जब आप हैलो वर्ल्ड कर्नेल मॉड्यूल समझते हैं तो यह http://www.freesoftwaremagazine.com/articles/drivers_linux लिखें और इसका परीक्षण करें। उपर्युक्त लिंक का पालन करें जब तक आप समझ में नहीं आते। और यहां मेरी दो पोस्ट्स को भी पढ़ें http://mail.nl.linux.org/kernelnewbies/2010-09/ मैंने सचमुच मंच पर लड़ा कि यह समझने के लिए कि यह कैसे काम करता है। तो आपको वही करना होगा। चाहे कोई भी समझ में नहीं आता है, भले ही आप समझ सकें। सीखने का सबसे अच्छा तरीका एक प्रोजेक्ट लेना है और अंत में काम करना शुरू करना आपको बहुत कुछ मिलेगा। उदाहरण के लिए एक को ठीक करने का निर्णय लें कर्नेल में वायरलेस ड्राइवर के लिए –
बग। मुझे पता है कि इस चरण में यह थका हुआ लगता है लेकिन इसे तब तक पीछा करते हैं जब तक आप इसे नहीं करते। आप के अंत में यह करने में सक्षम होंगे। लिनक्स डिवाइस चालक अनुशंसा –