الجدولة الوقائية وغير الوقائية
الاختلافات الرئيسية بين الجدولة الوقائية وغير الوقائية
- في الجدولة الوقائية، يتم تخصيص وحدة المعالجة المركزية للعمليات لفترة زمنية محددة، ويتم تخصيص وحدة المعالجة المركزية للجدولة غير الوقائية للعملية حتى تنتهي.
- في الجدولة الوقائية، يتم تبديل المهام بناءً على الأولوية، بينما في الجدولة غير الوقائية، لا يحدث أي تبديل.
- تتمتع الخوارزمية الوقائية بعبء تحويل العملية من حالة الاستعداد إلى حالة التشغيل، في حين أن الجدولة غير الوقائية لا تحتوي على مثل هذا الحمل الزائد للتبديل.
- الجدولة الوقائية مرنة، في حين أن الجدولة غير الوقائية صارمة.

ما هي الجدولة الوقائية؟
الجدولة الوقائية هي طريقة جدولة حيث يتم تعيين المهام في الغالب مع أولوياتها. في بعض الأحيان يكون من المهم تشغيل مهمة ذات أولوية أعلى قبل مهمة أخرى ذات أولوية أقل، حتى لو كانت المهمة ذات الأولوية المنخفضة لا تزال قيد التشغيل.
وفي ذلك الوقت، تظل المهمة ذات الأولوية المنخفضة ثابتة لبعض الوقت وتستأنف عندما تنتهي المهمة ذات الأولوية الأعلى من تنفيذها.
ما هي الجدولة غير الاستباقية؟
في هذا النوع من أساليب الجدولة، يتم تخصيص وحدة المعالجة المركزية لعملية محددة. ستؤدي العملية التي تجعل وحدة المعالجة المركزية مشغولة إلى تحرير وحدة المعالجة المركزية إما عن طريق تبديل السياق أو الإنهاء.
إنها الطريقة الوحيدة التي يمكن استخدامها لمنصات الأجهزة المختلفة. وذلك لأنه لا يحتاج إلى أجهزة متخصصة (على سبيل المثال، جهاز توقيت) مثل الجدولة الوقائية.
تحدث الجدولة غير الوقائية عندما تدخل العملية طوعًا في حالة الانتظار أو تنتهي.
الجدولة الوقائية مقابل غير الوقائية: جدول المقارنة
فيما يلي مقارنة مباشرة بين الجدولة الوقائية والجدولة غير الوقائية. الاختلافات الرئيسية بين الجدولة الوقائية وغير الوقائية في نظام التشغيل هي كما يلي:
| جدولة وقائية | جدولة غير استباقية |
|---|---|
| يمكن استباق المعالج لتنفيذ العمليات المختلفة في منتصف أي عملية تنفيذ حالية. | وبمجرد أن يبدأ المعالج في تنفيذه، يجب عليه الانتهاء منه قبل تنفيذ الآخر. لا يمكن إيقافه مؤقتًا في المنتصف. |
| يعد استخدام وحدة المعالجة المركزية أكثر كفاءة مقارنة بالجدولة غير الوقائية. | يعد استخدام وحدة المعالجة المركزية أقل كفاءة مقارنة بالجدولة الوقائية. |
| وقت الانتظار والاستجابة للجدولة الوقائية أقل. | وقت الانتظار والاستجابة لطريقة الجدولة غير الوقائية أعلى. |
| يتم إعطاء الأولوية للجدولة الوقائية. العملية ذات الأولوية القصوى هي العملية المستخدمة حاليًا. | عندما تدخل أي عملية في حالة التشغيل، لا يتم حذف حالة تلك العملية من المجدول حتى تنتهي من مهمتها. |
| الجدولة الوقائية مرنة. | الجدولة غير الوقائية صارمة. |
| أمثلة: – أقصر وقت متبقي أولاً، جولة روبن، وما إلى ذلك. | أمثلة: الخدمة بأسبقية الوصول، أقصر مهمة أولاً، جدولة الأولويات، وما إلى ذلك. |
| يمكن استباق خوارزمية الجدولة الوقائية بحيث يمكن جدولة العملية | في عملية الجدولة غير الوقائية لا يمكن جدولتها |
| في هذه العملية، يتم تخصيص وحدة المعالجة المركزية للعمليات لفترة زمنية محددة. | في هذه العملية، يتم تخصيص وحدة المعالجة المركزية للعملية حتى تنتهي أو تتحول إلى حالة الانتظار. |
| تحتوي الخوارزمية الوقائية على عبء تحويل العملية من حالة الاستعداد إلى حالة التشغيل والعكس. | لا تحتوي الجدولة غير الوقائية على مثل هذا العبء لتحويل العملية من التشغيل إلى حالة الاستعداد. |
مزايا التخطيط الوقائي
فيما يلي إيجابيات/فوائد طريقة الجدولة الوقائية:
- تعد طريقة الجدولة الوقائية أكثر قوة، لذا لا يمكن لعملية واحدة احتكار وحدة المعالجة المركزية
- يتم إعادة النظر في اختيار مهمة التشغيل بعد كل مقاطعة.
- يتسبب كل حدث في انقطاع تشغيل المهام
- يتأكد نظام التشغيل من أن استخدام وحدة المعالجة المركزية هو نفسه في جميع العمليات الجارية.
- في هذا، يكون استخدام وحدة المعالجة المركزية هو نفسه، أي أن جميع العمليات قيد التشغيل ستستفيد من وحدة المعالجة المركزية بالتساوي.
- تعمل طريقة الجدولة هذه أيضًا على تحسين متوسط وقت الاستجابة.
- تعد الجدولة الوقائية مفيدة عندما نستخدمها في بيئة البرمجة المتعددة.
مزايا الجدولة غير الوقائية
فيما يلي إيجابيات/فوائد طريقة الجدولة غير الوقائية:
- يقدم جدولة منخفضة النفقات العامة
- يميل إلى تقديم إنتاجية عالية
- إنها طريقة بسيطة للغاية من الناحية النظرية
- Less الموارد الحسابية اللازمة للجدولة
عيوب الجدولة الوقائية
وفيما يلي عيوب الجدولة الاستباقية:
- تحتاج إلى موارد حسابية محدودة للجدولة
- يستغرق المجدول وقتًا أطول لتعليق المهمة قيد التشغيل وتبديل السياق وإرسال المهمة الواردة الجديدة.
- تحتاج العملية ذات الأولوية المنخفضة إلى الانتظار لفترة أطول في حالة وصول بعض العمليات ذات الأولوية العالية بشكل مستمر.
عيوب الجدولة غير الوقائية
فيما يلي سلبيات/عيوب طريقة الجدولة غير الوقائية:
- يمكن أن يؤدي إلى المجاعة خاصة بالنسبة لتلك المهام في الوقت الحقيقي
- يمكن أن تتسبب الأخطاء في تجميد الجهاز
- يمكن أن يجعل في الوقت الحقيقي و جدولة الأولوية صعبة
- ضعف زمن الاستجابة للعمليات
مثال على الجدولة غير الوقائية
في جدولة SJF غير الوقائية، بمجرد تخصيص دورة وحدة المعالجة المركزية للمعالجة، تحتفظ العملية بها حتى تصل إلى حالة الانتظار أو يتم إنهاؤها.
خذ في الاعتبار العمليات الخمس التالية، ولكل منها وقت انفجار ووقت وصول خاص بها.
| قائمة انتظار العملية | وقت الانفجار | وقت الوصول |
|---|---|---|
| P1 | 6 | 2 |
| P2 | 2 | 5 |
| P3 | 8 | 1 |
| P4 | 3 | 0 |
| P5 | 4 | 4 |
الخطوة 0) في الوقت = 0، يصل P4 ويبدأ التنفيذ.
الخطوة 1) في الوقت = 1، تصل العملية P3. لكن P4 لا يزال بحاجة إلى وحدتي تنفيذ لإكماله. وسوف يستمر في التنفيذ.
الخطوة 2) في الوقت = 2، تصل العملية P1 وتتم إضافتها إلى قائمة انتظار الانتظار. سوف يستمر P4 في التنفيذ.
الخطوة 3) في الوقت = 3، ستنتهي العملية P4 من تنفيذها. تتم مقارنة وقت الاندفاع P3 وP1. يتم تنفيذ العملية P1 لأن وقت انفجارها أقل مقارنة بالعملية P3.
الخطوة 4) في الوقت = 4، تصل العملية P5 وتتم إضافتها إلى قائمة انتظار الانتظار. سوف يستمر P1 في التنفيذ.
الخطوة 5) في الوقت = 5، تصل العملية P2 وتتم إضافتها إلى قائمة انتظار الانتظار. سوف يستمر P1 في التنفيذ.
الخطوة 6) في الوقت = 9، ستنتهي العملية P1 من تنفيذها. تتم مقارنة وقت الاندفاع P3 وP5 وP2. يتم تنفيذ العملية P2 لأن وقت انفجارها هو الأقل.
الخطوة 7) في الوقت = 10، يتم تنفيذ P2، ويكون P3 وP5 في قائمة انتظار الانتظار.
الخطوة 8) في الوقت = 11، ستنتهي العملية P2 من تنفيذها. تتم مقارنة وقت الاندفاع P3 وP5. يتم تنفيذ العملية P5 لأن وقت انفجارها أقل.
الخطوة 9) في الوقت = 15، ستنتهي العملية P5 من تنفيذها.
الخطوة 10) في الوقت = 23، ستنتهي العملية P3 من تنفيذها.
الخطوة 11) دعونا نحسب متوسط وقت الانتظار للمثال أعلاه.
Wait time P4= 0-0=0 P1= 3-2=1 P2= 9-5=4 P5= 11-4=7 P3= 15-1=14 Average Waiting Time= 0+1+4+7+14/5 = 26/5 = 5.2
مثال على الجدولة الوقائية
ضع في اعتبارك العمليات الثلاث التالية: جولة روبن
| قائمة انتظار العملية | وقت الانفجار |
|---|---|
| P1 | 4 |
| P2 | 3 |
| P3 | 5 |
الخطوة 1) يبدأ التنفيذ بالعملية P1، التي لها وقت انفجاري 4. هنا، يتم تنفيذ كل عملية لمدة ثانيتين. لا يزال P2 وP2 في قائمة الانتظار.
الخطوة 2:) في الوقت = 2، تتم إضافة P1 إلى نهاية قائمة الانتظار ويبدأ تنفيذ P2
الخطوة 3) في الوقت = 4، يتم استباق P2 وإضافته في نهاية قائمة الانتظار. يبدأ P3 في التنفيذ.
الخطوة 4) في الوقت = 6، يتم استباق P3 وإضافته في نهاية قائمة الانتظار. يبدأ P1 في التنفيذ.
الخطوة 5) في الوقت = 8، يكون لدى P1 وقت انفجار قدره 4. وقد اكتمل التنفيذ. يبدأ P2 التنفيذ
الخطوة 6) P2 لديه وقت انفجار قدره 3. وقد تم تنفيذه بالفعل لمدة فترتين. في الوقت = 2، يكمل P9 التنفيذ. ثم يبدأ P2 في التنفيذ حتى يكتمل.
الخطوة 7) دعونا نحسب متوسط وقت الانتظار للمثال أعلاه.
Wait time P1= 0+ 4= 4 P2= 2+4= 6 P3= 4+3= 7


















