मैं सभी के बारे में क्यों नहीं पढ़ना चाहिए गिरी से / लिखने फ़ाइलों विचार विमर्श पता है, बजाय कैसे उपयोग करने के लिए / proc या नेटलिंक कि क्या करना है। मैं वैसे भी पढ़ना / लिखना चाहता हूं। मैंने ड्राइविंग मे नट्स - थिंग्स यू नेवर डू डू इन द कर्नेल भी पढ़ा है ।
हालाँकि, समस्या यह है कि 2.6.30 निर्यात नहीं करता है sys_read()
। बल्कि इसमें लिपटा हुआ है SYSCALL_DEFINE3
। इसलिए अगर मैं इसे अपने मॉड्यूल में उपयोग करता हूं, तो मुझे निम्नलिखित चेतावनी मिलती है:
WARNING: "sys_read" [xxx.ko] undefined!
WARNING: "sys_open" [xxx.ko] undefined!
स्पष्ट रूप insmod
से मॉड्यूल लोड नहीं कर सकता क्योंकि लिंकिंग सही ढंग से नहीं होती है।
प्रशन:
- कैसे पढ़ने के लिए 2.6.22 (जहां के बाद गिरी भीतर / लिखने
sys_read()
/sys_open()
निर्यात नहीं कर रहे हैं)? - सामान्य तौर पर,
SYSCALL_DEFINEn()
कर्नेल के भीतर से मैक्रो में लिपटे सिस्टम कॉल का उपयोग कैसे करें ?