2015-06-03 5 views
7

गिरी: 3.4+कैसे कर्नेल में नया कांटे को सुनने के लिए

किसी को भी गिरी प्रक्रिया घटनाओं कनेक्टर का उपयोग कर नए कांटे करने के लिए "सुन" के बगल में किसी अन्य तरीके से पता है।

मैं हर बार एक नया कार्य (प्रक्रिया) बनने पर अपने मॉड्यूल में अधिसूचित होना चाहता हूं।

+4

मुझे समझ में नहीं आता क्यों pnotify (http://lwn.net/Articles/153187/) इसे कभी भी कर्नेल में नहीं बना दिया, जो सही होगा! –

उत्तर

1

ऐसा करने के लिए आप LSM hook का उपयोग करने का प्रयास कर सकते हैं। जिस फ़ंक्शन को आप कार्यान्वित करना चाहते हैं वह सुरक्षा_task_create

+0

जो कम से कम एलएसएम मॉड्यूल बनाने में असफल होगा, असल में डिफ़ॉल्ट डीएसी या सेलिनक्स एलएसएम मॉड्यूल को बदल देगा। मैं सिर्फ हुकिंग के उद्देश्य के लिए डिफ़ॉल्ट एलएसएम मॉड्यूल को प्रतिस्थापित नहीं करना चाहता ... –

1

मुझे सिस्टमटैप की स्थिति के बारे में पता नहीं है, लेकिन मुझे लगता है कि आप SystemTap का उपयोग कर Solaris पर DTrace की तरह फ़ंक्शन सीमा ट्रेसिंग कर सकते हैं। आपको पता होना चाहिए कि कौन सी लिनक्स कर्नेल ट्रेस करने के लिए फ़ंक्शन करता है, लेकिन यह मुझे लगता है कि यह सरल हिस्सा है।

+0

"सिस्टमटैप चल रहे लिनक्स सिस्टम के बारे में जानकारी एकत्र करने को सरल बनाने के लिए मुफ्त सॉफ्टवेयर (जीपीएल) आधारभूत संरचना प्रदान करता है। यह प्रदर्शन या कार्यात्मक समस्या का निदान करने में सहायता करता है " मैं किसी समस्या का निवारण नहीं कर रहा हूं बल्कि मेरे मॉड्यूल में रन-टाइम जानकारी देख रहा हूं, इसलिए मैं इस पर कार्य कर सकता हूं। –

+0

क्या आपकी आवश्यकता "चल रहे लिनक्स सिस्टम के बारे में जानकारी एकत्र करने" की श्रेणी में नहीं आती है? मुझे इस तथ्य के बारे में पता है कि सिस्टमटैप में इस जानकारी का उपयोग अकेले समस्या निवारण के लिए करने के लिए आपको मजबूर करने की क्षमता/क्षमता की कमी है;) – pavan

+0

यह सिर्फ मुझे लगता है कि यह मच्छर के लिए एक हथौड़ा बहुत बड़ा हो सकता है ... –

0

कुछ हलक हैं जिन्हें आप हल करने के लिए उपयोग कर सकते हैं।

आप प्रासंगिक syscall तालिका प्रविष्टि को हुक कर सकते हैं, sys_fork को अपने कोड से प्रतिस्थापित कर सकते हैं और मूल sys_fork को कॉल कर सकते हैं।

अन्यथा, आप sys_fork स्वयं को हुक कर सकते हैं।

संबंधित मुद्दे