بنية نظام التشغيل

Download Report

Transcript بنية نظام التشغيل

‫نظم تشغيل ‪1‬‬
‫بنية نظام التشغيل‬
‫• مكونات نظام التشغيل‬
‫• خدمات نظام التشغيل‬
‫• استدعاءات النظام‪System Calls‬‬
‫• برامج النظام‬
‫• بنية النظام‬
‫• اآللة االفتراضية‪Virtual Machines‬‬
‫• تصميم وتحقيق النظام‬
‫• توليد النظام‪System Generation‬‬
‫‪2002-2003‬‬
‫‪3.1‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫مكونات نظام التشغيل‬
‫• إدارة اإلجراءات ‪Process Management‬‬
‫• إدارة الذاكرة الرئيسية‪Main Memory Management‬‬
‫• إدارة الخزن الثانوي‪Secondary-Storage Management‬‬
‫• إدارة الدخل‪/‬الخرج‪I/O System Management‬‬
‫• إدارة الملفات‪File Management‬‬
‫• التشبيك‪Networking‬‬
‫• نظام الحماية‪Protection System‬‬
‫• نظام مفسِّر األوامر‪Command-Interpreter System‬‬
‫‪2002-2003‬‬
‫‪3.2‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫مكونات نظام التشغيل‬
‫المستثمرون‬
‫تطبيقات إضافية‬
‫برامج‬
‫النظام‬
‫مفسر‬
‫األوامر‬
‫برامج‬
‫وأدوات‬
‫محمالت برامج‬
‫محررات نصوص‬
‫مترجمات‬
‫مكتبات النظام‬
‫استدعاءات النظام‬
‫إدارة الملفات‬
‫النواة‬
‫إدارة‬
‫اإلجراءات‬
‫إدارة‬
‫الذاكرة‬
‫التشبيك‬
‫إدارة الخزن الثانوي‬
‫إدارة الدخل‪/‬الخرج‬
‫العتاد‪ :‬وحدة المعالجة‪ ،‬الذاكرة‪ ،‬متحكمات الدخل الخرج‬
‫‪2002-2003‬‬
‫‪3.3‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫إدارة اإلجراءات‬
‫‪Process Management‬‬
‫• مفهوم اإلجراء‬
‫– هو برنامج قيد التنفيذ وهو وحدة العمل في النظام التشغيل‬
‫– يحتاج لتنفيذه مجموعة من الموارد‪ :‬وحدة المعالجة‪ ،‬ذاكرة رئيسية‪ ،‬تجهيزات دخل‪ /‬خرج‪،‬‬
‫‪...‬‬
‫ذاكرة حرة‬
‫ذاكرة حرة‬
‫إجراء‬
‫مفسر األوامر‬
‫النواة‬
‫مفسر األوامر‬
‫تنفيذ إجراء في‪MS-DOS‬‬
‫‪2002-2003‬‬
‫ذاكرة حرة‬
‫‪ C‬إجراء‬
‫المفسر‬
‫النواة‬
‫‪3.4‬‬
‫‪ D‬إجراء‬
‫‪ B‬إجراء‬
‫النواة‬
‫تنفيذ إجراء في‪Unix‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫إدارة اإلجراءات‬
‫‪Process Management‬‬
‫• مسؤولية نظام التشغيل‪:‬‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫إنشاء وحذف اإلجراءات‬
‫تعليق‪ ،‬واستئناف اإلجراءات (تبديل السياق)‬
‫توفير آليات تزامن اإلجراءات‬
‫توفير آليات االتصال بين اإلجراءات‬
‫توفير الحماية وآليات كشف ومعالجة المشاكل (اإلقفال المتبادل‪...)،‬‬
‫‪2002-2003‬‬
‫‪3.5‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫إدارة الذاكرة الرئيسية‬
‫‪Main Memory Management‬‬
‫• الذاكرة الرئيسية هي وحدة التخزين الكبيرة الوحيدة التي تستطيع وحدة المعالجة‬
‫عنونتها والنفاذ إليها بشكل مباشر‪.‬‬
‫• تحسين األداء‬
‫وجود عدة برامج في الذاكرة‬
‫مخططات إدارة الذاكرة‬
‫• مسؤولية نظام التشغيل‬
‫– متابعة استخدام الذاكرة لمعرفة أية أجزاء مستخدمة ومن يستخدمها‬
‫– تحديد اإلجراء الذي يجب تحميله إلى الذاكرة عند توفر مساحة‬
‫– تحصيص وإلغاء تحصيص الذاكرة حسب الحاجة‬
‫‪2002-2003‬‬
‫‪3.6‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫إدارة الخزن الثانوي‬
‫‪Secondary-Storage Management‬‬
‫• أهمية الخزن الثانوي‬
‫– خزن ثابت‬
‫– سعة تخزين كبيرة‬
‫• مسؤولية نظام التشغيل‬
‫– إدارة المساحات الحرة‬
‫– تحصيص مناطق الخزن‬
‫– جدولة العمليات على القرص‬
‫‪2002-2003‬‬
‫‪3.7‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫إدارة الدخل‪/‬الخرج‬
‫‪I/O System Management‬‬
‫• مسؤولية نظام التشغيل‬
‫– توفير سواقات خاصة بالتجهيزات العتادية‪.‬‬
‫– إخفاء خصوصية أجهزة الدخل‪/‬الخرج بتوفير واجهات تخاطب عامة لسوَّ اقاتها ‪.‬‬
‫– إدارة الذاكرة المستخدمة في عمليات الدخل‪/‬الخرج (الصِ وان‪ ، Buffer‬الخابية‪، Cache‬‬
‫اإلنظار‪Spool).‬‬
‫‪2002-2003‬‬
‫‪3.8‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫إدارة الملفات‬
‫‪File Management‬‬
‫• مفهوم الملف‪:‬‬
‫– شكل منطقي موحد لخزن المعلومات مستقل عن نوع جهاز الخزن المستخدم‪.‬‬
‫– هو كتلة من المعلومات المترابطة والمعرفة من ِق َبل منشئ الملف ‪.‬‬
‫– يمكن أن يحتوي على سلسلة من الخانات‪ ،‬أو الثمانيات‪ ،‬أو األسطر‪ ،‬أو التسجيالت‪.‬‬
‫• مسؤولية نظام التشغيل‬
‫– إنشاء ومحو الملفات‪ ،‬والمجلدات‬
‫– توفير اإلجرائيات األولية للتعامل مع الملفات والمجلدات (قراءة‪ ،‬كتابة‪ ،‬نقل‪ ،‬حذف‪...)،‬‬
‫– توفير مخطط إسناد الملفات والمجلدات على تجهيزات الخزن الثانوي (إدارة نظام‬
‫الملفات)‬
‫‪2002-2003‬‬
‫‪3.9‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫التشبيك‬
‫‪Networking‬‬
‫• نظام التشغيل الشبكي‪:‬‬
‫– يدعم البرتوكوالت والخدمات الشبكية‬
‫– يوفر مجموعة من األدوات الستثمار موارد الشبكة‬
‫َّ‬
‫الموزع ‪:‬‬
‫• النظام‬
‫– مجموعة من الحواسيب تتصل مع بعضها عن طريق شبكة اتصال‪ ،‬وتعمل عليها مجموعة‬
‫من األنظمة تشكل مجموعها نظاما ً واحداً متكامالً يسمح بالنفاذ إلى الموارد واستخدامها‪.‬‬
‫– الهدف‪ :‬زيادة سرعة المعالجة وزيادة الموثوقية‪.‬‬
‫• مسؤولية نظام التشغيل‬
‫– توفير إجرائيات إنشاء وإنهاء االتصاالت‬
‫– توفير إجرائيات ارسال واستقبال المعلومات عبر الشبكة‬
‫– ضمان أمن المعلومات والنظام من النفاذ غير المشروع عبر الشبكة‬
‫‪2002-2003‬‬
‫‪3.10‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫نظام الحماية‬
‫‪Protection System‬‬
‫• المقصود بنظام الحماية‪:‬‬
‫– مجموعة آليات التحكم في نفاذ البرامج أو اإلجراءات أو المستخدمين إلى موارد النظام‪.‬‬
‫• مسؤولية نظام التشغيل‬
‫– التمييز بين االستخدام المسموح به من االستخدام غير المسموح به‬
‫– تحديد القواعد المفروضة على استخدام الموارد‬
‫– توفير الوسائل لتطبيق القواعد السابقة‬
‫‪2002-2003‬‬
‫‪3.11‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
1 ‫نظم تشغيل‬
‫سر األوامر‬
ِّ ‫نظام مف‬
Command-Interpreter System
‫• مفسر األوامر هو واجهة التخاطب بين المستخدم ونظام التشغيل‬
:‫• الطريقة‬
: control-card interpreter‫– بطاقات تحكم‬
Command-line:‫– سطر األوامر‬
Command.com: DOS 
bash, sh, ksh: Unix 
Graphical Interface:‫– واجهة بيانية‬
Explorer: MS Windows 
CDE: AIX, Solaris 
Gnome, KDE: Linux Redhat 
‫ بنية نظام التشغيل‬: ‫الفصل الثالث‬
3.12
2002-2003
‫نظم تشغيل ‪1‬‬
‫خدمات نظام التشغيل‬
‫يوفر نظام التشغيل بيئة عمل لتنفيذ البرامج ويقدم الوسائل واألدوات الالزمة لـ ‪:‬‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫تحميل وتشغيل البرامج‬
‫إجراء عمليات الدخل‪/‬الخرج‬
‫التعامل مع نظام الملفات (إنشاء‪ ،‬حذف‪ ،‬قراءة‪ ،‬تعديل الملفات‪...) ،‬‬
‫االتصال بين اإلجراءات (المحلية أو البعيدة)‬
‫اكتشاف األخطاء ومنع انتشارها‪ ،‬وإصالحها (أخطاء التجهيزات‪ ،‬أو البرامج)‬
‫تحصيص الموارد لإلجراءات والمستخدمين‬
‫ضمان حماية الموارد الخاصة بالمستخدمين‬
‫إجراء عمليات المحاسبة لتحديد ما هي الموارد التي يستخدمها كل إجراء أو مستخدم‬
‫وكمية االستخدام (بغرض إصدار فواتير أو إحصاءات‪).‬‬
‫‪2002-2003‬‬
‫‪3.13‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫استدعاءات النظام‬
‫‪System Calls‬‬
‫• واجهة تخاطب بين اإلجراء ونظام التشغيل‬
‫• يمكن طلب استدعاء النظام بواسطة تعليمة بلغة المجمِّع أو بلغة عالية المستوى‬
‫• مثال نسخ ملف‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫قراءة اسم الملف األول ثم قراءة اسم الملف الثاني‬
‫فتح الملف األول للقراءة وفتح الملف الثاني للكتابة(مع معالجة األخطاء)‬
‫قراءة محتويات الملف األول وكتابتها إلى الثاني‬
‫إغالق الملفين‬
‫إنهاء البرنامج‬
‫‪2002-2003‬‬
‫‪3.14‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫استدعاءات النظام‬
‫‪System Calls‬‬
‫• نقل الموسطات )‪ (Parameters‬باستخدام‬
‫– السجالت‪،‬‬
‫– المكدس‪، Stack‬‬
‫– كتلة في الذاكرة مع تمرير عنوانها عبر سجل أو عبر المكدس‪.‬‬
‫العنوان‪X:‬‬
‫معامالت‬
‫لالستدعاء‬
‫تحميل العنوان‪X‬‬
‫استدعاء النظام ‪13‬‬
‫برنامج المستثمر‬
‫‪2002-2003‬‬
‫‪3.15‬‬
‫‪X‬‬
‫سجل‬
‫استخدم المعامالت‬
‫من الجدول‪X‬‬
‫ترميز استدعاء النظام ‪13‬‬
‫نظام التشغيل‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
1 ‫نظم تشغيل‬
‫استدعاءات النظام‬
System Calls
• Process control
–
–
–
–
–
–
End, abort
Load, execute
Create process, terminate process
Get process attributes, set process attributes
Wait for a time
Wait event, signal event
• File manipulation
–
–
–
–
Create file, delete file
Open, close
Read, write, reposition
Get file attributes, set file attributes
‫ بنية نظام التشغيل‬: ‫الفصل الثالث‬
3.16
2002-2003
1 ‫نظم تشغيل‬
‫استدعاءات النظام‬
System Calls
• Device manipulation
–
–
–
–
Request device, release device
Read, write, reposition
Get device attributes, set device attributes
Logically attach or detach device
• Information maintenance
–
–
–
–
Get time or date, set time or date
Get system data, set system data
Get process, file, or device attributes
set process, file, or device attributes
‫ بنية نظام التشغيل‬: ‫الفصل الثالث‬
3.17
2002-2003
1 ‫نظم تشغيل‬
‫استدعاءات النظام‬
System Calls
• Communications
–
–
–
–
Create, delete communication connection
Send, receive messages
Transfer status information
Attach or detach remote device
‫ بنية نظام التشغيل‬: ‫الفصل الثالث‬
C‫إجراء‬
C‫إجراء‬
B‫إجراء‬
B‫إجراء‬
‫النواة‬
‫النواة‬
‫تمرير رسائل‬
‫ذاكرة مشتركة‬
3.18
2002-2003
‫نظم تشغيل ‪1‬‬
‫برامج النظام‬
‫• مفسر األوامر‪:‬‬
‫– أوامر داخلية‬
‫– أوامر خارجية (برامج)‬
‫• البرامج‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫معالجة الملفات ‪ :‬إنشاء‪ ،‬محو‪ ،‬نسخ‪ ،‬إعادة تسمية‪ ،‬فهرسة‪.‬‬
‫معلومات الحالة ‪ :‬التاريخ‪ ،‬الوقت‪ ،‬الذاكرة الحرة‪ ،‬عدد المستثمرين‪...،‬‬
‫تعديل الملفات ‪ :‬محررات نصوص‪ ،‬برامج رسم‪...،‬‬
‫دعم لغات برمجة ‪ :‬المترجمات والمجمّعات والمفسرات‪ .‬كانت تقدم عادة هذه البرمجيات‬
‫مع نظام التشغيل‪ ،‬أما حاليا ً فهي تباع مستقلة‪.‬‬
‫تحميل البرامج وتنفيذها ‪ :‬محمالت)‪ ، (loaders‬ومحرّ رات ترابط)‪، (linkage loaders‬‬
‫محررات خاصة بلغات البرمجة )‪(C, Pascal, Basic‬‬
‫االتصاالت ‪ :‬التراسل ونقل الملفات من آلة إلى أخرى والولوج عن بعد)‪(remote login‬‬
‫‪2002-2003‬‬
‫‪3.19‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫برامج النظام‬
‫• برامج مفيدة ‪ :‬مستعرضات الشبكة‪ ،‬معالجات الكلمات ‪ ،‬عارضات الشرائح‪،‬‬
‫نظم قواعد البيانات‪ ،‬حزم التحليل اإلحصائي‪ ،‬األلعاب‪ .‬تسمى هذه البرامج‬
‫نافعات النظام )‪ (system utilities‬أو برامج تطبيقية‪.‬‬
‫‪2002-2003‬‬
‫‪3.20‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫بنية النظام‬
‫• بنية بسيطة‬
‫– مثال‪ :1‬نظام ‪ MSDOS:‬غير مقسم وظيفيا ً على نحو جيد‬
‫برامج تطبيقية‬
‫برامج نظام قاطنة‬
‫‪ MS-DOS‬سواقات تجهيزات‬
‫‪ ROM BIOS‬سواقات تجهيزات‬
‫بنية نظام‪MS-DOS‬‬
‫‪2002-2003‬‬
‫‪3.21‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫بنية النظام‬
‫– مثال‪ : 2‬نظام ‪ Unix:‬مقسم إلى عدد قيل من الطبقات‬
‫المستثمرون‬
‫برامج النظام‪ ،‬مفسرات األوامر‪،‬‬
‫مكتبات النظام الخاصة بالمترجمات ومفسرات األوامر‬
‫واجهة تخاطب استدعاءات النظام للنواة‬
‫جدولة‪CPU‬‬
‫نظام الملفات‬
‫استبدال الصفحة‬
‫نظام تبديل كتل الدخل‪/‬الخرج‬
‫نقل صفحة عند الطلب‬
‫سواقات األقراص واألشرطة‬
‫االفتراضية الذاكرة‬
‫معالج إشارات الطرفيات‬
‫نظام محارف الدخل‪/‬الخرج‬
‫سواقات الطرفيات‬
‫واجهة تخاطب النواة مع العتاد‬
‫العتاد‪ :‬متحكمات الدخل‪/‬الخرج‬
‫‪2002-2003‬‬
‫‪3.22‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫بنية النظام‬
‫• بنية طبقية‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫تقسيم نظام التشغيل إلى طبقات‪ ،‬كل طبقة مبنية فوق الطبقة األدنى منها‬
‫الطبقة الدنيا هي العتاد‪ ،‬والعليا هي واجهة التخاطب مع المستثمر‬
‫مثال‪ ،Venus ،: THE‬النسخة األولى من‪Windows NT‬‬
‫حسنات‪ :‬بنية منهجية منتظمة‪ ،‬سهولة التطوير‪ ،‬سهولة متابعة األخطاء‬
‫سيئات‪ :‬صعوبة التقسيم الوظيفي إلى طبقات‪ ،‬فعالية أقل (تمرير المعامالت عبر الطبقات)‬
‫حاليا‪ :‬التقليل من عدد الطبقات‪ ،‬وزيادة وظائف الطبقة الواحدة‪.‬‬
‫الطبقة‪M‬‬
‫عمليات جديدة‬
‫عمليات مخفية‬
‫‪ M-1‬الطبقة‬
‫بناء طبقة برمجية‬
‫فوق طبقة أدنى منها‬
‫عمليات موجودة‬
‫‪2002-2003‬‬
‫‪3.23‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫اآلالت االفتراضية‬
‫‪Virtual Machines‬‬
‫• نظام تشغيل يسمح بالحصول على واجهة تماثل العتاد السفلي‬
‫– العتاد والنواة هما العتاد االفتراضي لآللة االفتراضية‬
‫– يعطي اإليحاء بوجود عدة معالجات تعمل في وقت واحد‬
‫– يمكن تحقيق عدة آالت افتراضية في آن واحد فوق عتاد واحد‪.‬‬
‫إجراءات‬
‫نواة‬
‫العتاد الصلب‬
‫آلة عادية‬
‫‪2002-2003‬‬
‫‪3.24‬‬
‫إجراءات‬
‫إجراءات‬
‫نواة‬
‫نواة‬
‫إجراءات‬
‫نواة‬
‫آلة افتراضية‬
‫آلة افتراضية‬
‫العتاد الصلب‬
‫العتاد الصلب‬
‫آلة افتراضية‬
‫إجراءات‬
‫نواة‬
‫آلة افتراضية‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫اآلالت االفتراضية‬
‫‪Virtual Machines‬‬
‫• إيجابيات‬
‫– حماية كاملة لموارد النظام‬
‫كل آلة معزولة تماما ً عن اآلالت األخرى‬
‫نواة اآللة االفتراضية تتحكم كليا ً بالوصول إلى الموارد‬
‫– تمثل منصة عمل جيدة من أجل تطوير األنظمة‬
‫– يمكن تحقيق عتاد بمواصفات بحسب الحاجة‬
‫• سلبيات‬
‫– صعوبة التحقيق (محاكاة نمطي المستخدم والمراقب‪...) ،‬‬
‫– فعالية أقل من اآللة العادية (محاكاة لتعليمات اآللة)‬
‫• أمثلة‪:‬‬
‫– آلة جافا االفتراضية‪Java Virtual Machine‬‬
‫– محاكاة معالج ‪ Intel‬على حواسيب‪ ، DEC‬و‪ ،SUN‬و‪Macintosh‬‬
‫‪2002-2003‬‬
‫‪3.25‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫تحقيق النظام‬
‫• كتابة النظام بلغة المجمِّع‬
‫– نظام صغير الحجم‬
‫– سرعة تنفيذ عالية‬
‫• كتابة النظام بلغة عالية المستوى (لغة ‪ C‬كما في‪ ، Unix‬و)‪NT‬‬
‫–‬
‫–‬
‫–‬
‫–‬
‫–‬
‫نظام كبير الحجم‬
‫سرعة تنفيذ أقل‬
‫سهل التطوير‬
‫سهل الفهم والتصحيح‬
‫يمكن نقله إلى آالت جديدة بسهولة أكبر‬
‫• يمكن كتابة األجزاء الحساسة فقط بلغة المجمِّع والباقي بلغة عالية المستوى‬
‫‪2002-2003‬‬
‫‪3.26‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬
‫نظم تشغيل ‪1‬‬
‫توليد النظام‬
‫• يصمم كل نظام تشغيل ليعمل فوق صنف معين من اآلالت‬
‫– البنية العامة متماثلة (متوافقة)‬
‫– اختالف في بعض األجزاء العتادية‬
‫• لتنصيب نظام تشغيل على آلة معينة يجري تحديد جميع أجزاء العتاد الموجود‪،‬‬
‫ثم يجري توليد نظام تشغيل متوافق مع العتاد وفق أحد الطرق التالية‪:‬‬
‫– أما بإعادة إعداد برامج المصدر للنواة بحسب العتاد الموجود وإعادة ترجمة هذه البرامج‪.‬‬
‫– أو تجهيز سواقات وبرمجيات خاصة بكل أنواع العتاد مسبقا ً وانتقاء ما هو متوافق منها‬
‫مع العتاد الموجود فعليا ً‪.‬‬
‫– أو استخدام نظام تشغيل مقاد بالجداول (يجري تحديد نوع العتاد وتحميل السوَّ اقات‬
‫الخاصة به عند التنفيذ‪).‬‬
‫‪2002-2003‬‬
‫‪3.27‬‬
‫الفصل الثالث ‪ :‬بنية نظام التشغيل‬