نظام التشغيل، كلمة يتداولها محبوا التقنية ويسألون بعضهم عن النظام المفضل لديهم. لكن معظم المتعاملين مع الكمبيوتر لا يعلمون ما هو نظام التشغيل وما هو دوره بالضبط. نتيجة لذلك رأينا في هذا المقال أن نقدم تعريفاً لمصطلح نظام التشغيل وأجزائه ودوره المحوري الذي لا غنى عنه في الكمبيوتر.
المحتويات
ما هو نظام التشغيل؟
من المعروف أن الكمبيوتر يحتوي على معالج بل حتى في بعض الكمبيوترات توجد عدة معالجات مع بعضها. فهل سألت نفسك من ينظم عمل أجزاء الكمبيوتر؟ ومن المسؤول عن تنظيم تخزين الملفات التي تنشئها؟ كيف يتم تنظيم وقت المعالج الواحد بين عدة برامج مفتوحة؟ حسناً، هذه هي جزء من مئات الأعمال التي يقوم بها نظام التشغيل. ونتيجة لذلك فنظام التشغيل في أبسط تعاريفه هو عبارة عن مجموعة من البرامج التي تسهل عمل واستخدام أجهزة الكمبيوتر. وكل من هذه البرامج يختص بإدارة والتعامل مع جزء من أجزاء الكمبيوتر. حيث توجد برامح مسؤولة عن إدارة الذاكرة العشوائية أو الرام. وبرامج أخرى تتعامل مع توريد الأعمال والبرامج إلى المعالج. في حين تتولى برامج أخرى التخزين في القرص الصلب.
برامج النظام والبرامج الخدمية
حتى ندرك الفرق بين برامج النظام والبرامج التي تعمل عليها كمستخدم سنعطي مثالاً بسيطاً. عندما تكتب على برنامج وورد أو تستخدم متصفح الانترنت فأنت تستخدم برمجيات ذات هدف محدد لا تخرج عن إطاره. وهذه البرامج ليست معنية بكيفية عمل الكمبيوتر ولا أين تذهب ملفات الوورد ولا من أين تأتي صفحات الانترنت.
من جهة أخرى تعنى برامج النظام بكيفية وموضع تخزين ملف الوورد الذي تنشئه. فعند النقر على زر الحفظ تعمل برامج إدارة الذاكرة على نقل الملف من الذاكرة إلى القرص الصلب. أما عن المعالج فيجب أن نذكر أنه لا يقوم بتشغيل جميع البرامج في آن معاً. بل يقوم بتخصيص شرائح زمنية لكل برنامج. ونتيجة لذلك توجد خوارزميات برمجية مسؤولة عن تنظيم وقت المعالج وموارده بحسب خوارزميات تتبع هي أيضاً لنظام التشغيل. وفيما يلي سنستعرض أهم برامج النظام وما دور كل منها:
المفسر Compiler
يتعامل مطورو البرمجيات مع المفسر بشكل يومي ودائم. وهو البرنامج المسؤول عن ترجمة البرامج التي يكتبها المبرمج إلى لغة يفهمها الكمبيوتر. بمعى آخر يتم ترجمة البرامج الكتوبة باللغة الانكليزية إلى سلسلة من الواحدات والأصفار. ويلعب المفسر أهم دور في هذا الصدد. وتوجد آلاف المفسرات ولكل منها لغة برمجية تتعامل معها.
مدير الذاكرة memory manager
نتيجة الحاجة إلى المرونة في إدارة الذاكرة لا يتم تخزين جميع أجزاء البرنامج في الذاكرة وفي موضع واحد. كما لا يتم تحميل كافة أجزاء البرنامج في الذاكرة عند فتحه. فمثلاً عندما تقوم بفتح برنامج الوورد الذي لا يقل حجمه عن 1 جيجابايت لا يتم تحميل البرنامج كاملاً من القرص الصلب غلى الذاكرة العشوائية. بل يتم تحميل الأجزاء الأساسية المسؤوله عن تشغيله المبدئي. وبعدها يتم نقل الوظائف والأجزاء التي تطلبها في معرض استخدامك للبرنامج. ومدير الذاكرة هو من يتكفل بهذه الأمور. بالإضافة إلى ذلك يتم تخصيص جزء من الذاكرة للبيانات التي تولدها البرامج بالإضافة إلى الذاكرة التي تشغلها البرامج نفسها. ويعمل مدير الذاكرة على تخصيص حجم الذاكرة المطلوب لكل برنامج.
مدير المعالج Processor Management
معظم الكمبيوترات الحديثة تعتبر متعددة البرامج. بمعنى آخر يجب على نظام التشغيل أن يقرر أي من البرامج التي ستدخل إلى المعالج من الذاكرة وسيتم تنفيذها وما هو الوقت المحدد لذلك. وتدعى هذه العملية جدولة العمليات أو المهام. حيث يقوم نظام التشغيل في هذا الصدد بالعمليات التالية:
- يتتبع نظام التشغيل نشاط المعالج بشكل مستمر وحالة البرامج المفروض أن تعمل عليه. والبرنامج المسؤول عن ذلك يسمى المتحكم بسير البيانات traffic controller.
- تخصيص معالج لكل برنامج في الأجهزة متعددة المعالجات.
- إلغاء تخصيص المعالج عند انتهاء التنفيذ.
مدير الأجهزة Device Management
هل برزت لديك مشكلة ما في عمل الصوت أو الواي فاي ونصحك أحدهم بتنصيب أو تحديث ما يسمى الدرايفرات؟ حسناً هذه الدرايفرات هي جزء من نظام التشغيل ومسؤولة عن التواصل بينه وبين قطع الكمبيوتر المختلفة.
مدير الملفات File Managment
يتم تنظيم ملفاتك على الكمبيوتر وكما هو معروف إلى توزع شجري ومسارات تسهل عليك التنقل بينها واستخدامها. وقد تحتوي هذه المسارات على على ملفات ومسارات أخرى. ويعمل نظام التشغيل في هذا المجال على ضمان ما يلي:
- تتبع المعلومات والملفات وموقعها، الاستخدام والحالة. وكافة هذه الأجزاء تعرف بنظام الملفات.
- تخصيص موارد الكمبيوتر بالشكل المناسب.
- إلغاء تخصيصها بعد انتهاء التنفيذ.
أنواع نظام التشغيل
ظهر نظام التشغيل منذ أجهزة الكمبيوتر الأولى وتتطور أنواعه باستمرار. وفيما يلي سنذكر أهم أنواع انظمة التشغيل:
أنظمة التشغيل الدفعية
يعمل مستخدموا هذا النوع من الانظمة مع مدراء النظام وليس معها مباشرة. حيث يقدم المبرمجون البرامج إلى مدراء النظام ليقوم هؤلاء بفرز وتنظيم البرامج المتشابهو والتي تتشابه في عملياتها ومورادها المطلوبة ويتم تقديمها كدفعة واحدة إلى نظام التشغيل الدفعي.
أنظمة التشارك الزمني
في هذا النوع يتم التواصل مع الكمبيوتر من قبل عدة مستخدمين في آن معاً عبر نقاط وصول متعددة. ويتم تلقيم المعالج عدة مهمات يعمل على التبديل بينها بسرعة ووفق فترات زمنية قصيرة جداً لا تتجاوز أجزاء من الثانية.
أنظمة التشغيل الموزعة
تختص هذه الأنظمة بالأنظمة الحاسوبية الموزعة التي تتألف من عدة معالجات تتواصل فيما بينها عبر عدة خطوط نقل بيانات سريعة أو ريما عبر الانترنت أو خطوط الهاتف. وتختلف هذه المعالجات في حجومها ووظائفها. ومن أهم ميزات نوع نظام التشغيل هذا هو الخدمة السريعة التي تقدمها إلى آلاف المستخدمين وبالزمن الحقيقي تقريباً.