خوارزمية جدولة FCFS: ما هي، برنامج مثال
ما هي طريقة من يأتي أولاً يخدم أولاً؟
First Come First Serve (FCFS) أولاً يأتي أولاً هي خوارزمية جدولة نظام تشغيل تنفذ تلقائيًا الطلبات والعمليات المدرجة في قائمة الانتظار حسب ترتيب وصولها. وهي أسهل وأبسط خوارزمية لجدولة وحدة المعالجة المركزية. في هذا النوع من الخوارزميات، تحصل العمليات التي تطلب وحدة المعالجة المركزية أولاً على تخصيص وحدة المعالجة المركزية أولاً. تتم إدارة ذلك باستخدام قائمة انتظار FIFO. الشكل الكامل لـ FCFS هو First Come First Serve.
عندما تدخل العملية إلى قائمة الانتظار الجاهزة، يتم ربط PCB (كتلة التحكم في العملية) الخاصة بها بذيل قائمة الانتظار، وعندما تصبح وحدة المعالجة المركزية حرة، يجب تعيينها للعملية في بداية قائمة الانتظار.
خصائص طريقة FCFS
- وهو يدعم خوارزمية الجدولة الاستباقية وغير الوقائية.
- يتم تنفيذ المهام دائمًا على أساس أسبقية الحضور.
- إنه سهل التنفيذ والاستخدام.
- هذا الأسلوب رديء الأداء، ووقت الانتظار العام مرتفع جدًا.
مثال على جدولة FCFS
أحد الأمثلة الواقعية لطريقة FCFS هو شراء تذكرة فيلم من شباك التذاكر. في خوارزمية الجدولة هذه، يتم تقديم الخدمة للشخص وفقًا لطريقة الانتظار. الشخص الذي يصل أولاً في قائمة الانتظار يشتري التذكرة أولاً ثم التذكرة التالية. سيستمر هذا حتى يشتري آخر شخص في قائمة الانتظار التذكرة. باستخدام هذه الخوارزمية، تعمل عملية وحدة المعالجة المركزية بطريقة مماثلة.
كيف يعمل فكفس؟ حساب متوسط وقت الانتظار
فيما يلي مثال على خمس عمليات تصل في أوقات مختلفة. كل عملية لها وقت انفجار مختلف.
طريقة عملنا | وقت الانفجار | وقت الوصول |
---|---|---|
P1 | 6 | 2 |
P2 | 2 | 5 |
P3 | 8 | 1 |
P4 | 3 | 0 |
P5 | 4 | 4 |
باستخدام خوارزمية جدولة FCFS، يتم التعامل مع هذه العمليات على النحو التالي.
الخطوة 1) تبدأ العملية بـ P4 الذي لديه وقت وصول 0
الخطوة 2) في الوقت = 1، يصل P3. لا يزال P4 قيد التنفيذ. ومن ثم، يتم الاحتفاظ بـ P3 في قائمة الانتظار.
طريقة عملنا | وقت الانفجار | وقت الوصول |
---|---|---|
P1 | 6 | 2 |
P2 | 2 | 5 |
P3 | 8 | 1 |
P4 | 3 | 0 |
P5 | 4 | 4 |
الخطوة 3) في الوقت = 2، يصل P1 والذي يتم الاحتفاظ به في قائمة الانتظار.
طريقة عملنا | وقت الانفجار | وقت الوصول |
---|---|---|
P1 | 6 | 2 |
P2 | 2 | 5 |
P3 | 8 | 1 |
P4 | 3 | 0 |
P5 | 4 | 4 |
الخطوة 4) في الوقت = 3، تكتمل عملية P4 تنفيذها.
الخطوة 5) في الوقت = 4، يبدأ التنفيذ P3، وهو الأول في قائمة الانتظار.
طريقة عملنا | وقت الانفجار | وقت الوصول |
---|---|---|
P1 | 6 | 2 |
P2 | 2 | 5 |
P3 | 8 | 1 |
P4 | 3 | 0 |
P5 | 4 | 4 |
الخطوة 6) في الوقت = 5، يصل P2، ويتم الاحتفاظ به في قائمة الانتظار.
طريقة عملنا | وقت الانفجار | وقت الوصول |
---|---|---|
P1 | 6 | 2 |
P2 | 2 | 5 |
P3 | 8 | 1 |
P4 | 3 | 0 |
P5 | 4 | 4 |
الخطوة 7) في الوقت 11، يكمل P3 تنفيذه.
الخطوة 8) في الوقت = 11، يبدأ P1 التنفيذ. لديه وقت انفجار قدره 6. ويكمل التنفيذ في الفاصل الزمني 17
الخطوة 9) في الوقت = 17، يبدأ P5 التنفيذ. لديه وقت انفجار قدره 4. ويكتمل التنفيذ في الوقت = 21
الخطوة 10) في الوقت = 21، يبدأ P2 التنفيذ. لديه وقت انفجار قدره 2. ويكمل التنفيذ في الفاصل الزمني 23
الخطوة 11) دعونا نحسب متوسط وقت الانتظار للمثال أعلاه.
Waiting time = Start time - Arrival time
P4 = 0-0 = 0
P3 = 3-1 = 2
بي = 11-2 = 9
ص5= 17-4 = 13
P2= 21-5= 16
متوسط وقت الانتظار
مزايا FCFS
فيما يلي إيجابيات/فوائد استخدام خوارزمية جدولة FCFS:
- أبسط شكل من أشكال أ خوارزمية جدولة وحدة المعالجة المركزية
- سهل البرنامج
- من يأتي اولا، يخدم اولا
عيوب FCFS
فيما يلي سلبيات/عيوب استخدام خوارزمية جدولة FCFS:
- إنها خوارزمية جدولة غير وقائية لوحدة المعالجة المركزية، لذلك بعد تخصيص العملية لوحدة المعالجة المركزية، لن تقوم مطلقًا بتحرير وحدة المعالجة المركزية حتى تنتهي من التنفيذ.
- متوسط وقت الانتظار مرتفع.
- يجب أن تنتظر العمليات القصيرة الموجودة في الجزء الخلفي من قائمة الانتظار حتى تنتهي العملية الطويلة في المقدمة.
- ليست تقنية مثالية لأنظمة تقاسم الوقت.
- بسبب بساطته، FCFS ليست فعالة للغاية.
الملخص
- التعريف: FCFS هي خوارزمية جدولة نظام التشغيل التي تنفذ تلقائيًا الطلبات والعمليات المدرجة في قائمة الانتظار حسب ترتيب وصولها
- وهو يدعم الجدولة غير الوقائية والوقائية
- الخوارزمية.
- يعنيFCFS من يأتي أولاً يخدم أولاً
- أحد الأمثلة الواقعية لطريقة FCFS هو شراء تذكرة فيلم من شباك التذاكر.
- إنه أبسط شكل من أشكال خوارزمية جدولة وحدة المعالجة المركزية
- إنها خوارزمية جدولة غير وقائية لوحدة المعالجة المركزية، لذلك بعد تخصيص العملية لوحدة المعالجة المركزية، لن تقوم مطلقًا بتحرير وحدة المعالجة المركزية حتى تنتهي من التنفيذ.