ما هي جدولة العمليات في أنظمة الحاسوب؟ دليل شامل

جدولة العملياتنظم التشغيلالمعالجإدارة المواردالجدولة قصيرة الأمدالجدولة طويلة الأمدتعدد المهام

فهم جدولة العمليات في أنظمة الحاسوب

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

أهداف الجدولة

يسعى المجدول إلى تحقيق توازن بين عدة أهداف متضاربة أحياناً، منها:

  • تعظيم الإنتاجية: زيادة إجمالي العمل المنجز في وحدة زمنية.
  • تقليل وقت الانتظار: تقليل الوقت الذي يقضيه العمل في الانتظار قبل البدء.
  • تقليل زمن الاستجابة: سرعة استجابة النظام للمستخدم.
  • تعزيز العدالة: ضمان حصول كل عملية على نصيب عادل من وقت المعالج.

أنواع المجدولات في أنظمة التشغيل

تعتمد أنظمة التشغيل الحديثة على ثلاثة مستويات من الجدولة:

1. الجدولة طويلة الأمد (Long-term Scheduling)

تُعرف بجدولة القبول، وهي المسؤولة عن تحديد العمليات التي يتم إدخالها إلى الذاكرة الرئيسية. تلعب دوراً حيوياً في التحكم في درجة تعدد البرمجة وضمان توازن النظام بين العمليات التي تستهلك المعالج (CPU-bound) وتلك التي تستهلك الإدخال والإخراج (I/O-bound).

2. الجدولة متوسطة الأمد (Medium-term Scheduling)

تعمل على إدارة الذاكرة من خلال نقل العمليات مؤقتاً من الذاكرة الرئيسية إلى الذاكرة الثانوية (التبديل أو Swapping)، مما يتيح مساحة أكبر للعمليات النشطة.

3. الجدولة قصيرة الأمد (Short-term Scheduling)

هي المجدول الذي يقرر أي عملية ستنفذ على المعالج في اللحظة الحالية، وتتميز بسرعة اتخاذ القرار وتكراره المستمر.

أسئلة شائعة

ما الفرق بين المجدول الاستباقي والتعاوني؟

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

لماذا نحتاج إلى الجدولة طويلة الأمد؟

تساعد الجدولة طويلة الأمد في التحكم في درجة تعدد البرمجة وضمان مزيج متوازن من العمليات التي تعتمد على المعالج وتلك التي تعتمد على الإدخال والإخراج.

ماذا يحدث عند حدوث تبديل (Swapping)؟

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