memtrack_module संरचना संदर्भ
#include < memtrack.h >
डेटा फ़ील्ड | |
संरचना hw_module_t | सामान्य |
int (* | init ) ( कास्ट स्ट्रक्चर मेमट्रैक_मॉड्यूल * मॉड्यूल) |
int (* | getMemory ) ( कास्ट स्ट्रक्चर मेमट्रैक_मॉड्यूल * मॉड्यूल, पीआईडी_टी पीआईडी, इंट टाइप, स्ट्रक्चर मेमट्रैक_कार्ड * रिकॉर्ड्स, size_t * num_records) |
विस्तृत विवरण
हर हार्डवेयर मॉड्यूल में HAL_MODULE_INFO_SYM नाम से एक डेटा संरचना होनी चाहिए और इस डेटा संरचना के क्षेत्र में hw_module_t के साथ शुरू होना चाहिए और उसके बाद मॉड्यूल विशिष्ट जानकारी होनी चाहिए।
फ़ाइल मेमट्रैक.एच की लाइन 120 पर परिभाषा।
फील्ड प्रलेखन
संरचना hw_module_t सामान्य |
फ़ाइल मेमोरियल.एच की लाइन 121 पर परिभाषा।
पूर्णांक (* getMemory) (स्थिरांक struct memtrack_module * मॉड्यूल, pid_t पीआईडी, पूर्णांक प्रकार, struct memtrack_record * रिकॉर्ड, size_t * num_records) |
(* getMemory) () रिकॉर्ड ऑब्जेक्ट्स की एक सरणी की अपेक्षा करता है और मेमोरी के आकार और संबंधित झंडे के आकार के साथ * num_record संरचनाओं तक पॉप्युलेट करता है। यह रिकॉर्ड के कुल संख्या के साथ * num_records को भी अपडेट करता है यदि पास होने पर * num_records बड़ा हो तो वापस आ सकता है। आकार 0 के साथ रिकॉर्ड्स की वापसी की उम्मीद की जाती है, रिकॉर्ड्स की संख्या समान मेमोरी प्रकार के लिए कॉल के बीच भिन्न नहीं होनी चाहिए, यहां तक कि। विभिन्न pids के लिए।
कॉलर अक्सर getMemory को एक प्रकार के लिए कॉल करेगा और * num_records == 0 के साथ pid करेगा, यह निर्धारित करने के लिए कि कमरे के लिए कितने रिकॉर्ड आवंटित करने के लिए, यह मामला HAL में एक फास्ट-पथ होना चाहिए, एक निरंतर लौट रहा है और किसी भी कर्नेल फ़ाइलों को क्वेरी नहीं करना चाहिए। यदि * num_records 0 में पास हुआ है, तो रिकॉर्ड NULL हो सकते हैं।
यह फ़ंक्शन थ्रेड-सुरक्षित होना चाहिए, इसे एक ही समय में कई थ्रेड से कॉल किया जा सकता है।
सफलता पर 0 लौटाता है, -ENODEV यदि प्रकार समर्थित नहीं है, तो अन्य त्रुटियों पर -no।
फ़ाइल मेमोरियल.एच की लाइन 151 पर परिभाषा।
int (* init) ( कॉस्ट स्ट्रक्चर मेमट्रैक_मॉड्यूल * मॉड्यूल) |
(* init) () मेमरी प्रबंधन सेटअप क्रिया करता है और getMemory () के लिए किसी भी कॉल से पहले एक बार कॉल किया जाता है । सफलता पर 0, त्रुटि पर -rno।
इस संरचना का प्रलेखन निम्न फ़ाइल से उत्पन्न हुआ था:
- हार्डवेयर / कामचलाऊ / शामिल / हार्डवेयर / memtrack.h