الفصل التاسع

نظام التشغيل

 

9-1نظام التشغيل
9-2مهام نظام التشغيل
9-3موقع نظام التشغيل في الحاسب
9-4التباين بين قدرات الكيان الآلي للحاسب
9-5 مكونات نظام التشغيل
9-6 تنفيذ مهام نظام التشغيل
9-7اختيار نظام التشغيل
9-8 أساليب المعالجة الالكترونية
9-9 تطورات في نظم تشغيل الحاسبات الشخصية
 
 
 
 
 




بحث مخصص


9-1نظام التشغيل:

 

عبارة عن مجموعة متكاملة من البرامج التي تنتجها شركات الحاسبات بهدف إخضاع الكيان الآلي لتنفيذ برامج المستخدم دون تدخل مباشر في أداء الآلات, وهي نظم ضرورية للحاسبات الكبيرة والصغيرة سواء بسواء.
وتعتبر نظم التشغيل بمثابة الروح للحاسب فدونها يستحيل إجراء أي معالجات أو قيام الكيان الآلي منفردًا بأي عمل ذا فائدة على الإطلاق, وقد يظن بعض الذين لم يسبق لهم التعامل مع الحاسبات أن نظم التشغيل ليست شيئا جوهريا في الحاسبات خاصة من يتعاملون مع حاسبات الجيب الصغيرة الدقيقة , يظنون لا تحتوي على نظم تشغيل , وهذا صحيح إلى حد ما وفق المفاهيم الحديثة لنظم التشغيل لكن داخل الذاكرة
ROM  مسجل بعض البرامج الصغيرة التي تؤدي الوظائف المنوط بها حاسب الجيب .

9-2مهام نظام التشغيل :

 

يتولى نظام التشغيل ما يلي:
1. متابعة ومراقبة الموارد الآلية والبرمجية للنظام.
2. يشرف ويوزع الموارد على المهام .
3.
  
 يتابع تنفيذ البرامج والتنسيق بين الموارد المختلفة.
4.
يستعيد الموارد متى أتم الحاسب تنفيذ المهمة.
5.
تنظيم وتحميل البرامج إلي الحاسب لضمان الاستغلال الأمثل للموارد وضمان الرد السريع على تساؤلات المستخدم.
6.
يفرض سيطرته على معدات الإدخال و الإخراج ويختار منها ما يناسب الإيعاز المحدد في البرنامج.
7.
يحمي البرامج والمعدات والبيانات من التدخل الخاطئ لمستخدم ليس له الصلاحية في التعامل مع البيانات.
8.
   
 يستدعي إلى الذاكرة الأساسية البرامج والروتينات المكلفة بإجراء العمليات الحسابية.
9.
يقدم لمستخدم الحاسب رسائل إرشادية أو إنذارية ويحدد الخطأ.
10.
يرصد أداء الحاسب ويقدم تقريرًا شاملا عن كل الأحداث التي جرت على النظام أثناء فترة معالجة البيانات وتنفيذ البرامج.
11. يتيح الاتصال المباشر بين الحاسب والمستخدم من خلاله أوامر محدد .
12. يعالج المقاطعات.

 

 

9-3موقع نظام التشغيل في الحاسب:

  1.فور تشغيل الحاسب تنتقل برامج نظام التشغيل حوالي 80 %   إلى الذاكرة الأساسية وتبقى بها طالما الحاسب يعمل أما الجزء الباقي فيبقى على الأقراص حتى يستدعي للعمل, ويسمى الجزء المنقول إلى الذاكرة الأساسية البرنامج المنفذ Kernel Executive Supervisor    وهو يمثل برامج السيطرة والقيادة لجميع موارد الحاسب. في حين يسمى هذا الجزء في الحاسبات الصغيرة والمنزلية Monitor وفي نظام دوس يسمى الأوامر الداخلية.

2.يقوم على نقل برامج نظام التشغيل من على الأقراص المغناطيسية إلى الحاسب برنامج صغير يسمى الشاحن المبدئي وذلك في حالة الحاسبات الكبيرة ويسمى Boot Strap   في حاسبات PC.

3.عادة وفي حالة عدم تشغيل الحاسب تتواجد برامج نظم التشغيل على الأقراص المغناطيسية على النحو التالي :

  على الأقراص الصلبة في PC المزود بها.
على مجموعة أقراص في الحاسبات الكبيرة.
على قرص مرن في حاسبات PC الغير مزودة بأقراص صلبة.

فيما يوضحه الشكل9-1 موقع نظام التشغيل في الذاكرة.

أضغط لتكبير الشكل

الشكل 9-1 موقع نظام التشغيل في الذاكرة

9-4التباين بين قدرات الكيان الآلي للحاسب:

  1.مجموعة وحدة المعالجة المركزية  CPU  أو الميكروبروسيسور MPU وهي وحدات بالغة السرعة تقاس بوحدات النانو  ثانية  , ( الثانية تعادل بليون نانو ثانية ) (1 ثانية =1000000000 نانو ثانية ).
2.مجموعة الوحدات الآلية للمدخلات والمخرجات وهي بطيئة السرعة نسبيا ومسئولة عن تغذية الحاسب بالبيانات مثل لوحة المفاتيح ـ قارئ الكروت المثقبة, أو يتم تغذيتها بالحروف مثل الطابعات, وهذه الوحدات تعتبر بطيئة جداً مقارنة بوحدة المعالجة المركزية.
3.أما المجموعة الثالثة فهي وحدات المدخلات والمخرجات السريعة مثل الأقراص المغناطيسية أو الشرائط, ورغم سرعتها الفائقة في الأجهزة الحديثة إلا أنها لازالت بطيئة نسبيا مقارنة بوحدة المعالجة المركزية.
4.جميع الآلات عليها أن تتكامل مع بعضها لتنجز المهام التي ينفذها الحاسب وبالتالي فإن الأبطأ منها هو الذي سوف يتحكم في سرعة المعالجة الإلكترونية.
5.أفضت هذه الأشكال إلى ضرورة عزل الوحدات البطيئة للمدخلات والمخرجات وإعطاء السيطرة عليها إلى حاسبات صغيرة ملحقة بالحاسب الأصلي أطلق عليها مسمى القنوات CHANNEL   فيما يوضحه الشكل 9-2 وتعمل القنوات بأوامر من وحدة المعالجة المركزية مما يتيح للوحدة تنفيذ إيعازات في برامج أخرى لا تتطلب عملا من وحدات المدخلات والمخرجات البطيئة .
6.بهذا الأسلوب زادت سرعة التشغيل وزادت إنتاجية الحاسبات زيادة كبيرة وابتكرت أساليب جديدة في تنفيذ سياسات المعالجة الإلكترونية حققت نجاحا يعتد به لدرجة تنفيذ عديد من المهام تشغيلا متداخلا دون أن يشعر أي مستخدم بأدنى بطئ في سرعة المعالجة.
 

أضغط لتكبير الشكل

 الشكل 9-2 استخدام القنوات في تنظيم أشارات التحكم و السيطرة على الحاسب

 

9-5 مكونات نظام التشغيل :

 

يتكون نظام التشغيل في أبسط صورة من البرامج التالية:
1.البرنامج المشرف Kernel Executive Supervisor :ووظيفته التنسيق الشامل بين مختلف الموارد الآلية والبرمجية والبيانات وهو المسئول عن استدعاء البرامج المطلوبة للتنفيذ ووضعها في محلاتها المحددة داخل الذاكرة الأساسية RAM وهذا البرنامج يتواجد بصفة دائمة في الذاكرة الأساسية طالما الحاسب يعمل , ويشمل:

  مشغل الأوامر Command Processor :
وهذا البرنامج هو المسئول عن ترجمة احتياجات المستخدم (أوامر المستخدم ) إلى إجراءات ينفذها الحاسب من خلال نظام التشغيل, ومن أمثلتها    Delete \Copy \ Format   ويقوم مشغل الأوامر بتحويلها إلى لغة الآلة وإجبار المعدات على التنفيذ.

برامج التحكم في المدخلات  Input Output Control System:
وهي البرامج المسئولة عن التعامل مع معدات المدخلات والمخرجات، فإذا حدد البرنامج المشرف المهمة المطلوب تنفيذها والمسجلة على الأقراص تتولى برامج التحكم في المدخلات والمخرجات إحضارها وإدخالها إلى مواقعها في الذاكرة الأساسية.

برنامج منسق المكتبة  Librarian:
هو برنامج يتولى إعداد فهارس توضح أسماء ومواقع البرامج والبيانات ومتى طلب البرنامج المشرف مهمة يتولى منسق المكتبة تحديد موضعه على أماكن التخزين بعدها تقوم برامج
Input Output Control System  بقراءته إلى الذاكرة الأساسية.

مترجمات اللغات   Compilers:
هي مجموعة برامج يزود بها نظام التشغيل تتولى ترجمة برامج المستخدم إلى لغة الآلة إلى مجرد نبضات كهربية وفق الترميز الثنائي (0\1) قبل أي معالجة . ولكل لغة برمجة مترجم خاص بها .

برامج الربط Link Edit:
هي مجموعة برامج تتولى ربط البرنامج المترجم مع رو تينات صغيرة مثل الجمع والطرح ..الخ مع البرنامج الهدف حتى يؤدي البرنامج الوظيفة المطلوبة منه.
 
برنامج الخدمات Utilities:
هي مجموعة برامج تقدمها شركات الحاسبات بغرض توفير جهد المستخدمين في كتابة برامج فرز Sort البيانات على أحد حقول سجل البيانات, أو برنامج الدمج Merge لدمج بيانات عدة ملفات وبرامج منسق النصوص Text Editor  .

2.لغات نظام التشغيل :
 يستخدم في صياغة التشغيل ثلاث أنواع من اللغات :

  لغة الأوامر Command Language :
وتستخدم هذه اللغة في صياغة الأوامر المناسبة لإجراء الاتصال بين نظام التشغيل ومستخدم الحاسب , ومعظم هذه الأوامر تتطلب إجراء فوري من الحاسب لذلك يتولى تفسيرها برنامج يطلق عليه مفسر الأوامر
Command Interpretor  وطلق عليه Command Processor كما في نظم تشغيل الدوس . والواقع أن معظم هذه الأوامر لا يتعدى سطر يكتبه المستخدم على الشاشة مستخدما لوحة المفاتيح مثل الأمر أطبع ـ ترجم Compile  حمل Load , بينما هناك بعض الأوامر التي تستدعي عدة خطوات في التنفيذ كما في لغة الطبقة العليا Shell في نظام تشغيل يونكس   Unix .

•لغة التحكم
Job Control Lang:
وتستخدم هذه اللغة في تعريف المهام والمعدات وتحديد متطلباتها إلى نظام التشغيل ويستخدم في تنفيذها مفسر خاص .

لغة صياغة برامج نظم التشغيل:
تكتب معظم الإيعازات بلغة التجميع لزيادة كفاءة المعالجات على الحاسب وأحيانا تستخدم لغة سي كما في تشغيل يونكس وأحيانا تكتب بلغة الآلة .

9-6 تنفيذ مهام نظام التشغيل:

  1.التحكم في المدجلات والمخرجات :
ويتم لنظام التشغيل ذلك من خلال مجموعة متكاملة من البرامج منها مخصص لإدارة آلة مدخلات أو مخرجات بذاتها, ويتم تنفيذها تحت إشراف وإرشاد البرنامج المشرف بعد إعطاء الأوامر المناسبة للقناة.

2.معالجة المقاطعات:
هي إحدى وظائف البرنامج المشرف الأساسية، فعندما تحدث مقاطعة
INTERRUPT   ينقل التحكم في الحاسب إلى البرنامج المشرف والذي يحدد بدوره نوع المقاطعة والبرنامج المناسب للتعامل معها.
وتتنوع أنواع المقاطعات إلى الآتي:
 
  عند طلب البرنامج قراءة أو كتابة بيانات.
•في حالة وجود خطأ في العمليات الحسابية.
•عند ظهور أخطاء أو إعطاء ميكانيكية أو عدم دقة
PARITY BIT   رغم أن وحدات تحكم I\O تتولاها.
عند  انتهاء شريحة الزمن لبرنامج بإشارة مقاطعة من الساعة الداخلية .
•مقاطعة نتيجة انقطاع الطاقة الكهربية وهذه المقاطعة لها أعلى أسبقية ممكنة .

•خطأ بشري من عامل التشغيل كالضغط على أحد الأزرار الخاطئة. 

3.معالجة الأخطاء:
وأغلبها أخطاء في البرامج فيما لا يمكن لنظام التشغيل درأها لكن في حالة فقد البيانات نتيجة عدم توافق المقاطعة مع القراءة يتولى نمط (برنامج خاص) معالجة الأمر بإصدار أمر قراءة مرة أخرى.

4.توزيع المعدات على المهام:
قد تطلب عدة مهام نفس وحدات المخرجات (آلات الطباعة) فإن توفرت تولى نظام التشغيل توزيعها على المهام وإن لم تتوفر خزن البيانات على أقراص وإعطائها أسبقية في الطباعة
SPOOLING.

5.حماية الملفات:
وذلك باتخاذ الإجراءات التالية:

  منع الدخول غير القانوني على الملفات.
كتابة الملفات من وقت لآخر على الشرائط المغناطيسية كتخزين احتياطي للبيانات.
يحافظ ويحفظ في جداوله مسميات الملفات ومواقعها على معدات الأقراص.

6.تسجيل:كل نشاط على الملفات والمعدات بإصدار معلومات إلى شاشة Console  عن حالة وحدة المعالجة المركزية وموقف المهام خلال عمليات التنفيذ.

7.الاتصال بمسئول التشغيل:
ضمن مسئولية مختص التشغيل في صالة الحاسبات متابعة الرسائل التي يصدرها نظام التشغيل و الرد عليها أو التصرف حيالها, ويتم الاتصال عادة باستخدام شاشة ووحدة طباعة ملحقة و تسمى المجموعة
Console .
ويصبح من مهام مختص التشغيل القيام بالآتي:

  1.استخدام لغة الأوامر Command Language لتحميل المهام أو أي برمجيات أخرى.
2.استخدام لغة الأوامر في استدعاء روتينات تتبع الأخطاء.
3.استخدام لغة الأوامر لإنهاء عمل أو تعليقه مؤقتاً.

ويصدر نظام التشغيل هذه الأنواع من الرسائل:
 
  أشارة تمام أنجاز عمل أو برنامج.
تقرير عن حالة وحدة المعالجة المركزية.
الأخطاء التي قد تحدث خلال التنفيذ.
رسائل تحذير و تأكيد.

8.تحميل البرامج :
نظراً لمحدودية الذاكرة فأنه يتم نقل البرامج من الأقراص أليها وبالعكس مما يستدعي من نظام التشغيل أخطار مختص التشغيل بإصدار أمر تحميل .

9-7 اختيار نظام التشغيل:

  يتوقف اختيار نظام التشغيل على طبيعة التطبيقات التي تجري على الحاسب و التي تحدد بدورها حجم و نوعية الكيان الآلي وأيضاً نظام التشغيل الملائم, وهنا يجب تحديد ما يلي:
 
 

1. نوعية الكيان الآلي و تصميم الحاسب.
2. التطبيقات المقترح أجراؤها.
3. طريقة الاتصال بالحاسب و نوعية الاتصالات.

9-8 أساليب المعالجة الالكترونية:

  لزيادة كفاءة الحاسب و حسن استغلال موارده الاستغلال الأمثل تطورت أساليب التشغيل و المعالجة الالكترونية تطوراً كبيراً نعرض منها إلى عدة أساليب على النحو التالي:

1.أسلوب الدفعة
: BATCH
و هو أقدم الأساليب بصفة عامة حيث واكب البدايات الأولى للحاسبات و فيه تخصص جميع موارد الحاسب لمهمة واحدة(البرنامج+ البيانات اللازمة) ولا يمكن تنفيذ أي مهمة قبل انتهاء المهمة الجارية،لذلك يطبق في هذا الأسلوب سياسة المهمة التي تأتي أولاً تعالج أولاً.
ويمتاز هذا الأسلوب بالبساطة الشديدة و عدم الحاجة إلى استخدام معدات جديدة أو معدات إضافية كما يستخدم نظام تشغيل بسيط.
ويعيب أسلوب الدفعة اقتصار التشغيل على المهام التي لا يزيد حيزها بوحدة الكيلو بايت عن الحيز الخال من الذاكرة الأساسية بعد تحميل نظام التشغيل. 
و يتلخص أسلوب الدفعة في عدة خطوات هي:
• تجميع البيانات اللازمة على ملف مستقل.
• فرز البيانات بنفس ترتيب الملف الأصلي
Master File
.
• إجراء المعالجة و تحديث الملف الأساسي خلال مر حلة معالجة واحدة.  

و يصلح هذا الأسلوب في إصدار كشوف المرتبات أو أرصدة العملاء في البنوك أو حجم المبيعات من مختلف السلع أو تحديد المخزون السلعي لدى الشركات و ما شابه من أنشطة.

2.أسلوب تعددية البرامج:
يعتبر هذا الأسلوب علاجاً جيداً للقصور الواضح في أسلوب الدفعة خاصة في البرامج التي تعتمد على تدفق كبير من المدخلات و المخرجات، حيث يهدر البرنامج وقت وحدة المعالجة المركزية إهداراً فادحاً في انتظام إتمام الحاسب عمليةI\0
و يعتمد هذا الأسلوب على دفع عدة برامج كل منها في قطاع خاص من الذاكرة فيما يوضحه الشكل 9-3  حيث تتولى وحدة المعالجة المركزية الانتقال بين مختلف البرامج حسب طلبها للمدخلات و المخرجات اعتماداً على أن القنوات Channels يقع عليها عبئ السيطرة على المدخلات و المخرجات.

أضغط لتكبير الشكل

9الشكل -3 تقسيم الذاكرة الرئيسية وفق أسلوب تعددية البرامج


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

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

3.نظام المشاركة الزمنية Time Sharing:
وهي خاصية يمتاز بها بعض أنظمة التشغيل حيث أن الوقت يتم توزيعه بين البرامج المختلفة، وذلك بتقسيمه إلى شرائح زمنية متساوية يعطي كل برنامج فترة زمنية مساوية الشريحة وعند الانتهاء من الشريحة يتم نقل البرنامج من الذاكرة الرئيسية إلى الذاكرة الثانوية وذلك لبدء تنفيذ مهمة (برنامج) أخرى
وهكذا
و يتلخص هذا الأسلوب في أن يخصص الحيز المتاح للذاكرة لمهمة واحدة لفترة محددة بعدها يتم تبديل المهمة Swapping بأخرى و هكذا فيما يوضحه الشكل 9-4.  

أضغط لتكبير الشكل

9الشكل -4 أسلوب التبديل

4.تعددية المعالجة:
و يسمى التشغيل المتوازي و ذلك بتنفيذ مهمة واحدة على عدة وحدات المعالجة مركزية فيما يوضحه الشكل 9-5. 
 

أضغط لتكبير الشكل

9الشكل -5 يوضح تعددية المعالجات

5.نظام الوقت الحقيقي Real Time:
و يتراوح زمن استجابة هذا الأسلوب فيما يبين جزء من الثانية إلى عدة ثواني و قد يطلق عليه أحياناً On-Line و هي مفاهيم تداخلت نظراً للتقدم الهائل في الكيان الآلي للحاسبات و كذلك في الكيان البر مجي إضافة إلى التقدم الكبير في وسائل الاتصالات.                                                                     

6.
نظام المشاركة على الوقت Time Sharing:
ويعتمد هذا الأسلوب على تقسيم وقت وحدة المعالجة المركزية بين عدة مهام بحيث ينتقل التنفيذ من مهمة لأخرى متى انتهت شريحة الوقت المخصص لها.
و يشبه هذا الأسلوب أسلوب تعددية التشغيل و أيضاً له ملامح تعددية البرمجة رغم الاختلاف الجوهري لأن الانتقال في تعددية البرمجة يتم متى طلبت المهمة عملية قراءة أو كتابة في حين تعتبر شريحة الوقت هنا هي العامل الحاسم.


و كلا النظامين الآخرين هما المعنيان بمفهوم  On-Line حيث يتلقى المستخدم النتائج فوراً دون إبطاء. 
 

9-9 تطورات في نظم تشغيل الحاسبات الشخصية:

  نظم تشغيل عربية:
و هو عبارة عن الإصدار العربي لنظام تشغيل MS-DOS و قامت على تطويره شركة "العالمية" بأن وضعت طبقة بينية أخرى بين برامج المستخدم و نواة نظام التشغيل، و تقوم هذه الطبقة بترجمة أمر المستخدم باللغة العربية إلى الأمر المناظر في نظام DOS فيما يوضحه الشكل 9-6.
 

أضغط لتكبير الشكل

9-6 نظام التشغيل العربي



القوقعة Shell (الطبقة العليا) و النوافذ Windows:
هي عبارة عن مستوى علوي من برامج نظام التشغيل تسمى علمياً بيئة نظام التشغيل و أطلق عليها مسمى القوقعة Shell لأنها تحيط بباقي برامج النظام و تسهل عمل المستخدم بإتاحة الأوامر على هيئة نوافذ و رسوم و أشكال مما يعفي المستخدم من كتابة الأوامر وفق النص الحرفي لها خاصةً إذا لم يكن يجيد اللغة الإنجليزية، كما أن النوافذ التي ابتكرتها ميكروسوفت تتيح متابعة تنفيذ البرامج كما تتيح تنفيذ عدة برامج Concurrently مع إتاحة متابعة التنفيذ و المعالجة على الحاسب و دون تدخل من المستخدم، و إمكانية نقل البيانات بين الملفات.

مشهد 9-1 يعرض مجموعة من الصور لأنظمة التشغيل



حول الموقع  الصفحة الرئيسية  المراجع