لينكس جهاز عقدة الوصول إلى مجموعة عملية معينة فقط
-
06-07-2019 - |
سؤال
ولدي وحدة تشغيل الجهاز الذي يقوم register_chardev (). في وظيفة سائق مفتوحة () أتمنى أن تكون قادرة على تحديد معرف المنتج أو pgid من العملية التي تحاول فتح عقدة الجهاز. هل هذا ممكن؟ هل لديها أي أفكار من أين نبدأ؟
وانا افترض ان هذا يجب تأمين حد ما عقدة جهازي فقط لتسمح للتطبيقات جهدي لاستخدامها، لأنك لا تستطيع ترحيل العملية إلى مجموعة عملية جديدة ما لم تكن في نفس الدورة.
المحلول
ونواة ليست المكان المناسب لاتخاذ هذا النوع من القرارات السياسة - المكان الصحيح لتعيين الأذونات على الذين يمكن فتح عقدة الجهاز من خلال تحديد الملكية وأذونات المعتادة على الملف عقدة الجهاز في نظام الملفات.
إذا كنت حقا قد مجموعة قلبك على ذلك، current->pid
هو PID، current->tgid
هو معرف مجموعة الخيط وcurrent->group_leader->pid
هو PGID.
لا تنتمي إلى StackOverflow