Hostwinds مدونة

نتائج البحث عن:


ما هي النواة وكيف تعمل؟ صورة مميزة

ما هي النواة وكيف تعمل؟

بواسطة: Hostwinds Team  /  مايو 15, 2024


ما هي النواة؟

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

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

وظائف النواة

تتمثل وظيفة kernel الأساسية في ضمان تواصل البرمجيات والأجهزة بفعالية.

فيما يلي تفصيل لبعض الوظائف الأساسية لـ kernel التي تسمح لها بتشغيل جهاز الكمبيوتر الخاص بك بسلاسة

إدارة الموارد

يتيح kernel التطبيقات بمشاركة موارد الأجهزة ، وتنسيق متى وكم مورد أجهزة معين مطلوب لمهمة معينة (العملية).

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

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

يتعامل kernel مع جميع جوانب إدارة العمليات ، بما في ذلك إنشاء عمليات جديدة ، وجدولة عند تشغيلها ، والتنظيف بمجرد الانتهاء منها.إنها تتأكد من أن كل عملية لديها الموارد التي تحتاجها للعمل مع حمايتها من التدخل مع بعضها البعض.

إدارة الذاكرة

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

إدارة ملف النظام

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

برامج تشغيل الأجهزة

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

الأمن والحماية

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

أنواع النواة

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

نواة متجانسة

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

كل شيء يعمل في مساحة kernel واحدة ، والتي يمكن أن تؤدي إلى أداء عالية وكفاءة.

أمثلة: Linux والإصدارات القديمة من UNIX.

microkernel

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

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

أمثلة: ماخ (المستخدمة في MacOS X) و QNX.

Nanokernel

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

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

kernel الهجين

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

إنها تحافظ على بعض مزايا أداء kernel المتجانسة ولكن مع المزيد من النموذج ، مثل microkernel.

أمثلة: Windows NT و MacOS (منذ الإصدار X).

exokernel

تتخذ exokernels مقاربة مختلفة من خلال توفير واجهة منخفضة المستوى للأجهزة ، مما يتيح المزيد من التحكم في الموارد.يسمح هذا kernel OS بمزيد من التخصيص ومكاسب الأداء المحتملة ، ولكن يمكن أن يكون معقدًا.

برامج تشغيل الأجهزة

برامج تشغيل الأجهزة عبارة عن مكونات برامج تسمح لـ kernel بنظام التشغيل بالتواصل مع أجهزة الأجهزة داخل الكمبيوتر وخارجها.

هناك 3 أنواع رئيسية من برامج تشغيل الأجهزة التي يستخدمها نظام التشغيل الخاص بك:

برامج تشغيل جهاز الأحرف

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

حظر برامج تشغيل الجهاز

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

برامج تشغيل جهاز الشبكة

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

وضع kernel مقابل وضع المستخدم

وضع المستخدم ووضع kernel هما حالتان مميزتان لبرنامج تشغيل الجهاز داخل نظام التشغيل.

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

وضع النواة

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

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

وضع المستخدم

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

الأمن نواة

يحتوي kernel على تدابير أمنية مختلفة لحماية النظام من التهديدات المحتملة.

فيما يلي بعض الطرق التي تتمكن kernel من الحفاظ على بيئة آمنة وتخفيف نقاط الضعف المحتملة:

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

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

sandboxing: تنفذ kernel تقنيات الرمل ، مثل عزل العملية ، وفصل مساحة الاسم ، وفصل الامتياز ، لإنشاء بيئات تنفيذ آمنة للتطبيقات.هذا يمنعهم من الوصول إلى أو تعديل الموارد الناقدة للنظام.

كتب بواسطة Hostwinds Team  /  مايو 15, 2024