تفاصيل العمل

مشروع CPU Scheduler Simulator

CPU Scheduler Repository

فكرة المشروع

المشروع عبارة عن Simulator لمحاكاة طريقة عمل الـ CPU Scheduling داخل أنظمة التشغيل.

بمعنى:

إزاي الـ Operating System بيقرر أي Process تشتغل الأول وأي Process تستنى.

وده جزء أساسي جدًا في الـ Operating Systems.

المشكلة اللي المشروع بيحلها

الـ CPU بيكون عنده Processes كتير شغالة في نفس الوقت، والنظام لازم يقرر:

* مين يشتغل الأول؟

* كل Process تاخد وقت قد إيه؟

* إزاي نقلل وقت الانتظار؟

* إزاي نحسن أداء المعالج؟

وده بالضبط دور الـ Scheduler.

فكرة المشروع ببساطة

المستخدم بيدخل:

* Process ID

* Arrival Time

* Burst Time

* Priority (لو موجود)

والمشروع:

* يطبق خوارزمية Scheduling

* يرتب العمليات

* يحسب أوقات التنفيذ

* يعرض النتائج

الخوارزميات المستخدمة

1. FCFS (First Come First Serve)

أول Process توصل تتنفذ الأول.

المميزات:

* بسيط جدًا

العيوب:

* ممكن Process طويلة تعطل الباقي

2. SJF (Shortest Job First)

أقصر Process تتنفذ الأول.

المميزات:

* يقلل Average Waiting Time

العيوب:

* العمليات الطويلة ممكن تستنى كتير

3. Priority Scheduling

كل Process ليها Priority.

الأولوية الأعلى تتنفذ الأول.

4. Round Robin

كل Process تاخد جزء صغير من الوقت (Quantum).

بعدها الدور ينتقل للي بعدها.

ودي مستخدمة فعلًا في أنظمة كتير.

المدخلات (Inputs)

المستخدم بيدخل:

* Arrival Time

* Burst Time

* Priority

* Time Quantum (في RR)

المخرجات (Outputs)

المشروع بيحسب:

* Waiting Time

* Turnaround Time

* Completion Time

* Average Waiting Time

* Average Turnaround Time

الـ Gantt Chart

المشروع غالبًا بيعرض:

* ترتيب تنفيذ الـ Processes

* الزمن اللي كل Process اشتغلت فيه

وده بيساعد في الفهم البصري للـ Scheduling.

التقنيات المستخدمة

غالبًا:

* C++

* Data Structures

* Queues

* Arrays

* Algorithms

الجانب الأكاديمي المهم

المشروع بيشرح Concepts أساسية جدًا:

* Process Management

* CPU Utilization

* Context Switching

* Scheduling Algorithms

* Performance Optimization

المهارات اللي المشروع بيثبتها

* Problem Solving

* Algorithms

* Operating Systems

* Data Structures

* System Logic

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
تاريخ الإضافة
تاريخ الإنجاز
المهارات