سؤال

وأنا أحاول حاليا لإنشاء وحدة النواة التي سوف تنتج البيانات المبنية على أحداث نواة ودفعهم إلى ملف. بعد قراءة هذا هذا أمر سيء (وأنا أتفق)، وقررت أنه سيكون أكثر منطقية لجعل البيانات في ملف / إجراءات أن البرنامج يمكن للمستخدم سحب من عند الضرورة. ومع ذلك، أدت هذه الفكرة إلى كل أنواع المشاكل، لا سيما متى وكيف واضح من هذا الملف. حتى ظننت ... "لماذا لا أقوم بإجراء إخراج مسمى في / إجراءات وقراءتها من ذلك؟"

ولقد حصلت على جوهر العام لتحديد وظيفة القراءة وظيفة الكتابة عن ملف بروك، ولكن أنا لا تزال تواجه مشكلة مفاهيمية مع كيفية سأذهب حول هذا الموضوع. وهي، كيف أنا أكتب هذه الوظيفة لأخذ البيانات التعسفي والكتابة إلى مثل هذه الأنابيب من نواة؟ هل لديها أي فكرة كيف كنت دفع البيانات إلى إخراج مسمى من نواة الفضاء؟ في النهاية، فإنه لا <م> هل لديك أن يكون ملف / إجراءات (وخاصة إذا كان الخطأ من لي للقيام بذلك)، ولكن هذا هو الاستنتاج جئت ل. ثم سآخذ لمعرفة كيفية إرفاق إليه من برنامج مساحة المستخدم، ولكن أشعر أن هذه قضية منفصلة.

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

المحلول

وبدلا من اتخاذ إخراج مسمى، ما تريد القيام به هو إنشاء "جهاز الشخصية". إذا كنت تريد بسيطة التفاعل أو تدفق البيانات من نواة إلى مساحة المستخدم والظهر، وهذا هو الأسلوب المعتاد. أود أن أوصى بالبحث عن الأجهزة المماثلة في نواة لينكس ورؤية ما يفعلونه.

نصائح أخرى

وأعتقد أن الطريقة يتم ذلك بشكل عام هو استخدام مقبس netlink. واحدة أو أكثر من العمليات مساحة المستخدم يمكن ربط عنوان "netlink"، ومنشأة النواة يمكن بث رسائل إلى أي / كل منهم حسب الضرورة.

وهذا بالتأكيد ما تفعل بعض الأشياء، والنظام الفرعي الشبكات على وجه الخصوص. فمن الممكن لبرنامج مساحة المستخدم لمشاهدة لإجراء تغييرات في واجهات الشبكة (مثل عناوين IP الجديدة، وصلة تغيير الوضع) باستخدام هذا الأسلوب.

وأنا أتفق مع بول تنفيذ جهاز حرف هو على الارجح أفضل وسيلة للذهاب. ربما النظر في قانون تنفيذ / ديف / kmem أو / ديف / RTC [0-9]. أيضا، والسائقين مسلسل تنفيذ برامج التشغيل الخاصة بهم باستخدام الأجهزة الشخصية.

ومجرد التفكير في الأمر على النحو جهاز ظاهري. : -)

و/ إجراءات ليس في الواقع نظام الملفات الحقيقي . انها شيدت من قبل نواة بناء على ما قيد التشغيل حاليا. أنا لا أعتقد أنك يمكن أن تخلق الأنابيب اسمه في ذلك.

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