نظام التشغيل .. ما هي أنظمة تشغيل الحواسيب تعريفها وأنواعها ومبدأ عملها

نظام التشغيل .. ما هي أنظمة تشغيل الحواسيب تعريفها وأنواعها ومبدأ عملها، مقال علمي، ولغته تمكّن الجميع من فهمه ببساطة ودون تعقيد.

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

والجواب الأولي وبكل بساطة هو البرنامج المسؤول عن إدارة عتاد الحاسوب، حيث يوفر أساسيات البرامج التطبيقية ويعمل كوسيط بين المستخدم وعتاد الحاسوب.

ما هو نظام تشغيل الحاسوب (Computer Operating System)

ما هو نظام تشغيل الحاسوب

نظام التشغيل .. إن النظام الحاسوبي ينقسم إلى (4) أربعة مكونات هي :

  • أولًا: العتاد (مكونات الحاسوب المادية Computer hardware components):

ويتألف من وحدة المعالجة (Processing unit) ووحدة الذاكرة (Memory module) وتجهيزات الدخل (Income) والخرج (Output).

  • ثانبًا: البرامج التطبيقية (Application Software):

وتتألف من برامج معالجات النص (Word processors) و(برامج الجدال الالكترونية

Electronic controversy programs) وبرامج (متصفحات الأنترنت Internet browsers).

  • ثالثًا؛ نظام التشغيل (Computer Operating System):

حيث يقوم بمراقبة استخدام مكونات عتاد الحاسوب وتنسيق حل المسائل الحاسوبية التي بقوم المستخدم بحلها.

  • رابعًا: المستخدم (Users).

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

لمحة تاريخية عن تطور نظام التشغيل الحاسوبي:

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

الجيل الأول من الحواسيب The first generation of computers (1945 – 1955):

الجيل الأول من الحواسيب

لقد بدأ ظهور الحواسيب خلال سنوات الأربعينات من القرن الماضي (القرن العشرين Twentieth century) حيث كانت بدائية بشكل كبير وتتألف من أعداد هائلة من الصمامات المفرغة (Electromagnetic valves) ولوحات التوصيل (Connection boards) وكانت ذات حجم يملأ غرفًا عدة ولم تكن يومها قد عرفت لغات البرمجة (programming languages) بعد ولا يوجد نظام تشغيل بعد.

الجيل الثاني من الحواسيب The second generation of computers (1955 – 1965):

الجيل الثاني من الحواسيب نظام التشغيل

لقد تغيرت صورة الحواسيب تغيرًا جذريًا مع ظهور الترانزيستور (Transistor) فأصبحت الحواسيب أصغر حجمًا وذات وثوقية أكثر وأقل أعطالًا، وأصبح هناك تمييزًا بين مصممي الحواسب (Computer designers)، و المنفذين (Executors)، والمشغلين (Operators)، والمبرمجين (Programmers)، وعمال صيانة الحواسيب (Computer maintenance workers).

وكان غلاء التجهيزات في تلك الفترة سببًا لظهور فكرة البرمجة الدفعية (Batch programming) بحيث تقوم الفكرة على تجميع كمية من الأعمال ونقلها إلى أشرطة مغناطيسية (Magnetic tapes) باستخدام حواسب رخيصة التكاليف، ومن ثمّ يتم نقلها إلى الحاسب الرئيسي لتتم معالجتها فيه ودفعة واحدة.

الجيل الثالث من الحواسيب The third generation of computers (1965 – 1980):

الجيل الثالث من الحواسيب

كانت شركات انتاج الحواسيب في نهاية عقد الستينيات تنتج نوعين اثنين من الحواسب النوع الأول: هو الحواسيب (System/360) وهي حواسيب تجارية وصغيرة الحجم نسبيًا، وكان برمجة واستخدام نوعين مختلفين من الأجهزة أمرًا غاية في الصعوبة وذلك بسبب أن معظم الشركات كانت تقوم بإنتاج حواسب صغيرة ومن ثمّ تتوسع إلى حواسب أكبر.

واستطاعت شركة (IBM) أن تقدم حلًا لهذه المعضلة وذلك من خلال تطوير أحد الأجيال الجديدة من الحواسب الذي يسمى (System/360) وكان عبارة عن سلسلة من الحواسب المتوافقة فيما بينها من ناحية البرمجة، وتتدرج من ناحية الحجم من الكبيرة والقوية إلى الحواسب الصغيرة والتجارية.

وبما أن لهذه الحواسب نفس التعليمات فإن البرامج التي تكتب يمكن أن تعمل على جميع أجهزة الحواسيب تلك، وكانت مصممة بالأساس لمعالجة العمليات العلمية إضافة إلى العمليات التجارية.

وقدمت شركة (IBM) فيما بعد سلسلة من الأجهزة المتوافقة مع الجهاز (System/360)، وكان هذا الجهاز هو الجهاز الأول الذي يستخدم دارات متكاملة (IC –  Integrated electronic circuit) وكان ذلك تطورًا هائلًا عن الجيل الثاني من الحواسب التي كانت تستخدم (الترانزيستور Transistor)، وتلك الأجهزة ما تزال مستخدمة إلى الآن ولكن بنسخ أحدث وإليك فيما يلي ميزات هذا الجيل من الحواسب:

  • البرمجة المتعددة (Multiple Programming):

كان المعالج في الجيل السابق وأثناء القيام بعملية ما سواء كانت (دخل أم خرج) كان يبقى خاملًا، حتى اتمام العملية، وحلت هذه المشكلة من قبل البرمجة المتعددة.

  • ترتيب العمليات الطرفية ووضعها في صفوف (أرتال) لتنفيذها تواليًا وهذا ما يسمى ب (Spooling).
  • الاستفادة من الزمن وذلك بتقسيمه لتتم خدمة عدة مجموعات من المستخدمين وبذات الوقت وبشكل تفاعلي فيما بينهم، وهذا ما يعرف يالمشاركة الزمنية (Time sharing).

الجيل الرابع من الحواسيب The fourth generation of computersالحواسب الشخصية Personal computers (1980):

بدأ عصر الحواسب الشخصية مع ظهور دارات التكامل الواسع (LSI) والتي أدت إلى انخفاض أسعار الحواسيب وأصبح بإمكان أي شخص اقتناء حاسوب شخصي، وكانت شركة () تنتج الحواسيب وتسوق نظام التشغيل (CP/M) للمستخدم الأخير، بينما قررت شركت مايكرو سوفت (Microsoft) التي يملكها بيل غيتس (Bill Gates) أن يوزع نظام التشغيل مع الحواسيب بالاتفاق مع الشركات المصنعة للحواسيب، وبالتالي أصبح نظام التشغيل (MS DOS) النظام الأشهر في العالم.

كانت أنظمة التشغيل حتى هذا الوقت تعتمد عل كتابة الأوامر على لوحة المفاتيح (keyboard) لكن الأمر تغيرت بمجر ظهور واجهة المستخدم (GUI) الرسومية، والتي صممت في البداية ضمن شركة (Xerox) على أجهزة (Xerox parc) المتقدمة والمتطورة.

لكن شركة (Apple) استوحت من ذلك النظام فكرة نظام التشغيل (Lisa) الذي لم يلق الرواج بسبب ارتفاع سعره، وأتبعته بابتكار نظام التشغيل (Macintosh) الذي يتميز بسهولة العمل ورخص سعره فحصد نجاحًا منقطع النظير.

تاثرت شركة مايكروسوفت (Microsoft) وبدأت بتطوير نظام ويندوز (Windows) ولم يكن نظام تشغيل حقيقي ولكنه كان عبارة عن طبقة رسومية فوق نظام (MS DOS)، واستمر ذلك حتى عام (1995) حيث أطلقت عليه نظام التشغيل (Windows 95)، وكان يستخدم نظام الإقلاع (DOS) في داخله.

أنواع أنظمة التشغيل:

أنزاع نظام تشغيل

لقد أصبح لدينا طيفًا واسعًا من أنظمة التشغيل المختلفة بعد هذا التطور الذي حدث في عالم الحواسيب، إن بعضًا من هذه الأنظمة يستخدم ومعروف بشكل كبير والبعض الآخر من أنظمة التشغيل غير معروف ولا يستخدم على نطاق واسع غير أننا سنتحدث عن (6) ستة من أنظمة تشغيل الحواسيب المعروفة فقط وسنبدأ:

أولًا: أنظمة تشغيل الأجهزة الحاسوبية الكبيرة (Mainframe):

حجم نظام التشغيل هذا كبير جدًا وتتميز الحواسيب الكبيرة بعدد وافر من منافذ الخرج والدخل يبلغ عددها (7) سبعة منافذ، واهتمام أنظمة التشغيل لهذه الأجهزة الكبيرة عمل عدة مهام في نفس الوقت، وتحتوي على كميات كبيرة من معالجات الدخل والخرج، ومن هذه الأنظمة: نظام التشغيل (OS/390 ) والمطور عن نظام التشغيل (OS /360).

ثانيًا: أنظمة تشغيل المخدمات (Server operating systems):

يعمل نظام التشغيل لهذه الأجهزة والتي يمكن أن تكون مخدمات شخصية كبيرة جدًا أو محطات عمل (Work stations) أو أجهزة كبيرة الحجم وتخدم مجموعة متعددة من المستخدمين بآن واحد على الشبكة، ويتيح الفرصة لتشارك العتاد الحاسوبي والبرمجيات الحاسوبية.

 ومن الأمثلة على أنظمة التشغيل هذه نظام التشغيل (UNIX)، و(Windows 2000)، وأنتج حديثًا النظام (LINUX).

ثالثًا: أنظمة تشغيل المعالجات المتعددة (Multiprocessor):

بداية ماذا نعني بالمعالجات المتعددة؟ بكل بساطة ذلك يعني وصل عدد من المعالجات مع بعضها البعض من أجل الحصول على طاقة معالجة كبيرة، ويسمى هذا النظام بالأنظمة المتفرعة (Branch systems) أو المتوازية (Parallel systems).

وهي بحاجة لأنظمة تشغيل خاصة وفي العادة تكون أنظمة المخدمات مع بعض التعديل عليها لتصبح أنظمة تشغيل الحواسب الشخصية.

ومهمة أنظمة التشغيل هذه محصورة بتقديم واجهة واحدة ولمستخدم واحد ومن الأمثلة المنتشرة والمشهورة نظام التشغيل (Linux) ونظام التشغيل (Windows)، ويوجد منها أنظمة كثيرة ومتعددة غير أنها ليست ذات ربحية تجاريًا.

رابعًا: أنظمة تشغيل الزمن الحقيقي (Real-time operation):

إن الزمن بالنسبة لهذه الأنظمة هو الإهتمام الأول لها، كأنظمة التحكم بالعمليات الصناعية (Industrial Process Control Systems) ويوجد في هذه الأنظمة نقاط حرجة من الواجب الإنتباه الشديد لها وأنظمة الزمن الحقيقي (Real-time operation) نوعان الأول هو الهارد (Hard) والثاني هو السوفت (Soft) ومن هذه الأنظمة نظام التشغيل (QNX) و(vxworks).

خامسًا: أنظمة التشغيل المضمنة (Embedded operating systems):

تتميز هذه الأنظمة بنفس مزايا أنظمة الزمن الحقيقي، غير أن لها قيودًا فيما يتعلق بالحجم، وما تتطلبه الذاكرة والقدرة الحسابية، ومن الأمثلة على هذه الأنظمة نظام التشغيل (Windows CE)، و(Palm Os).

سادسًا: أنظمة تشغيل البطاقات الذكية (Smart Card Operating Systems):

سادسًا أنظمة تشغيل البطاقات الذكية

إن أنظمة التشغيل هذه تعمل على البطاقة الذكية (Smart Card) التي تحتوي على معالج (Processor) ويوضع لها قيودًا بالغة الدقة، أمّا بالنسبة لحجم ذاكرتها والقوة والقدرة الحسابية والبعض من هذه البطاقات تعتمد في عملها على لغة جافا (The language of Java) ومما يعني أن الذاكرة تمتلك مفسرًا لآلة جافا الظاهرية (An interpreter for a virtual Java machin).

بنية أنظمة التشغيل (Structure of operating systems):

الأنظمة الأحادية (Single systems):

يوصف أسلوب البنية الأحادية هذا بالفوضى الكبيرة (Big Mess) بحيث يمكن أن يوصف بعدم وجود نظام التشغيل أساسًا، وهو أي نظام التشغيل يجهز ويكتب بشكل مجموعات من الإجراءات التي بإمكان أي من الإجراءات استدعاء أي إجراء آخر في حال الحاجة إليه.

ولإنتاج هذه البرامج أو كتابتها يجب اتباع أسلوب وصف كل الإجراءات وترجمتها إلى لغة الآلة وربطها معًا ووضعها ضمن (ملف هدف Target file) واحد مستخدمين، وتكوين بنية هذه الأنظمة تكون بسيطة وعلى الشكل التالي:

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

الأنظمة الطبقية (Layers systems):

يكتب ويرتب نظام التشغيل المطلوب بشكل طبقات تتوضع فوق بعضها بشكل هرمي، وميزات هذه الأنظمة أنها تعتمد مبدأ التجزئة في إنجاز الخدمات المطلوبة والذي يتلخص على الشكل التالي:

يتم اختيار الطبقات التي تنفذ الخدمات التي تتيحها الطبقة ذات المستوى الأدنى منها، وبالتالي يتم إنجاز وظيف الأجزاء المادية لمكونات الحاسوب (العتاد الحاسوبي) في المستوى الأول.

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

الآلات الظاهرية (Virtual machines):

بما أن النظام يتكون من عدة طبقات فإن البرامج التي تستخدم في المستوى الثاني  تعتمد على استعمال التعليمات التي تستدعي النظام لكي يتم استعمالها في الطبقات الخارجية من قبل المستخدمين مثل برامج النظام التي أنتجتها شركة (IBM.) التي تستطيع أن تستدعي النظام أو التعليمات للمكونات بنفس الوقت من هنا جاءت فكرة أنظمة الآلات الظاهرية والتي تفترض وجود آلة يستطيع من خلالها المستخدم تنفيذ الخدمات المطلوبة من تنفيذ برامجه.

بمعني أن المستخدمون لديهم آلة افتراضية لتنفيذ برامجهم وكمثال على ذلك نظام التشغيل الذي أنتجته شركة (IBM.) وهو النظام (VM).

أنماط عمل المعالجات إنتل (INTEL):

أولًا: معالجات (8036) ومعالجات (80386):

يسمح هذا المعالج باستخدام عناوين وعنوة واستخدام ذاكرة بحجم (16) ستة عشر خانة ويعتمد على تقنية التقطيع، وهذا المعالج يعمل في الأنماط الحقيقية ويقوم نظام التشغيل بذلك.

إلّا أن هذه المعالجات لا تستطيع أن تؤمن الحماية اللازمة لقطع الذاكرة ولا يمكنه أن يدعم تقنية تعدد المهام بوقت واحد.

تم إنتاج معالجات من النمط (80386) وتعمل نفس طريقة المعالجات (8086) إلا أنها أسرع منها، وأصبحت هذه المعالجات هي المعتمدة من قبل نظام التشغيل المصمم وبإمكانها أن تخدم أكثر من مستخدم بوقت واحد.

مهام نظام التشغيل:

إن لأنظمة التشغيل وظائف ومهام كثيرة متعلقة بعملية تشغيل الحاسب الآلي، والتحكم في المكونات المادية والملحقات التابعة له وبالتالي يمكننا أن نعدد أهم مهمات أنظمة التشغيل بالنقاط التالية:

  • التحكم في مسار البيانات (Control the data path):

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

  • تحميل البرمجيات التطبيقية (Download application software):

تقوم أنظمة التشغيل بتحميل البرامج التطبيقية المختلفة المتواجدة في وسائط التخزين والتي ترتبط بالحاسب، أي نقلها من وسائط التخزين إلى وحدة المعالجة (Processing unit) للبدء في تنفيذها.

  • التحكم في وحدة الذاكرة الرئيسية(Control the main memory module):

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

  • التحكم في وحدات الإخراج والإدخال (Control the output and input units):

يتم التحكم بواسطة لوحة المفاتيح (keyboard) أو الفأرة (Mouse) لعرض المعلومات على الشاشة أو إرسالها إلى الطابعة.

  • الاتصال مع المستخدم (Connect with the user):

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

  • اكتشاف الأعطال (Detecting faults):

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

كيفية عمل أنظمة التشغيل:

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

  • المرحلة الأول:

تتم خلالها قراءة وتنفيذ الأوامر والتعليمات الموجودة في ذاكرة القراءة الثابتة (ROM).

  • المرحلة الثانية:

يقوم النظام بالفحص الشامل لوحدات الحاسب والتأكد من سلامتها.

  • المرحلة الثالثة:

في هذه المرحلة يقوم النظام بتحميل نظام التشغيل من وسائط حفظها سواء كانت الأقراص اللينة (Soft disks) أو الأقراص الضوئية (Optical disks) إلى القرص الثابت (Hard disk).

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

الخاتمة

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

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

قد يهمك أيضًا:

المصادر

شارك المعلومة؛ فالدال على الخير كفاعله