Professional Documents
Culture Documents
الموارد (عتاد الحاسوب) ،وبرمجيات الحاسوب ،ويمثل وسيط بين المستخدم ،وعتاد الحاسوب ،وبتعريف آخر يمثل نظام التشغيل
جسر لتشغيل برامج المستخدم ،ويقوم بالمهام األساسية مثل :إدارة وتخصيص مصادر الحاسوب (الذاكرة ،القرص الصلب ،الوصول
لألجهزة الملحقة إلخ ،)...وترتيب أولوية التعامل مع األوامر ،والتحكم في أجهزة اإلدخال ،واإلخراج مثل :لوحة المفاتيح ،وكذلك
لتسهيل التعامل مع الشبكات ،وإدارة الملفات.
الحواسيب الحديثة متعددة األغراض ،هي شاملة للحواسيب الشخصية والحواسيب العمالقة ( ،)Mainframesولها نظام تشغيل ليشغل بقية
البرامج مثل التطبيقات البرمجية .ومن األمثلة على أنظمة تشغيل الحواسيب الشخصية ميكروسوفت ويندوز ،وجنو/لينكس ،وماك أو .آس
و(داروين) ،وماك أو.إس.إكس ويونكس.
والمستوى األدنى من أي نظام تشغيل هو نواته .وهذه هي الطبقة األولى من البرمجيات التي يتم تحميلها في الذاكرة عند إقالع النظام أو بدء
التشغيل .وتوفر النواة إمكانية الوصول إلى الخدمات المركزية الشائعة األخرى لكل برامج النظام والتطبيقات .وهذه الخدمات تشمل(وليس
فقط) :جدولة المهام ،وإدارة الذاكرة ،والوصول للقرص ،والوصول ألجهزة العتاد.
كما هو الحال بالنسبة للنواة ،فإن نظام التشغيل كثيرا ما يزود ببرمجيات نظام إلدارة واجهة المستخدم الرسومية (بالرغم من إدماج ويندوز و
ماكنتوش لهذه البرامج في نظام التشغيل) .وأيضا أدوات لمهام مثل إدارة الملفات وإعداد نظام التشغيل .وفي أحيان كثيرة يوزع مع نظام
التشغيل برمجيات ليست لها عالقة مباشرة بالوظائف األساسية لنظام التشغيل ،ولكن من يوزع نظام التشغيل وجد فائدة في توزيعها معه.
تستخدم أنظمة التشغيل على أغلب الحواسيب ،وليس كلها .فالحواسيب األبسط ذات األنظمة المغروسة األصغر والعديد من الحواسيب المبكرة
بدون نظام تشغيل ،بدال من أنظمة التشغيل فقد اعتمدوا على برامج التطبيقات لتدير العتاد بمعرفتها ،وربما بمساعدة مكتبات صممت لهذا
الغرض.
2
-1المنفرد المستخدم المنفرد المهمة :
أبسط أنواع نظم التشغيل تخدم مستخدما واحدا في الوقت الواحد وهو منفرد المهمة ( )Single-Taskingبمعنى آخر ويمكنه أن ينفذ برنامجا
واحدا فقط في الوقت الواحد ومن األمثلة عليه نظام م س دوس (.)DOS-MS
هذا النظام لديه القدرة على تنفيذ أكثر من برنامج واحد بشكل متزامن ،حيث تنتقل الوحدة المعالجة المركزية ( )CPUبين المهمات بسرعة
كبيرة .و من أمثلتها.Windows95, Windows98 :
يسمح هذا النظام لعدد من األشخاص بتنفيذ كل منهم برنامجا ً واحدا في الوقت نفسه .و يزود كل مستخدم بمحطة إدخال و إخراج تتصل مع
الحاسوب المركزي و يسمى هذا التنظيم بنظام المشاركة الزمنية ( )Timesharingوذلك ألن نظام التشغيل يأمر الحاسوب باالنتقال بسرعة
كبيرة بين المستخدمين بعد إعطائهم فترات زمنية ثابتة الستخدام CPUوتسمى هذه الفترات بالشرائح الزمنية ( )Time Slicesوهي قصيرة
جداً (حوالي ألوف جزئية من الثانية) بحيث يتوهم كل مستخدم أنه يمتلك انتباه الحاسوب كلية ومن امثلته .Windows NT
هو عباره عن نظم التشغيل الحديثة حيث تتيح للمستخدم تشغيل عدة برامج حتى إن كان تعدد المعالجات ( )CPUغير كافية لذلك .تقوم نظم
التشغيل بتوزيع وقت المعالج بين هذه البرامج بحيث يأخذ كل برنامج وقت محدد من المعالج من ثم يقوم بإيقاف مؤقت للبرنامج وإعطاء
برنامج اخر هذا الوقت .هذا يعني ان خالل اللحظة الواحدة برنامج واحد يعمل على المعالج ونظام التشغيل يقوم بالتغيير بسرعة كبيرة جداً
كأجزاء من الثانية .عملية توزيع وقت المعالج تسمى بالجدولة ( )schedulingحيث يحتفظ نظام التشغيل بقائمة من البرامج التي قام المُستخدم
بتشغيلها و تقوم عملية الجدولة بتوزيع وقت لكل برنامج موجود في هذه القائمة ليستفيد من المُعالج في هذا الوقت .
تتمثل الصعوبة الرئيسية للمبرمج في الحفاظ على نظام التشغيل ضمن القيود الزمنية الثابتة لنظام في الوقت الحقيقي ،فعلى سبيل المثال إذا
لم يكمل النظام مهمة في إطار زمني معين ،فقد يتسبب في انهيار النظام بأكمله الذي يعمل عليه ،لذلك عند كتابة نظام تشغيل لنظام الوقت
الحقيقي ،يجب أن يكون المبرمج على يقين من أن مخططات الجدولة الخاصة به ال تسمح بوقت االستجابة لتتجاوز وقت القيد.
3
-1إدارة العمليات:
أي عملية في حاسوب ،سواء كانت خدمة تعمل في الخلفية أو تطبيق ،تجرى داخل عملية .ما دام أسلوب معمارية جون فون نيومان هو المستخدم في
بناء الحاسوب ،فال يمكن تشغيل سوى عملية واحدة لكل و.م.م في كل مرة .أنظمة التشغيل األقدم مثل إم إس-دوس ال تقدم أي محاولة لتجاوز هذه
المحدودية .تستطيع األنظمة الحديثة محاكاة تشغيل أكثر من عملية مرة واحدة (متعددة المهام) على و.م.م واحدة ،في الحقيقة ال يمكن ألكثر من
عملية واحدة أن تنفذ في نفس الوقت في المعالجات أحادية النواة ولكن مع السرعات الهائلة للمعالجات ال يمكننا مالحظة ذلك ،يمكن أن يستخدم ما
يسمى بالتزامن الكاذب عن طريق تقسيم المهام إلى تشعبات .إدارة العمليات هي طريقة نظام التشغيل في التعامل مع العمليات العديدة العاملة .حيث
أن أغلب الحواسيب تحتوى على و.م.م مفردة ذات قلب واحد ،فإن الحصول على تعدد المهام يكون ببساطة عن طريق التحويل بين المهام بسرعة.
ومع زيادة العمليات التي يشغلها المستخدم يصبح نصيب كل عملية من الوقت أقل ،في كثير األنظمة قد يسبب هذا مشاكل مثل تخطى أجزاء من
ملفات الصوت أو حركة مرتعشة لمؤشر الفأرة .تشمل إدارة العمليات الحساب والتوزيع "لألنصبة الزمنية".
-2الشبكات :
أغلب أنظمة التشغيل الحديثة قادرة على استخدام بروتوكول الشبكات العالمي .TCP/IPمما يعنى أن أحد األنظمة يمكن أن يظهر في شبكة نظام
آخر ،ويشاركه المصادر مثل الملفات ،والطابعة ،وماسح الصور.
-3األمن :
األمن من منظور نظام التشغيل يعنى :التحقق من المستخدمين قبل السماح بالوصول ،تصنيف مستوى السماحية بالوصول الذي يملكه المستخدم،
وتحجيم مستوى الوصول تبعا للسياسة التي يحددها مدير النظام.
5
لنظام التشغيل وظائف أساسية في عمل الحاسوب من أهمها :
• تنظيم ملفات المستخدم على العديد من وسائط التخزين ( )Storage Mediaكالقرص الصلب والقرص المضغوط ( .)CDROMكما ويعتمد
كل نظام تشغيل على نظام ملف( )File Systemخاص به ،مثال ،تعتمد معظم أنظمة تشغيل مايكروسوفت ويندوز الجديدة على نظام .NTFS
• تنظيم البرامج المحمَلة على الحاسوب وقطع األجهزة( )Hardwareالمتصلة به ،كالشاشة والطابعة ولوحة المفاتيح...الخ
• معالجة أخطاء قطع األجهزة والبرامج وتفادي خسارة المعلومات.
• المحافظة على سرية النظام وذلك لضمان عدم الوصول غير المسموح به للبيانات والبرمجيات.
• إدارة الذاكرة الرئيسية ووحدات اإلدخال واإلخراج وإدارة وحدة المعالجة ووحدات التخزين الثانوي .
يوفر نظام التشغيل عدداً من الخدمات ،في المستوى األدنى يسمح استدعاء النظام ( )System Callللبرنامج الحالي بإرسال طلب للنظام
التشغيل مباشرة ،وفي المستوى األعلى يقوم مترجم األوامر ( )Command Interpreterأو Shellبتوفير آلية طلب نظام التشغيل
للمستخدم من دون كتابة البرنامج ،من الممكن أن تأتي األوامر من خالل الملفات عن طريق ( )Batch-Mode Executioأو مباشرة من
خالل واجهة النصوص أو واجهة المستخدم الرسومية عندما تكون في الوضع التفاعلي ( )Interactiveأو الوضع المشترك ( Time-
. )Shared Modeيقوم نظام البرامج في تلبية العديد من طلبات المستخدم الشائعة .تعتمد أنواع الطلبات على المستويات ،يجب على
مستوى استدعاء النظام أن يوفر الوظائف األساسية مثل التحكم في العمليات و الملفات و معالجة الجهاز ،فيما أن طلبات المستوى األعلى
مثل مترجم األوامر ( )Command Interpreterو برامج النظام تترجم إلى سلسلة من استدعاءات النظام .
نظام التشغيل كبير ومعقد كنظام تشغيل حديث ويجب أن تتم هندسته بعناية لكي يتم تعديله بسهولة ،تنقسم مكونات نظام التشغيل إلى طبقات
( . )Layersكل طبقة تتفاعل فقط مع الطبقة السفلية التي تتطلب خدمات الطبقة العليا للرد على الطلبات
مثال :
* Applications
* Hardware
تدعم أنظمة التشغيل اآلن الوحدات المحملة ديناميكيًا أثناء التنفيذ و هو آلية يمكن من خاللها لبرنامج الكمبيوتر ،في وقت التشغيل ،تحميل
واسترداد عناوين الوظائف والمتغيرات الموجودة ،وتنفيذ تلك الوظائف أو الوصول إلى تلك المتغيرات .و هيكل نظام التشغيل ينقسم إلى
6
أجزاء مستقلة حيث لها ميزات فردية بسيطة ،ويمكن الحفاظ على التصميم وبتالي يمكن التحكم فيه .يمكن أن يؤثر هيكل نظام التشغيل على
الميزات األساسية مثل المتانة أو الكفاءة.
مايكروسوفت ويندوز ،طور في العام ، Windows 3.1 :1992موجه للمستخدم المنزلي بشكل خاص. •
جنو/لينكس الحر/مفتوح المصدر ،شبيه بيونكس و يستعمل في شتى األغراض ،كما أنه مجاني. •
يونكس .طور في العام ،1969يتمتع بشهرة كبيرة في األوساط األكاديمية لدوره الكبير في تطوير شبكة إنترنت. •
سوالريس :من شركة ،Sunنظام تشغيل شبيه بيونكس موجه للخوادم بشكل عام. •
7