
مقدمة
مرحباً بك في عالم البرمجة حيث سترى ماذا يحدث معك خلف الكواليس ابتداءً من نظام التشغيل وانتهاءً من واجهة المستخدم
سنستعرض معاً الحقبة التاريخية لأنظمة التشغيل ومراحل تطوره عبر الزمن
تعريف نظام التشغيل (OS) Operating System
نظام التشغيل هو مجموعة من البرامج المسؤولة عن إدارة الموارد المادية للكمبيوتر، مثل الذاكرة والمعالج. كما يوفر نظام التشغيل واجهة مستخدم للمستخدمين، مما يجعل من السهل عليهم استخدام الكمبيوتر.
نظام التشغيل (OS) هو واجهة بين مستخدم الكمبيوتر وأجهزة الكمبيوتر. نظام التشغيل هو برنامج يقوم بجميع المهام الأساسية مثل إدارة الملفات وإدارة الذاكرة وإدارة العمليات والتعامل مع الإدخال والإخراج والتحكم في الأجهزة الطرفية مثل محركات الأقراص والطابعات الخ...
الأغراض الأساسية لنظام التشغيل هي تمكين التطبيقات (software) من التفاعل مع أجهزة الكمبيوتر وإدارة موارد الأجهزة والبرامج الخاصة بالنظام.
تشمل بعض أنظمة التشغيل الشائعة نظام التشغيل Linux، ونظام التشغيل Windows، VMS، OS/400، AIX، z/OS، وما إلى ذلك. واليوم، توجد أنظمة التشغيل تقريبًا في كل جهاز مثل الهواتف المحمولة، أجهزة الكمبيوتر الشخصية، أجهزة الكمبيوتر المركزية، السيارات، التلفزيون وأجهزة العاب الفيديو الخ.
تعريفات آخرى
- نظام التشغيل هو برنامج منخفض المستوى يدعم الوظائف الأساسية للكمبيوتر، مثل جدولة المهام والتحكم في الأجهزة الطرفية.
- نظام التشغيل هو برنامج يعمل كواجهة بين المستخدم وأجهزة الكمبيوتر ويتحكم في تنفيذ جميع أنواع البرامج.
- نظام التشغيل هو برنامج نظام يدير أجهزة الكمبيوتر وموارد البرامج ويوفر خدمات مشتركة لبرامج الكمبيوتر.
الحقبة التاريخية لتطور أنظمة التشغيل عبر الزمن
أجيال أنظمة التشغيل
لقد تطورت أنظمة التشغيل على مر السنين. يمكننا تصنيف هذا التقييم على أساس الأجيال المختلفة التي نلخصها أدناه:
الجيل 0
يستخدم مصطلح الجيل 0 للإشارة إلى فترة تطور الحوسبة عندما اخترع تشارلز بابيج الآلة التحليلية لمعرفة المزيد عن تاريخ الكمبيوتر. وبعد ذلك قام جون أتاناسوف بإنشاء جهاز كمبيوتر في عام 1940. وكانت تكنولوجيا مكونات الأجهزة في هذه الفترة هي الصمام المفرغ أو الصمام الإلكتروني (Vacuum tube). لم يكن هناك نظام تشغيل متاح لهذا الجيل من الكمبيوتر وكانت برامج الكمبيوتر مكتوبة بلغة الآلة (Machine code). كانت أجهزة الكمبيوتر هذه في هذا الجيل غير فعالة وتعتمد على الكفاءات المتنوعة للمبرمج الفردي كمشغلين.
تاريخ أنظمة التشغيل طويل ومعقد، حيث بدأ في الخمسينيات من القرن الماضي مع ظهور الحواسيب المركزية. في ذلك الوقت، كانت أنظمة التشغيل بسيطة للغاية، وكانت تركز فقط على إدارة الموارد المادية للكمبيوتر، مثل الذاكرة والمعالج.
الجيل الأول (1951-1956)
كان الجيل الأول بمثابة بداية الحوسبة التجارية بما في ذلك تقديم UNIVAC I و Eckert-Mauchly في أوائل عام 1951، وبعد ذلك بقليل، IBM 701.
تم تنفيذ تشغيل النظام بمساعدة مشغلين خبراء وبدون الاستفادة من نظام التشغيل لبعض الوقت على الرغم من بدء كتابة البرامج بلغات ذات مستوى أعلى وموجهة نحو الإجراءات، وبالتالي توسع روتين المشغل.
وفي وقت لاحق، تم تطوير نظام تشغيل أحادي البرمجة، مما أدى إلى القضاء على بعض التدخل البشري في إدارة المهام وتزويد المبرمجين بعدد من الوظائف المرغوبة. استمرت هذه الأنظمة في العمل تحت سيطرة المشغل البشري الذي اعتاد اتباع عدد من الخطوات لتنفيذ البرنامج. تم تطوير لغة البرمجة مثل فورتران FORTRAN بواسطة جون دبليو باكوس في عام 1956.
- في الستينيات، بدأت أنظمة التشغيل في التطور، وظهرت أنظمة تشغيل قادرة على تشغيل أكثر من برنامج في نفس الوقت. كما بدأت أنظمة التشغيل في تقديم واجهة مستخدم للمستخدمين، مما جعل من السهل عليهم استخدام الكمبيوتر.
الجيل الثاني (1956-1964)
تميز الجيل الثاني من أجهزة الكمبيوتر بشكل خاص بالترانزستورات لمعرفة المزيد أقرأ هنا. التي حلت محل الصمام المفرغ باعتبارها تكنولوجيا مكونات الأجهزة. تم تطوير أول نظام تشغيل GM-NAA I/O (GM OS) بواسطة كمبيوتر IBM. اعتمد نظام GM OS على نظام معالجة دفعة واحدة، لأنه يجمع كل الوظائف المتشابهة في مجموعات أو دفعات ثم يرسل المهام إلى نظام التشغيل باستخدام بطاقة مثقبة (Punched Card)؛ لإكمال جميع الوظائف في الجهاز. يتم تنظيف نظام التشغيل بعد إكمال مهمة واحدة ثم يستمر في القراءة ويبدأ المهمة التالية في البطاقة المثقبة.
بدأ الباحثون بتجربة البرمجة المتعددة والمعالجة المتعددة في خدماتهم الحاسوبية التي تسمى نظام مشاركة زمنية او نظام مشاركة الوقت (time-sharing). ومن الأمثلة الجديرة بالملاحظة نظام مشاركة الوقت المتوافق (CTSS)، الذي تم تطويره في معهد ماساتشوستس للتكنولوجيا خلال أوائل الستينيات.
- في السبعينيات، ظهرت أنظمة تشغيل أكثر تقدمًا، مثل UNIX و VMS. كانت هذه الأنظمة قادرة على تشغيل برامج متعددة على أجهزة كمبيوتر متعددة، مما أدى إلى ظهور الشبكات.
الجيل الثالث (1964-1979)
بدأ الجيل الثالث رسميًا في أبريل 1964 مع إعلان شركة IBM عن عائلة أجهزة الكمبيوتر System/360 الخاصة بها. بدأت تكنولوجيا الأجهزة في استخدام الدوائر المتكاملة Integrated Circuit (ICs) أو مايسمى بالشريحة الإلكترونية (Chip) التي حققت مزايا كبيرة من حيث السرعة والاقتصاد.
استمر تطوير نظام التشغيل مع إدخال البرمجة المتعددة واعتمادها على نطاق واسع. استمرت فكرة الاستفادة بشكل كامل من إمكانيات الإدخال/الإخراج لقناة بيانات الكمبيوتر في التطور.
التقدم الآخر الذي أدى إلى تطوير أجهزة الكمبيوتر الشخصية في الجيل الرابع هو التطوير الجديد لأجهزة الكمبيوتر الصغيرة باستخدام DEC PDP-1. كان الجيل الثالث وقتًا مثيرًا بالفعل لتطوير أجهزة الكمبيوتر ونظام التشغيل المصاحب لها.
- في الثمانينيات، أصبحت أجهزة الكمبيوتر الشخصية شائعة، وظهرت أنظمة تشغيل جديدة مصممة خصيصًا لهذه الأجهزة. كان نظام التشغيل الأكثر شيوعًا في ذلك الوقت هو DOS، وهو نظام تشغيل نصي قائم على سطر الأوامر.
الجيل الرابع (1979 – حتى الآن)
يتميز الجيل الرابع بظهور الكمبيوتر الشخصي ومحطة العمل. تم استبدال تكنولوجيا مكونات الجيل الثالث بالتكامل واسع النطاق جدًا Very large-scale integration (VLSI). تم تطوير العديد من أنظمة التشغيل التي نستخدمها اليوم مثل Windows, Linux, MacOS وغيرها في الجيل الرابع.
- في التسعينيات، ظهر نظام التشغيل Windows من شركة Microsoft، والذي أصبح النظام التشغيل الأكثر شيوعًا في العالم. كان Windows نظام تشغيل رسومي، مما جعله أكثر سهولة في الاستخدام من DOS.
- في القرن الحادي والعشرين، استمرت أنظمة التشغيل في التطور، وأصبحت أكثر تقدمًا وسهولة في الاستخدام. ظهرت أنظمة تشغيل جديدة مثل Mac OS X و Linux، والتي قدمت للمستخدمين المزيد من الميزات والوظائف. كما أصبحت أنظمة التشغيل أكثر أمانًا واستقرارًا.
بنيان
يمكننا رسم مخطط معماري عام لنظام التشغيل وهو كما يلي:
أنظمة التشغيل ووظائفها سوف نتطرق بالتفصيل في مقالة أخرى بطرق عملها؟
أهم أنظمة التشغيل
فيما يلي قائمة بأهم أنظمة التشغيل في العالم:
- Windows: نظام تشغيل رسومي من شركة Microsoft، وهو النظام التشغيل الأكثر شيوعًا في العالم.
- macOS X: نظام تشغيل رسومي من شركة Apple، وهو النظام التشغيل الافتراضي لأجهزة Mac.
- Linux: نظام تشغيل مفتوح المصدر، وهو نظام تشغيل شائع لأجهزة الكمبيوتر والخوادم.
- Android: نظام تشغيل محمول من شركة Google، وهو النظام التشغيل الأكثر شيوعًا للهواتف الذكية والأجهزة اللوحية.
- iOS: نظام تشغيل محمول من شركة Apple، وهو النظام التشغيل الافتراضي لأجهزة iPhone و iPad.
وظائف نظام التشغيل
تشمل وظائف نظام التشغيل ما يلي:
- إدارة الموارد المادية: يوفر نظام التشغيل آلية للتحكم في الموارد المادية للكمبيوتر، مثل الذاكرة والمعالج ووحدات التخزين.
- إدارة البرامج: يوفر نظام التشغيل آلية لتحميل البرامج وتشغيلها وإدارتها.
- توفير واجهة المستخدم: يوفر نظام التشغيل واجهة مستخدم للمستخدمين، مما يجعل من السهل عليهم استخدام الكمبيوتر.
- توفير خدمات إضافية: يوفر نظام التشغيل خدمات إضافية للمستخدمين، مثل إدارة الملفات والطباعة والأمان.