نواة لينكس التعليمات البرمجية التي تستخدم procfs:ماذا يجب أن تكون على علم ؟

StackOverflow https://stackoverflow.com/questions/1134657

سؤال

لدي فكرة جميلة جدا من أجل تصحيح kernel و أريد إجراء بعض البحوث انظر أمثلة التعليمات البرمجية قبل أن الشكل فكرتي.

أنا أبحث عن للاهتمام أمثلة التعليمات البرمجية التي من شأنها أن تثبت المتقدمة استخدام procfs (لينكس /proc نظام الملفات).من المثير للاهتمام, يعني أكثر من مجرد القراءة موثقة القيمة.


فكرتي هي أن تقدم كل عملية سهلة آلية البث.على سبيل المثال, دعونا النظر في عملية تشغيل مثيلات متعددة من rsync ومن يريد التحقق من نقل الحالة (كم عدد وحدات البايت التي تم نقلها حتى الآن) لكل طفل.حاليا, أنا لا أعرف من أي الطريقة التي يمكن القيام به.

وأعتزم تقديم العملية مع الحد الأدنى من واجهة لكتابة البيانات procfs.أن البيانات التي سيتم وضعها تحت PID الدليل.على سبيل المثال:

/procfs/1343/data_transfered/incoming

أستطيع أن أفكر في العديد من ميزة هذا أساسا في التزامن المجال.

بالمناسبة, إذا كانت هذه الآلية موجودة بالفعل, لا أقول...

هل كانت مفيدة؟

المحلول

نعم لقد كتبت أشياء الوخزات حول /proc.أشك أنك غير المرجح أن تحصل على نواة لينكس بقع قبلت أن تفعل أي شيء مع بروك ، ما لم تكن مجرد تحديد ما هو بالفعل هناك كسر في بعض الطريق.*

/sysfs تبدو أن الأمور تسير.

/proc أصلا على معالجة المعلومات ، ولكن الكثير من متفرقات.سائق الاشياء انتهى هناك.

*حسنا, ربما أنها سوف تأخذ ذلك إذا كان ما تفعله مع العمليات و ليس في السائق.

نصائح أخرى

إلقاء نظرة على شفرة المصدر ل procps. حزمة للرمز الذي يستخدم / بروك

http://github.com/tialaramex/leakdice/tree/master.

يستخدم PROC لمعرفة تخطيط عنوان الذاكرة لعملية، وتفريغ صفحات عشوائية من كومة الكومة (لأسباب موضحة في وثائقها).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top