مرجع
آخر الزيارات

نظام تشغيل

4٬584 كلمة•0 مشاهدة•🗒️ منذ 17 يوماً
باختصار: نظام التشغيل ، اختصارًا بالانجليزية OS هو مجموعة من البرمجيات المسؤولة عن إدارة الموارد، والبرمجيات ويمثل وسيط بين المستعمل، وعتاد الحاسوب. تجد هنا «الحاسوب الشبكي»، «الفرق بين الأنظمة المجمعة ومتعدد المعالجات» و«الحاسوب الشخصي» ضمن 40 قسماً.
المحتويات
  1. الحاسوب الشبكي
  2. الفرق بين الأنظمة المجمعة ومتعدد المعالجات
  3. الحاسوب الشخصي
  4. استدعاء نظام التشغيل
  5. التطبيقات
  6. الأنظمة المدمجة
  7. المنفرد المستخدم المتعدد المهام
  8. بعض الأنظمة المتوفرة
  9. الأنظمة الموزعة
  10. حوسبة الزمن الحقيقي
  11. إم إس - دوس
  12. الأمن
  13. المقاطعة ضد الفخ
  14. العقبات الاقتصادية للذاكرة المخبئية
  15. ايجابيات وسلبيات المعالجة المتعددة المتماثلة
  16. المتعدد المستخدمين المنفرد المهمة
  17. مشغلات العتاد
  18. إدارة العمليات
  19. هيكل نظام التشغيل
  20. معالجة النظام
  21. المنفرد المستخدم المنفرد المهمة
  22. الصعوبات
  23. واجهة سطر الأوامر
  24. سلبيات المصادر المفتوحة
  25. القرص وأنظمة الملفات
  26. الاقتصاد الكلي: تتشارك في استخدام الذاكرة والمحيط
  27. المصادر المفتوحة
  28. * Hardware
  29. واجهة التطبيقات
  30. الوظائف الأساسية
  31. مقدمة
  32. المعالجة المتعددة
  33. تصميم نظام التشغيل
  34. أنواع نظم التشغيل
  35. المتعددة المستخدمين المتعددة المهام
  36. تمكن المستخدم من الوصول لخدمات النواة
  37. إيجابيات المصادر المفتوحة
  38. واجهة المستخدم
  39. استدعاءات النظام
  40. الشبكات
نظام تشغيل

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

الحاسوب الشبكي

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

من جهة ثانية، تبادل البيانات والموارد: يمكن مشاركة البيانات مثل الملفات والمستندات والبرامج التطبيقية ومقاطع الفيديو ومعلومات ضمن الشبكات المتصلة.

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

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

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

إيجابيات الحاسوب الشبكي:

الفرق بين الأنظمة المجمعة ومتعدد المعالجات

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

إضافةً إلى ذلك، تحديث البيانات: إذا تم تحديث البيانات في مخزنها الأصلي يجب كذلك تحديثها في الذاكرة المخبئية.

وفي هذا السياق، ما المطلوب لجهازين تابعين للأنظمة المجمعة لتوفير خدمة عالية التوفر ؟

ذاكرة الكاش أو الذاكرة المخبئية (Cache Memory)

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

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

الحاسوب الشخصي

وفي السياق ذاته، حاسوب شخصي (بالإنجليزية: Personal Computer) هو نظام الاكتفاء الذاتي الغير متصل بأي كمبيوتر آخر يمكن استخدامه من قبل مستعمل واحد. الحاسوب الشخصي قادر على توفير جميع الوظائف اللازمة ويستعمل لأغراض عامة ويكون حجمه وقدراته مناسبين للاستخدام الشخصي. وهو نظام مستقل لا يعتمد على الجهاز المركزي.

استدعاء نظام التشغيل

وعلى صعيد آخر، يوفر نظام التشغيل عدداً من الخدمات، في المستوى الأدنى  يسمح استدعاء  النظام (System Call)  للبرنامج الحالي بإرسال طلب للنظام التشغيل مباشرة، وفي المستوى الأعلى يقوم مترجم الأوامر (Command Interpreter) أو Shell  بتوفير آلية طلب نظام التشغيل للمستعمل من دون كتابة البرنامج، من الممكن أن تأتي الأوامر من خلال الملفات عن طريق  (Batch-Mode مخصصة) أو مباشرة من خلال واجهة النصوص أو واجهة المستعمل الرسومية عندما تكون في الوضع التفاعلي (Interactive) أو الوضع المشترك (Time-Shared Mode). يقوم نظام البرامج في تلبية الكثير من طلبات المستعمل الشائعة .

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

التطبيقات

من جهة ثانية، يجب أن يتضمن نظام التشغيل بعض التطبيقات مثل متصفحات الويب وبرامج البريد الإلكتروني، حيث يمكن أن يوفر اقتران متصفح الويب (أو أي تطبيق آخر) مع نظام التشغيل مزايا أداء معين، مثلًا لان متصفح الإنترنت (Internet Explorer) مقترناً بنظام التشغيل (Windows)، فإنه يتم تخزينها مؤقتًا بينما يقوم Windows بالتمهيد لأعلى مما يجعل تحميل البرنامج أسرع، وهذا يعارض FireFox والذي لا يتم تخزينه مؤقتًا (بشكل افتراضي) بواسطة Linux ، ولذلك يتم تحميله ببطء في كل مرة يتم فيها استدعاؤه، ولكن يجب أن تكون محدودة الحجم؛ لكي لا تأثر على سرعة النظام.

الأنظمة المدمجة

وفي هذا السياق، تعني ارتباط شي بشيء آخر، وهذا النظام صمم خصيصًا للقيام بمهمة محددة أو عدد من المهمات المحددة، أي أنه مصمم لأغراض محددة، وهو المتحكم أو المعالج القائم على النظام الذي تم تصميمه ليؤدي مهمة محددة أو عدة مهمات محددة.مثلًا: إنذار الحريق هو نظام مدمج، والآلات الصناعية، والأجهزة الزراعية والمعدات الطبية والكاميرات والأجهزة المنزلية، فضلًا عن الأجهزة النقالة (المحمول)، وأيضًا أجهزة الراوتر (Routers) وأمثلة على الأنظمة المدمجة في منتج أكبر وهو الحاسوب (Computer) الـ DVD Player وكارت الـ LAN.والأنظمة المدمجة بعضها يحتوي على واجهة مستعمل (UI) وآخر لا.. مثلًا الأجهزة التي صممت لأداء مهمة واحدة لا تحتوي على واجهة مستعمل في كثير من الأحيان، والأخرى الأكثر تعقيدًا والتي صممت لأداء عدد أكبر من المهمات مثل الأجهزة النقالة (المحمول) صممت بواجهة مستعمل رسومية (GUI).يحتوي النظام المدمج على ثلاث مكونات أساسية هي الجزء المادي (Hardware) وتطبيقات برمجية (Application Software) و RTOS وهو اختصار لـ Real Time Operating system.

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

المنفرد المستخدم المتعدد المهام

من جانب آخر، هذا النظام لديه القدرة على تنفيذ أكثر من برنامج واحد بشكل متزامن، حيث تنتقل الوحدة المعالجة المركزية (CPU) بين المهمات بسرعة كبيرة. ومن أمثلتها: windows,linux,macOS.

بعض الأنظمة المتوفرة

في هذا الإطار، جنو/لينكس الحر/مفتوح المصدر، شبيه بيونكس ويستعمل في شتى الأغراض، كما أنه مجاني.

إضافةً إلى ذلك، مايكروسوفت ويندوز، طور في العام 1992: Windows 3.1، موجه للمستعمل المنزلي خصوصًا.

وفي هذا الصدد، يونكس. طور في العام 1969، يتمتع بشهرة كبيرة في الأوساط الأكاديمية لدوره الكبير في تطوير شبكة إنترنت.

في هذا الإطار، رياكت أو إس نظام تشغيل حر مفتوح المصدر متوافق مع نظام ويندوز.

ماك أو إس من شركة أبل، تم إصداره في العام 1999.

الأنظمة الموزعة

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

الخدمات

حوسبة الزمن الحقيقي

في هذا الإطار، حوسبة الزمن الحقيقي هي دراسة للعتاد والبرامج التي  تكون لها قيود في الزمن الحقيقي بمعنى أن النظام لا بد أن يضمن معالجة الأحداث أو البيانات في وقت محدد، على عكس الأنظمة الأخرى حيث لا تكون هناك قيود على مدة الاستجابة على الرغم أنه كلما كانت أسرع استجابة كلما كانت أفضل، ويُلَبَّى الطلب على برامج الوقت الحقيقي بواسطة أنظمة تشغيل الوقت الحقيقي (مثل VxWork، و Windows CE، و RTLinux) ولغات البرمجة المتزامنة (مثل Averest و ChucK و SyncCharts).

إم إس - دوس

وعلى صعيد آخر، أنظمة BSD، مجموعة أنظمة شبيهة بيونكس ظهرت عام 1979، منها فري بي اس دي، اوبن بي اس دي و نت بي اس دي

وفي هذا السياق، أو إس/2 المطور من قبل اي بي ام، أنهت اي بي ام دعمها رسميا عام 2006، حتى صارت الآن مرخصة تحت الإسم "أركا او اس"

وعلى صعيد آخر، سولاريس: من شركة Sun، نظام تشغيل شبيه بيونكس موجه للخوادم عمومًا.

في هذا الإطار، أنظمة أخرى مستقلة لا علاقة لها بلينكس أو يونكس مثل هايكو، سيرينيتي او اس و فيزوبسيس

الأمن

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

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

وفي هذا السياق، تمييز بين وضع النواة ووضع المستعمل كشكل أولي من نظام الحماية الأمن .

المقاطعة ضد الفخ

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

1- ماهو الهدف من المقاطعة:

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

كذلك، يمكن استخدام مقاطعة للإشارة إلى إكمال المدخلات/المخرجات  لتجنب الحاجة إلى اقتراع الجهاز.

المقاطعة:

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

2-كيف تختلف المقاطعة عن الفخ:

العقبات الاقتصادية للذاكرة المخبئية

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

ايجابيات وسلبيات المعالجة المتعددة المتماثلة

زيادة الإنتاجية: زيادة عدد المعالجات.

ايجابيات :

المتعدد المستخدمين المنفرد المهمة

كذلك، يسمح هذا النظام لعدد من الأشخاص بتنفيذ كل منهم برنامجاً واحداّ في الوقت نفسه. ويزود كل مستعمل بمحطة إدخال وإخراج تتصل مع الحاسوب المركزي ويسمى هذا التنظيم بنظام المشاركة الزمنية (Timesharing) وذلك لأن نظام التشغيل يأمر الحاسوب بالانتقال بسرعة كبيرة بين المستعملين بعد إعطائهم فترات زمنية ثابتة لاستخدام CPU وتسمى هذه الفترات بالشرائح الزمنية (Time Slices) وهي قصيرة جداً (قرابة ألوف جزئية من الثانية) بحيث يتوهم كل مستعمل أنه يمتلك انتباه الحاسوب كلية ومن امثلته Windows NT.

مشغلات العتاد

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

إدارة العمليات

وفي السياق ذاته، أي عملية في حاسوب، سواء كانت خدمة تعمل في الخلفية أو تطبيق، تجرى داخل عملية. ما دام أسلوب معمارية جون فون نيومان هو المستعمل في بناء الحاسوب، فلا يمكن تشغيل سوى عملية واحدة لكل و.م.م في كل مرة. أنظمة التشغيل الأقدم مثل إم إس-دوس لا تقدم أي محاولة لتجاوز هذه المحدودية. تستطيع الأنظمة الحديثة محاكاة تشغيل أكثر من عملية مرة واحدة (متعددة المهام) على و.م.م واحدة، في الحقيقة لا يمكن لأكثر من عملية واحدة أن تنفذ في نفس الوقت في المعالجات أحادية النواة ولكن مع السرعات الهائلة للمعالجات لا يمكننا ملاحظة ذلك، يمكن أن يستعمل ما يسمى بالتزامن الكاذب عن طريق تقسيم المهام إلى تشعبات. إدارة العمليات هي طريقة نظام التشغيل في التعامل مع العمليات العديدة العاملة. حيث أن أغلب الحواسيب تحتوى على و.م.م مفردة ذات قلب واحد، فإن الحصول على تعدد المهام يكون ببساطة عن طريق التحويل بين المهام بسرعة. ومع زيادة العمليات التي يشغلها المستعمل يصبح نصيب كل عملية من الوقت أقل، في كثير الأنظمة قد يسبب هذا مشاكل مثل تخطى أجزاء من ملفات الصوت أو حركة مرتعشة لمؤشر الفأرة. تشمل إدارة العمليات الحساب والتوزيع «للأنصبة الزمنية».

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

  • مثال:
  • - طبقة المستوى الأعلى
  • * Applications
  • -أدنى مستوى الطبقة

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

معالجة النظام

كذلك، ولبدء نظام التشغيل في الحاسب آلي يجب على وحدة المعالجة المركزية تهيئة وبدء تنفيذ التمهيد (Bootstrap), والتمهيد يستطيع تنفيذ نظام التشغيل مباشرة إذا كان نظام التشغيل في البرامج الثابتة أو يكمل عملية تحميل البرنامج الأكثر ذكاءً من البرامج الثابتة حتى يتم تحميل نظام التشغيل نفسه في الذاكرة ويتم تنفيذه.

كذلك، عند حدوث خطأ في النواة تعمل النواة (Kernel) وعملية المعالجة معاً. ويتم استخدام أدوات المعالجة وأدوات أخرى لحل هذا الخطأ مثل أداة (DTrace): تقوم هذه الأداة بالكشف عن المأزق أو الخطأ الموجود وفهم سلوك النظام الآخر.

المنفرد المستخدم المنفرد المهمة

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

الصعوبات

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

واجهة سطر الأوامر

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

في هذا الإطار، واجه سطر الأوامر والمعروفة باسم (Command Line Interface “CLI ”) أو مترجم الأوامر وهي التي تسمح للمستعمل بإدخال الأوامر مباشرة ليتم تنفيذها بواسطة نظام تشغيل، وفي بعض الأحيان يتم تطبيق واجه سطر الأوامر في النواة (Kernel)، واحيانًا بواسطة برمجيات النظام.

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

سلبيات المصادر المفتوحة

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

ومن جهة أخرى، الخصوم والضمانات: عادةً ما يحتوي ترخيص برنامج المصدر المفتوح العادي على ضمان محدود فقط دون أي التزامات.

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

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

القرص وأنظمة الملفات

من جهة ثانية، أنظمة ملفات ويندوز المزودة بقيد الحوادث هي NTFS فقط، في حين أن كل أنظمة ملفات لينكس هي مزودة بقيد الحوادث ماعدا ext2.

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

وفي هذا السياق، لدى الكثير من أنظمة التشغيل الكثير من أنظمة الملفات التي يمكن استخدامها بشكل طبيعي، جنو/لينكس لديه أكبر تنوع من أنظمة الملفات هذه، وهي إكس تي 2، إكس تي 3، ريسير أف أس، Reiser4، GFS، GFS2، OCFS، OCFS2، NILFS. كما يدعم جنو/لينكس كذلك أنظمة ملفات إكس إف إس وجي أف أس بشكل كامل. مع دعم لنظام ملفات جدول توزيع الملف FAT وإن تي إف إس. أما ويندوز فمحدود من ناحية دعمه لأنظمة الملفات حيث يدعم فقط: FAT12 وFAT16 وFAT32 وإن تي إف إس.

ومن جهة أخرى، بالنسبة لأغلب أنظمة الملفات التي ذكرناها هناك طريقتان لتخصيصها. فالنظام هو إما أن يكون نظام الملفات المزود بقيد حوادث (Journaling File System)، أيْ مزود بقيد للحوادث (journal) وإما غير مزود به. يعتبر النظام المزود بقيد الحوادث (Journaling File System) خياراً آمناً في حالات تعافي النظام. لو حدث أن توقف النظام عن العمل فجأة (في حالة انقطاع الكهرباء مثلا) فإن نظام الملفات غير المزود بقيد للحوادث سيحتاج إلى نوع من الفحص في حين يحدث هذا تلقائيا في أنظمة الملفات المزودة بقيد الحوادث.

الاقتصاد الكلي: تتشارك في استخدام الذاكرة والمحيط

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

2. وضع المستعمل.

  • زيادة الموثوقية : إذا تعطلت وحدة معالجة مركزية واحدة لا يتأثر النظام.
  • سلبيات:
  • إذا تعطلت وحدة معالجة مركزية ستتأثر السرعة.

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

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

1.وضع النواة.

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

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

المصادر المفتوحة

من جهة ثانية، المصادر المفتوحة (بالإنجليزية: Open Source): يشير إلى أي برنامج يتوفر شفرة مصدره (Source Code) للاستخدام أو التعديل كما يرى المستعملون أو غيرهم من المطورين.

* Hardware

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

واجهة التطبيقات

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

الوظائف الأساسية

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

وفي هذا الصدد، تنظيم ملفات المستعمل على الكثير من وسائط التخزين (Storage Media) كالقرص الصلب والقرص المضغوط (CDROM). كما ويعتمد كل نظام تشغيل على نظام ملف (File System) خاص به، مثلا، تعتمد أغلب أنظمة تشغيل مايكروسوفت ويندوز الجديدة على نظام NTFS.

معالجة أخطاء قطع الأجهزة والبرامج وتفادي خسارة المعلومات.

لنظام التشغيل وظائف أساسية في عمل الحاسوب من أهمها:

من جهة ثانية، إدارة الذاكرة الرئيسية ووحدات الإدخال والإخراج وإدارة وحدة المعالجة ووحدات التخزين الثانوي.

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

مقدمة

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

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

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

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

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

المعالجة المتعددة

وفي هذا السياق، 1. المعالجة المتعددة المتماثلة : هي مجموعة من وحدات المعالجة المركزية تتشارك في استخدام الذاكرة وكل وحدة معالجة مركزية تعمل على كل المهام .

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

ومن ناحية أخرى، 2. المعالجة المتعددة الغير متماثلة: هي مجموعة من وحدات المعالجة المركزية التي لا تتشارك في استخدام الذاكرة وكل وحدة معالجة مركزية تعمل على معمة معينة وتوجد وحدة معالجة مركزية تعمل على إدارة هذه المهام.

تصميم نظام التشغيل

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

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

من جهة ثانية، على مدار فترة التصميم يجب أن نكون حريصين ان نفصل القرارات الأمنية من تفاصيل التنفيذ (Mechanisms)مما يسمح هذا الفصل بتوفير المرونة إذا تغيرت القرارات الأمنية لاحقاً  . في الوقت الحالي يجب على نظام التشغيل أن يكون مكتوب بلغة تنفيذ الأنظمة (Systems-Implementation Language)أو لغة عالية المستوى  (Higher-Level Language)، هذه الميزة تسمح بتحسين الإنجاز، التعديل وقابلية التنقل .

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

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

من جانب آخر، يُقسَم نظام التشغيل من حيث قدرته على تشغيل أكثر من برنامج للمستعمل إلى قسمين:

كما تنقسم الأقسام الواردة أعلاه إلى عدة أقسام كذلك

في هذا الإطار، نظام متعدد المهام : هنا يُتيح للمستعمل التعامل مع أكثر من برنامج في الوقت نفسه.

المتعددة المستخدمين المتعددة المهام

ومن جهة أخرى، هو عباره عن نظم التشغيل الحديثة حيث تتيح للمستعمل تشغيل عدة برامج حتى إن كان تعدد المعالجات (CPU) غير كافية لذلك. تقوم نظم التشغيل بتوزيع وقت المعالج بين هذه البرامج بحيث يأخذ كل برنامج وقت محدد من المعالج من ثم يقوم بإيقاف مؤقت للبرنامج وإعطاء برنامج اخر هذا الوقت. هذا يعني ان خلال اللحظة الواحدة برنامج واحد يعمل على المعالج ونظام التشغيل يقوم بالتغيير بسرعة كبيرة جداً كأجزاء من الثانية. عملية توزيع وقت المعالج تسمى بالجدولة (scheduling) حيث يحتفظ نظام التشغيل بقائمة من البرامج التي قام المُستعمل بتشغيلها وتقوم عملية الجدولة بتوزيع وقت لكل برنامج موجود في هذه القائمة ليستفيد من المُعالج في هذا الوقت.

تمكن المستخدم من الوصول لخدمات النواة

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

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

  • تمكن المستعمل من تشغيل التطبيقات.
  • تسمح للمستعمل باستعراض الملفات والمجلدات.
  • ومن أشهر أنواعها:
  • واجهة سطر الأوامر CLI:

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

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

واجهة المستعمل القابلة للتكبير ZUI:

واجهة المستعمل الرسومية GUI:

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

من جهة ثانية، 1 - يجب تمرير البيانات المهمة مثل كلمات المرور ومعلومات التحكم في الوصول التي يتطلبها أو يتم إنشاؤها بواسطة نظام التشغيل من خلال أو تخزينها في فتحات ذاكرة غير محمية ويمكن للمستعملين غير المصرح لهم الوصول إليها.

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

إيجابيات المصادر المفتوحة

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

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

ومن جهة أخرى، يمكن للعديد من الأشخاص العمل والتحديث والتصحيح على الأكواد. ومن إيجابيات المصادر المفتوحة:

وفي هذا السياق، جذب مواهب أفضل: تجذب أصحاب المواهب من كل مكان ليقوموا بإظهار موهبتهم؛ لأن المصادر المفتوحة تسمع للجميع بالتحديث والإضافة عليها.

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

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

الفرق بين خدمة النظير إلى النظير وخدمة الزبائن

وعلى صعيد آخر، السرعة: يمكن للأشخاص التعديل على الأكواد وتحديثها بشكل أسرع.

كذلك، التكلفة: المصادر المفتوحة مجانية لذلك يسهل للجميع مشاركتها والتصحيح عليها.

واجهة المستخدم

توفر للمستعمل وسيلة للتعامل مع الحاسوب

وهي الوسيلة لربط المستعمل بالحاسوب، ومن فوائدها:

استدعاءات النظام

3-وضع آلية لعملية التزامن:

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

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

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

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

الانشطة الرئيسيه لنظام التشغيل التي تتعلق بإدارة العمليات

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

1-إنشاء وحذف المستعمل ونظام التشغيل:

5-وضع آلية لمعالجة الجمود:

2-تعليق واستئناف العمليات:

4-وضع آلية لعملية الإتصال:

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

الشبكات

وفي هذا السياق، الكثير من أنظمة التشغيل كذلك تدعم واحد أو أكثر من البروتوكولات التقليدية الخاصة بكل مصنّع، مثل SNA في أنظمة آي‌ بي‌ إم، والبروتوكولات الخاصة بمايكروسوفت في ويندوز. هناك كذلك بروتوكولات خاصة بمهام معينة مثل NFS للوصول للملفات.

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

ما رأيك في هذه المقالة؟

📝 هل في هذه المقالة خطأ؟

إذا وجدت معلومة تحتاج تصحيحاً أو إضافة، أو أردت حذف المقالة، أرسل لنا طلباً وسنراجعه.