إدارة عملية (حوسبة)
العملية وباللغة الانجليزية (process) وهي تعبر عن البرنامج أو جزء منه قيد التنفيذ. كما ان المسئول عن إدارة العمليات وكل ما يتعلق بها من إنشاء وانهاء أو جدولة هو نظام التشغيل
مقدمة
وفي بدايات الحواسيب كان نظام التشغيل يسمح بتنفيذ برنامج واحد فقط في زمن ما، بحيث كان يسيطر هذا البرنامج سيطرة تامة على نظام التشغيل أو حتى موارد الحاسوب، اما الحواسيب الحديثة متعددة الأغراض، تشمل الحواسيب الشخصية والحواسيب العملاقة(mainframes)، كما يسمح نظام التشغيل لاكثر من برنامج ان يحمل إلى الذاكرة وينفذون في فترة زمنية متذاخلة "في نفس المدة".
لكي يستطيع نظام التشغيل من إدارة العمليات فانة يخصص لكل عملية ما يلي :
مساحة عنونة "Address Space " :
وهي عبارة عن المساحة المحجوزة بالذاكرة الرئيسية للعملية الحالية.شفرة البرنامج "Program Code ":
عبارة عن الايعازات المطلوب تنفيذها.
مؤشر التكديس Stack Pointer.
عداد البرامج Program Counter.
السجل Register
الكومة"النثريات" Heap
حالات العملية
وهي عبارة عن الحالات التي يمكن ان تمر بها العملية
جديدة New:
وهي مجموعة الانشطة والوظائف التي لا زالت في الذاكرة الثانوية والتي يراد تنفيذها عن طريق تحميلها إلى الذاكرة الرئيسية.
مستعدة للتنفيذReady:هي عبارة عن العمليات التي تنتضر في طابور الانتظار Ready Queue في الذاكرة الرئيسية.
قيد التنفيذRunning:هي العمليات التي تكون تحت سيطرة المعالج ولا يمكن ان تكون هناك أكثر من عملية تحت سيطرة معالج احادي النواة في نفس الوقت.
انتظار Waiting :هي العمليات التي تنتضر حدوث امر معين لاتمام تنفيذها.
وهي العمليات التي تنتضر حدوث امر معين لاتمام تنفيذها.
انتهاءTerminat or Halt :هي العمليات التي انتهى تنفيذها سواء بشكل طبيعي وا اجهاضي "في حالة حدوث خطاء".
تبدء مراحل تنفيذ العملبات بأن يقوم المستخدم بالنفر على على الوضائق أو البرامج فيقوم نظام التشغيل أو بشكل أكثر دقة يقوم المجدول طويل المدى "Long Term Scheduler" بنسخها إلى الذاكرة الرئيسية، ثم يقوم المجدول قصير المدى"Short Term جدول أعمال" باختيارها ويامر المنفذ "مرسل" بنقلها إلى المعالج، وفي حالة حدوث اي مقاطعة أو طلب ادخال أو اخراج من المستخدم يقوم المجدول متوسط المدى "Med Term Scheduler" بنقلها من حالة التنفيذ إلى الانتظار.
كتلة السيطرة على العملية PCB
جدولة العمليات
هي وضع خطة لترتيب دخول العمليات إلى المعالج يقوم بتنفيذ هذه الخطة ثلاثة مجدولات:
المجدول قصير المدى STS
المجدول متوسط المدى MTS
المجدول طويل المدى LTS
انواع العمليات
بحسب موقع التنفيذ:
1- عمليات نمط المعالجة CPU Bound Process :وهي العمليات التي تقضي معضم وقتها في المعالج
2- عمليات نمط الإدخال والإخراج I/O Bound Process:
وهي العمليات التي تقضي معضم وقتها في عمليات الإدخال والإخراج
يجب أن تقوم المجدولات باختيار عملبات تكون خليط من النوعين السابقين لكي يتم استغلال المعالج بشكل مثالي.
بحسب التعاونية:نهتم بهذا التصنيف عند دراسة الاتصال بين العملياتIPC1
-عمليات غير متعاونة "مستفلة":وهي العمليات التي لا تؤثر ولا تتاثر بتنفيذ العمليات الأخرى.
2- عمليات متعاونة :وهي العمليات التي تؤثر وتتأثر بتنفيذ العمليات الأخرى،
فوائد العمليات المتعاونة :
مشاركة المعلومات.
تسريع انجاز العمليات :عن طريق تقسيم المهمة إلى مهام فرعية تنفذ بالتوازي
استغلال أسلوب بناء أنظمة تشغيل الوحدات.تمكن المستخدم من عمل أكثر من عملية بشكل متزامن "كأن يقوم بطباعة مستند والتعديل في نفس هذا المستند".
وهناك نوعين من الاتصال بين العمليات المتعاونة :
1- الذاكرة المشتركة Shared Memory:عملية تحديد ذاكرة افتراضية مشتركة لنقل وتبادل البيانات بين العمليات. ولها نوعين
ذاكرة محدودة الحجم :في هذا النوع يتوجب على اي عملية تريد ان تضيف معلومات إلى الذاكرة التأكد اولاً من إمكانية استيعابها للبيانات المراد اضافتها.ذاكرة غير محدودة الحجم:
في هذا النوع لكل عملية الحرية الكاملة في إضافة اي مقدار من البيانات.
2- تمرير الرسائل Message Passing: في هذا النوع يتم تراسل البيانات بين العمليات بحيث تحدد العملية المرسلة عنوان العملية المستقبلة أيضا يجب على العملية المستقبلة تحديد عنوان العملية المرسلة، ويتوجب ان يكون هناك وسط للربط بين العملينبن ويمكن ان يكون الإرسال بواسطة الاسم أو بواسطة صندوق بريد مشترك.
المراجع
areq.net
التصانيف
نظم تشغيل حواسيب العلوم التطبيقية تكنولوجيا