مجموعة العمليات

في نظام تشغيل متوافق مع معيار POSIX ، تشير مجموعة العمليات إلى مجموعة من عملية واحدة أو أكثر . [ 1 ] ومن بين أمور أخرى، تُستخدم مجموعة العمليات للتحكم في توزيع الإشارة ؛ فعندما تُوجَّه إشارة إلى مجموعة عمليات، تُسلَّم الإشارة إلى كل عملية عضو في المجموعة. [ 2 ]

وبالمثل، تشير الجلسة إلى مجموعة من مجموعة عمليات واحدة أو أكثر. [ 3 ] لا يجوز لعملية إنشاء مجموعة عمليات تابعة لجلسة أخرى؛ علاوة على ذلك، لا يُسمح لعملية بالانضمام إلى مجموعة عمليات تابعة لجلسة أخرى - أي لا يُسمح لعملية بالانتقال من جلسة إلى أخرى.

عندما تقوم عملية ما باستبدال صورتها بصورة جديدة (عن طريق استدعاء إحدى execالوظائف )، فإن الصورة الجديدة تخضع لنفس عضوية مجموعة العمليات (وبالتالي الجلسة) مثل الصورة القديمة.

التطبيقات

يشكل توزيع الإشارات على مجموعات العمليات أساس التحكم في المهام الذي تستخدمه برامج الصدفة . يتضمن برنامج تشغيل جهاز TTY مفهوم مجموعة عمليات الواجهة الأمامية ، حيث يرسل إليها إشارات ناتجة عن مقاطعات لوحة المفاتيح ، ولا سيما SIGINT ("مقاطعة", Control+C )، و SIGTSTP ("إيقاف الطرفية", + )، و SIGQUIT ("إنهاء", + ). كما يرسل إشارات SIGTTIN و SIGTTOU إلى أي عمليات تحاول القراءة من الطرفية أو الكتابة إليها وليست ضمن مجموعة عمليات الواجهة الأمامية. بدورها، تقسم الصدفة مسارات الأوامر التي تنشئها إلى مجموعات عمليات، وتتحكم في مجموعة العمليات التي تمثل مجموعة عمليات الواجهة الأمامية للطرفية المتحكمة بها ، وبالتالي تحدد العمليات (وبالتالي مسارات الأوامر) التي يمكنها تنفيذ عمليات الإدخال/الإخراج من وإلى الطرفية في أي وقت.ControlZControl\

forkعندما يُنشئ الصدفة عملية فرعية جديدة لسلسلة أوامر، يقوم كل من عملية الصدفة الأصلية والعملية الفرعية بجعل العملية الفرعية قائدة لمجموعة العمليات الخاصة بسلسلة الأوامر. يضمن هذا أن تكون العملية الفرعية هي قائدة مجموعة العمليات قبل أن تعتمد أي من العمليتين الأصلية أو الفرعية على ذلك.

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

عند استخدام واجهة مستخدم رسومية ، يُفقد مفهوم الجلسة إلى حد كبير، ويتم تجاهل مفهوم الجلسات في نواة النظام . تستخدم واجهات المستخدم الرسومية، مثل تلك التي تستخدم مدير العرض X ، آلية مختلفة لتنفيذ جلسات تسجيل الدخول.

تفاصيل

يُستخدم استدعاء النظام لإنشاء setsidجلسة جديدة تحتوي على مجموعة عمليات واحدة (جديدة)، حيث تكون العملية الحالية هي قائد الجلسة وقائد مجموعة العمليات لتلك المجموعة. [ 4 ] تُعرَّف مجموعات العمليات بواسطة عدد صحيح موجب، وهو مُعرِّف مجموعة العمليات ، وهو مُعرِّف العملية التي هي (أو كانت) قائدة مجموعة العمليات. لا يشترط أن يكون لمجموعات العمليات قادة، على الرغم من أنها تبدأ دائمًا بقائد. تُعرَّف الجلسات بواسطة مُعرِّف مجموعة العمليات لقائد الجلسة. يمنع معيار POSIX تغيير مُعرِّف مجموعة العمليات لقائد الجلسة.

يُستخدم استدعاء النظام setpgidلتعيين مُعرّف مجموعة العمليات لعملية ما، وبالتالي إما ضمّ العملية إلى مجموعة عمليات موجودة، أو إنشاء مجموعة عمليات جديدة ضمن جلسة العملية، لتصبح العملية قائدة مجموعة العمليات المُنشأة حديثًا. [ 5 ] يمنع معيار POSIX إعادة استخدام مُعرّف عملية ما في حال وجود مجموعة عمليات تحمل نفس المُعرّف (أي عندما يكون قائد مجموعة العمليات قد خرج، ولكن لا تزال عمليات أخرى في المجموعة موجودة). وبذلك، يضمن عدم إمكانية أن تصبح العمليات قادة لمجموعات العمليات عن طريق الخطأ.

يستطيع استدعاء النظامkill توجيه الإشارات إما إلى عمليات فردية أو إلى مجموعات من العمليات. [ 2 ]

انظر أيضاً

مراجع

  1. معهد مهندسي الكهرباء والإلكترونيات (IEEE) ومجموعة Open Group (2018). "3. التعريفات" . مواصفات Open Group الأساسية، الإصدار 7. § 296. تاريخ الاسترجاع: 30 أغسطس 2020. مجموعة من العمليات تسمح بإرسال إشارات إلى العمليات ذات الصلة.
  2. 1 2مرجع واجهات النظام، مواصفات يونكس الموحدة ، الإصدار 5 من مجموعة Open Groupkill  
  3. معهد مهندسي الكهرباء والإلكترونيات (IEEE) ومجموعة Open Group (2018). "3. التعريفات" . مواصفات Open Group الأساسية، الإصدار 7. § 343. تاريخ الاسترجاع: 30 أغسطس 2020. مجموعة من مجموعات العمليات [...]. كل مجموعة عمليات هي عضو في جلسة.
  4. مرجع واجهات النظام، مواصفات يونكس الموحدة ، الإصدار 5 من مجموعة Open Groupsetsid  
  5. مرجع واجهات النظام، مواصفات يونكس الموحدة ، الإصدار 5 من مجموعة Open Groupsetpgid  
  6. كارل بريدج - مايكروسوفت (7 يناير 2021). "كائنات الوظائف - تطبيقات Win32" . docs.microsoft.com . تم الاطلاع عليه بتاريخ 28 أغسطس 2022 .

للمزيد من القراءة