تتكون الحواسيب والأجهزة الحديثة من شطرين أساسيين هما العتاد Hardware والبرمجيات Software، وتقع أنظمةُ التشغيل Operating System في رأس البرمجيات الضرورية لتشغيل الأجهزة الحديثة، إذ يعد نظام التشغيل البرنامج الأساسي الذي يساعد على تثبيت برمجيات فرعية على الجهاز واستخدامها واستخدام العتاد بالشكل المطلوب، فما هي أنظمة التشغيل، وما مكوناتها؟
ما هي أنظمة التشغيل؟
يشير نظام التشغيل إلى الطبقة الفاصلة بين المستخدم وعتاد الجهاز، ويضم نظام التشغيل مجموعة من البرمجيات المستخدمة في إدارة عتاد الجهاز وموارده، من معالج إلى ذاكرة الوصول العشوائي RAM والذاكرة الصلبة HDD وغيرها من العتاد، وكذلك يوفر نظام التشغيل خدمات إضافية للمستخدم، منها تثبيت التطبيقات الرقمية وتشغيلها وإغلاقها وحذفها.
ويعد الهدف الأهم لأنظمة التشغيل هو تسهيل التعامل مع التطبيقات وجعلها جذابة وإضافة واجهة أمامية لها، فبدون نظام تشغيل كانت إدارة التطبيقات ستقتصر على واجهة الأوامر البدائية البسيطة، وبالتالي لم تكن التطبيقات الإلكترونية لتتطور وتمتلئ بالخصائص كما تطورت، ما يجعل أنظمة التشغيل شطرًا أساسيًا من أي تطور تقني حديث.
وليس الهدف الأوحد لأنظمة التشغيل هو تسهيل التعامل مع التطبيقات، وإنما لأنظمة التشغيل وظائف عديدة، فمنها مثلًا إدارة موارد الجهاز، وكذلك يساعد نظام التشغيل على تنظيم ومزامنة العمليات على الجهاز، كما يعمل على تنظيم البيانات، فلا تتداخل بيانات أحد التطبيقات مع بيانات تطبيق آخر فتحدث مشكلات أمنية أو فقدان للبيانات.
تتعدد أنظمة التشغيل وتكثر، ومن أشهر أنظمة تشغيل الحواسيب نظام ويندوز Windows ونظام لينكس Linux ونظام ماك أو إس MacOS لأجهزة أبل، بينما يشتهر بين أنظمة تشغيل الهواتف نظاما تشغيل أندرويد Android وأي أو إس iOS.
ما مكونات نظام التشغيل؟
تتنوع مكونات نظام التشغيل وتختلف من نظام لآخر، لكن تشترك أنظمة التشغيل في مجموعة من المكونات أو البرمجيات التي تؤدي إجراءاتٍ ووظائف محددة، وهي تشمل:
- استدعاءات النظام System Calls
- مدير العمليات Processes Manager
- الإشارات Signals
- مدير الملفات Files Manager
- مدير الشبكات Networks Manager
- مدير الأمن Security Manager
- مدير أجهزة الإدخال والإخراج I\O Devices Manager
- مدير الذاكرة الرئيسية Main Memory Manager
- مدير الذاكرة الثانوية Secondary Memory Manager
- مترجم الأوامر Commands Interpreter
لنشرح كل مكون ووظائفه بمزيدٍ من التفاصيل.
استدعاءات النظام System Calls
يعد نظام التشغيل وسيطًا بين المستخدم وعتاد الجهاز، وكذلك تعد استدعاءات النظام وسيطًا بين برامج المستخدم ونواة نظام التشغيل، فلو كان الوصول من البرمجيات إلى نظام التشغيل مباشرًا دون وسيط لكان اختراق هذا النظام سهلًا يسيرًا.
تدخل استدعاءات النظام في كثيرٍ من عمليات نظام التشغيل، مثل: إدارة الملفات وإدارة العمليات وإدارة الذاكرة الرئيسية والذاكرة الثانوية وإدارة أجهزة الإدخال والإخراج، ما يجعل هذه الاستدعاءات شديدة الأهمية في نظم التشغيل.
مدير العمليات Processes Manager
تشير العملية Process إلى برنامج قيد التنفيذ، وتتكون العملية من عناصر عديدة أهمها بيانات البرنامج وشيفراته، ويجب أن تكون شيفرات البرنامج قابلة للتنفيذ؛ أي لا تحوي أخطاءً برمجية تمنع من تنفيذها.
ويعمل مدير العمليات على إجراء استدعاءات للنظام لإنشاء عملية جديدة أو إنهاء عملية حالية، ويساعد مدير العمليات على مزامنة تنفيذ البرامج المختلفة على الجهاز، حتى لا تتداخل بيانات البرمجيات المختلفة في بعضها بعضًا؛ ما يؤدي إلى حفظ هذه البيانات من التلف، وكذلك يؤدي تنظيم العمليات إلى تقليل احتمالية حدوث خرق أمني نتاج تداخل البرمجيات وبياناتها.
الإشارات Signals
تُستخدم الإشارات لتنبيه المستخدم إلى حدث محدد متعلق بالعملية، سواءً انتهاء العملية بنجاح أو حدث خطأ أثناء تنفيذها، وتعمل الإشارات على تعليق العملية حتى يتخذ المستخدم الإجراء المناسب بناءً على الإشعار الظاهر له.
مدير الملفات Files Manager
يعمل مدير الملفات على تنظيم الملفات على الجهاز، فيُجرِي استدعاءاتٍ للنظام للتحكُّم في الملفات، مثل: استدعاء النظام لإنشاء ملف جديد في مُجلَّد محدد أو استدعاء النظام لقراءة بيانات من ملف أو استدعاء للكتابة في ملف أو استدعاء لحذف ملف.
مدير الشبكات Networks Manager
يوفر مدير الشبكات مجموعة من العمليات والإجراءات التي تساعد على تحديد الوصول إلى الشبكة وتأمينها، كما يساعد مدير الشبكات مسؤولي الشبكات على تحصيل معلومات متقدمة ومتقدمة عن شبكاتهم ومكوناتها، وكذلك يفحص العمليات المتوالية على الشبكة، ما يساعد مسؤولي الشبكات على تطوير الشبكة وتحسينها واختبارها وسد ثغراتها.
مدير الأمن Security Manager
يعد مدير الأمن أحد أهم أجزاء نظام التشغيل، إذ يعمل على تنظيم الوصول إلى جوهر النظام وتحديد الوصول إلى العتاد، فيسمح للبرمجيات الموثوقة بالتحكم في الجهاز والوصول إلى موارده، بينما يمنع البرمجيات الخارجية وغير الموثوقة من الوصول للموارد حتى يأذن لها المستخدم بنفسه.
مدير أجهزة الإدخال والإخراج I\O Devices Manager
يعمل مدير أجهزة الإدخال والإخراج على تنظيم عمليات إدخال البيانات عبر أجهزة الإدخال، مثل: لوحة المفاتيح والفأرة، وكذلك يعمل على تنظيم عمليات عرض البيانات وإخراجها عبر أجهزة الإخراج والتي تتضمن شاشة العرض والطابعة وغيرهما، ويعمل مدير أجهزة الإدخال والإخراج على تنظيم العمليات حسب الأولوية، فمثلًا عندما يضغط المستخدم ضغطتين بالفأرة على أحد التطبيقات لتشغيله؛ يقطع مدير أجهزة الإدخال والإخراج جميع العمليات الأخرى لتنفيذ هذه العملية العاجلة.
مدير الذاكرة الرئيسية Main Memory Manager
تشير الذاكرة الرئيسية إلى الذاكرة العشوائية RAM، وهي ذاكرة مؤقتة تُستخدم لتخزين بيانات البرنامج أثناء تنفيذه، ثم تنتقل هذه البيانات إلى الذاكرة الثانوية أو الدائمة إذا أراد المستخدم أن يحتفظ بها. يعمل مدير الذاكرة الرئيسية على حجز الكمية المناسبة من الذاكرة العشوائية للبرنامج دون تفريط لكيلا تحدث مشكلات بالجهاز، ودون اختزال حتى لا يكون البرنامج المُنفَّذ بطيئًا.
مدير الذاكرة الثانوية Secondary Memory Manager
تشير الذاكرة الثانوية إلى الذاكرة الدائمة أو قرص التخزين الصلب Hard Disk Storage، ويعمل مدير الذاكرة الثانوية على حجز المساحة المناسبة للبرنامج وبياناته على القرص الصلب، وكذلك يعمل على فصل وتنظيم الملفات والبيانات المُخزَّنة فيها حتى لا يحدث تداخل بينها.
مترجم الأوامر Commands Interpreter
تعد واجهة سطر الأوامر إحدى الطرق الكلاسيكية في التعامل مع الأجهزة الإلكترونية ولا سيما الحواسيب، ولا تزال ضرورية لكل مبرمج حتى عصرنا هذا، ويسمح مترجم سطرالأوامر للمستخدم بكتابة أوامر متنوعة، مثل: إنشاء ملف أو نسخ ملف أو حذف ملفات أو قراءة معلومات عن النظام وغيرها، ثم يعمل المترجم على ترجمة أوامر المستخدم إلى لغة الآلة ثم تنفيذها، ويشتهر كل من cmd.exe و PowerShell بين مترجمات أوامر نظام تشغيل ويندوز، في حين يبرز مترجم الأوامر Bash لنظام لينكس، بينما يذيع صيت مترجم الأوامر Terminal لنظام تشغيل ماك أو إس.
ما الفرق بين مكونات نظم التشغيل؟
تتفرع أنواع أنظمة التشغيل، وتختلف مكونات كل نظام تشغيل عن نظيره اختلافًا طفيفًا، ومن أشهر أنظمة التشغيل:
- ويندوز Windows
- لينكس Linux
- ماك أو إس MacOS
- أندرويد Android
- أي أو إس iOS
لنستعرض أبرز المكونات الفريدة لكل نظام تشغيل بمزيد من التفصيل.
ويندوز Windows
يعد ويندوز نظام تشغيل حاسوبي تابع لشركة مايكروسوفت Microsoft، ويتميز بواجهته الرسومية الجذابة وسهلة الاستخدام، ويتكون ويندوز من عدد ضخم من العناصر،ومن أبرزها:
- لوحة التحكم Control Panel: والتي تساعد المستخدم على تخصيص عناصر نظام التشغيل لملائمة احتياجاته.
- أداة Windows Update لتثبيت التحديثات الأمنية
- مركز التحكم Action Center: للتحكم في الشبكات الحاسوبية وأصوات النظام وغيرها.
- مستكشف الملفات والمجلدات File Explorer.
- نافذة أوامر Command Prompt،
- البرمجيات الأساسية لعمل النظام مثل برنامج Svchost.exe لإدارة العمليات ونواة ويندوز Ntoskrnl.exe لإدارة عتاد الجهاز وخدمات نظام التشغيل.
لينكس Linux
يشتهر نظام تشغيل لينكس بشدة بين المبرمجين ومطوري البرمجيات، ويعد نظام تشغيل حاسوبي، ويتميز في إدارة الشبكات وإدارة عتاد الجهاز، ويتكون نظام التشغيل لينكس من خمسة طبقات رئيسية، وهي:
- طبقة العتاد Hardware Layer: مسؤولة عن إدارة مكونات عتاد الحاسوب جميعًا، بدءًا من المعالج، مرورًا بالذاكرة الصلبة والعشوائية، وصولًا إلى أجهزة الإدخال والإخراج.
- النواة kernel: الطبقة الأساسية في نظام تشغيل لينكس، وهي المسؤولة عن بدء العمليات ومزامنتها وتنظيمها وتنفيذها، وتعمل النواة أيضًا على إدارة الموارد والسماح لكل عملية باستهلاك القدر المناسب لها من الموارد.
- القشرة Shell: الفاصل بين المستخدم والنواة، ويوجه المستخدم أوامره للنواة عبر القشرة، ويوجد نوعان من القشرة، أولاهما واجهة المستخدم الرسومية وتتميز بسهولة الاستخدام والجاذبية، والأخرى واجهة الأوامر والتي يكتب فيها المستخدمُ أوامرَه التي يريد من النواة تنفيذها.
- مكتبات النظام System Libraries: مجموعة من الوظائف المُبرمَجَة مسبقًا، والتي تسمح لأي برنامج خارجي بالوصول إلى مميزات النواة، وهي أساس بناء أي تطبيق رقمي موجه لنظام تشغيل لينكس.
- خدمات النظام System Utilities: الوظائف الإدارية بنظام التشغيل، والتي تسمح للمستخدم بإدارة الملفات والشبكات، وإدارة سائر أجزاء نظام التشغيل.
ماك أو إس MacOS
يعد ماك أو إس نظامًا حاسوبيًا لأجهزة أبل Apple، ويتكون من واجهة أمامية سلسة وجذابة وفعالة تُسمَّى أكوا Aqua، ويحظى بتطبيقات مخصصة مطورة بلغات برمجة، مثل: جافا وسويفت، وكذلك يتميز نظام ماك أو إس برسوم Graphics جذابة مبنية على إطاري عمل Quartz وQuickTime ومكتبة OpenGL، وتعد النواة الأساسية لنظام التشغيل ماك أو إس هي داروين Darwin، والذي يعد نظام تشغيل مبني على نظام تشغيل UNIX، ويعد نظام ماك أو إس بالكامل مبنيًا على نظام تشغيل داروين.
أندرويد Android
يعد أندرويد نظام تشغيل للهواتف المحمولة، ويعد مبنيًا على نظام لينكس، ويحوي خمسة مكونات رئيسية، وهي:
- نواة لينكس Linux Kernel: يعد المكون المسؤول عن إدارة عتاد الهاتف بأكمله وإدارة العمليات والشبكات والذاكرة الدائمة والذاكرة العشوائية وغيرها.
- مكتبات المنصة Platform Libraries: تحتوي هذه الطبقة على بعض المكتبات المساعدة على إدارة النظام، مثل: مكتبات لدعم تشغيل الوسائط، ومكتبات لدعم عرض الرسوم، ومكتبات لدعم التخزين في قواعد بيانات مختلفة، وغيرها.
- وقت تشغيل أندرويد Android Runtime: توفر هذه الطبقة بيئة تشغيل تحتوي على الخدمات الضرورية لتشغيل التطبيقات المُثبَّتة على الهاتف.
- أطر عمل التطبيقات Application Frameworks: الطبقة المسؤولة عن إدارة تطبيقات الهاتف، وكذلك تعد مسؤولة عن إدارة الإشعارات وإدارة الواجهة الأمامية للهاتف وأسلوب عرض التطبيقات.
- التطبيقات Applications: تشير إلى التطبيقات المثبتة على الهاتف، سواءً كانت تطبيقات داخلية، مثل: الكاميرا ومتصفح الصور، أو تطبيقات خارجية مثبتة من المتجر، وتعمل التطبيقات في طبقة وقت تشغيل أندرويد بمساعدة الخدمات المُقدَّمة من طبقة أطر عمل التطبيقات.
أي أو إس iOS
يعد أي أو إس نظام تشغيل للأجهزة الجوالة التابعة لشركة أبل، مثل: هاتف أيفون iPhone وأي باد iPad وغيرهما، ويتكون نظام تشغيل أي أو إس من أربعة طبقات رئيسية، وهي:
- نواة نظام التشغيل OS Core: تحوي أطر العمل المسؤولة عن الوظائف الأساسية للنظام، مثل: البلوتوث والأمن والتفويض المحلي.
- الخدمات الأساسية Core Services: تضم أطر العمل المسؤولة عن وظائف أخرى متعددة، مثل: التخزين السحابي وإدارة البيانات.
- الوسائط Media: تعد الطبقة الثالثة من مكونات أي أو إس، وهي المسؤولة عن تشغيل الصور والمقاطع الرسومية،
- طبقة Cocoa Touch: تجعل المستخدم قادرًا على تنفيذ عمليات اللمس والتحريك لاستخدام التطبيقات.
ما مراحل إنشاء مكونات نظام التشغيل؟
تمر مكونات نظام التشغيل على مراحل عديدة قبل تجميعها وإطلاق نظام التشغيل، وهي:
- هيكلة النظام: قبل البدء في تطوير النظام يجب التخطيط له بتحديد الهيكل الأولي له والمميزات التي سيحويها، وتحديد الهدف من تطوير النظام.
- اختيار محمِّل الإقلاع Boot-loader: يعد محمِّل الإقلاع هو الجزء المسؤول عن تشغيل نظام التشغيل بنقله للذاكرة العشوائية للجهاز، ويمكن تطوير محمل إقلاع خاص كما يمكن استخدام محمل إقلاع موجود بالفعل، مثل: محمل الإقلاع GRUB.
- اختيار تصميم النواة: تتعدد تصاميم نواة نظام التشغيل kernel، فمنها مثلًا النويات المتجانسة Monolithic Kernels والتي تتميز بالسرعة والأداء المرتفع وتجعل نظام التشغيل سلسًا، ومنها النويات الصغيرة Micro Kernels والتي تتميز بتجريد أفضل لنظام التشغيل عن عتاد الجهاز.
- تطوير البرمجيات الخدمية: يعمل المطور في هذه المرحلة على تطوير كل برنامج من برامج نظام التشغيل على حدة، فيطور مدير الملفات ويختبره، ويطور مدير الشبكات ويختبره، ويطور بقية البرامج ثم يجمعها معًا في نظام التشغيل.
- اختبار نظام التشغيل: يختبر المطور نظام التشغيل لاستخراج المشكلات الأمنية ومعرفة الثغرات وحلها قبل إصداره.
الخاتمة
تعرفنا في مقال اليوم على مكونات أنظمة التشغيل التي تعد جزءًا أساسيًا من جميع الأجهزة الحديثة القابلة للبرمجة، واستعرضنا بإيجاز المكونات الأساسية لكل نظام تشغيل، ونذكر ختامًا أن هذه الأنظمة في تطورٍ دائمٍ وتحديثاتٍ متوالية، لذا ينبغي أن تحرص على تحديث نظام التشغيل لجهازك باستمرار لتضمن له أداءً مستقرًا وآمنًا.
اقرأ أيضًا
أفضل التعليقات
لا توجد أية تعليقات بعد
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.