linux kernel - What is the difference between module_init and subsys_initcall while initializing the driver? -
ड्राइवर प्रारंभ करते समय अंतर समय से संबंधित है, या अधिक सटीक, निष्पादन के आदेश। अर्थात, प्रत्येक के लिए वास्तविक मैक्रो परिभाषा पर निर्भर करता है अगर कर्नेल (लोड करने योग्य) मॉड्यूल के लिए कॉन्फ़िगर किया गया है या नहीं इन मैक्रोज़ (और अन्य init मैक्रोज़) की परिभाषा में पाया जा सकता है ध्यान दें कि module_init और
subsys_initcall में क्या अंतर है ?
subsys_initcall के रूप में घोषित प्रक्रिया को
module_init के रूप में घोषित प्रक्रिया से पहले निष्पादित होने की गारंटी है यह आदेश यह सुनिश्चित करता है कि उप-तंत्र और प्लेटफ़ॉर्म ड्रायवर को पहले की कार्यक्षमता (जैसे एक डिवाइस ड्राइवर रजिस्टरों को एक सबसिस्टम डिवाइस के रूप में उपयोग) करने का प्रयास करने से पहले आरंभ किया जाता है।
subsys_initcall () का उपयोग केवल अंतर्निहित (statically linked) मॉड्यूल द्वारा किया जा सकता है।
मॉड्यूल_इनिट को या तो निर्मित या लोड करने योग्य मॉड्यूल द्वारा उपयोग किया जा सकता है।
Comments
Post a Comment