Hostwinds مدونة
نتائج البحث عن:
في قلب كل نظام تشغيل يكمن kernel ، وهو برنامج أساسي يعمل كوسيط بين برنامج التطبيق ومكونات الأجهزة الخاصة بجهاز الكمبيوتر الخاص بك.إنه مسؤول عن إدارة أجهزة الكمبيوتر (وحدة المعالجة المركزية ، ذاكرة الوصول العشوائي ، التخزين ، إلخ) ، إملاء كيف ومتى يتم استخدام هذه الموارد المختلفة عبر التطبيقات قيد التشغيل والخاملة.
على سبيل المثال ، تخيل أنك تنضم إلى مكالمة جماعية على جهاز الكمبيوتر الخاص بك ، باستخدام تطبيق مثل Zoom أو Google Meet.عند فتحه ، سيطلب التطبيق من kernel الوصول إلى كاميرا الكمبيوتر والميكروفون.تقوم kernel بمعالجة الطلب عن طريق تنشيط الأجهزة اللازمة على جهاز الكمبيوتر الخاص بك.سيخبر الكمبيوتر أيضًا بتخصيص كمية معينة من موارد وحدة المعالجة المركزية للحفاظ على اتصال سلس.
تتمثل وظيفة kernel الأساسية في ضمان تواصل البرمجيات والأجهزة بفعالية.
فيما يلي تفصيل لبعض الوظائف الأساسية لـ kernel التي تسمح لها بتشغيل جهاز الكمبيوتر الخاص بك بسلاسة
يتيح kernel التطبيقات بمشاركة موارد الأجهزة ، وتنسيق متى وكم مورد أجهزة معين مطلوب لمهمة معينة (العملية).
يتعامل kernel مع جميع جوانب إدارة العمليات ، بما في ذلك إنشاء عمليات جديدة ، وجدولة عند تشغيلها ، والتنظيف بمجرد الانتهاء منها.إنها تتأكد من أن كل عملية لديها الموارد التي تحتاجها للعمل مع حمايتها من التدخل مع بعضها البعض.
يشرف kernel على كل من الذاكرة المادية والافتراضية ، مع التأكد من أن كل عملية لديها مساحة كافية للعمل معها.يستخدم تقنيات مثل الترحيل (ثابت) والتجزئة (متغير) للحفاظ على كل شيء منظم وفعال.
ينظم kernel كيفية تخزين البيانات على القرص الصلب بجهاز الكمبيوتر الخاص بك أو SSD من خلال ضمان حفظ ملفاتك واستردادها بسرعة وأمان.
تشبه برامج تشغيل الأجهزة المترجمين لمكونات الأجهزة المختلفة (الطابعات ، وبطاقات الرسومات ، وما إلى ذلك).يتواصل kernel مع هؤلاء المحركات للتحكم في استخدام الأجهزة وتنسيقها.
يفرض kernel التحكم في الوصول وأذونات لحماية النظام من الوصول غير المصرح به.إنه يعزل العمليات عن بعضها البعض ، مما يساعد على منع الكود الضار من التأثير على أجزاء أخرى من النظام.
هناك أنواع مختلفة من النواة ، ولكل منها تصميمها الفريد ونهجها لإدارة موارد جهاز الكمبيوتر الخاص بك.دعونا نستكشف الأنواع الرئيسية من النواة وما الذي يجعل كل واحدة مميزة:
فكر في نواة متجانسة كحزمة كبيرة شاملة.لا يتضمن فقط الوظائف الأساسية لنظام التشغيل ولكن أيضًا برامج تشغيل الأجهزة وإدارة نظام الملفات وخدمات النظام الأخرى.
كل شيء يعمل في مساحة kernel واحدة ، والتي يمكن أن تؤدي إلى أداء عالية وكفاءة.
أمثلة: Linux والإصدارات القديمة من UNIX.
Microkernels يأخذ نهج الحد الأدنى.إنهم يتعاملون فقط مع الوظائف الأكثر أهمية ، مثل الاتصال بين الأجهزة والبرامج ، وتفويض المهام الأخرى (مثل برامج تشغيل الأجهزة) لفصل عمليات وضع المستخدم.
يمكن أن يؤدي هذا التصميم إلى تحسين الاستقرار والنموذج ، مما يجعل من السهل عزل وإصلاح مشكلات النظام.
أمثلة: ماخ (المستخدمة في MacOS X) و QNX.
Nanokernels أصغر وأكثر خفيفة الوزن من microkernels.وهي تهدف إلى التعامل مع الحد الأدنى المطلق للمهام المطلقة ، مثل تبديل السياق وتجريد الأجهزة.
تم تصميم هذا النوع من النواة للتطبيقات المتخصصة ، مثل الأنظمة المدمجة أو أجهزة إنترنت الأشياء ، حيث تكون البساطة والحد الأدنى من استخدام الموارد هي المفتاح.
إن kernel الهجينة عبارة عن مزيج من التصميمات المتجانسة و microkernel ، تهدف إلى الحصول على أفضل ما في العالمين.
إنها تحافظ على بعض مزايا أداء kernel المتجانسة ولكن مع المزيد من النموذج ، مثل microkernel.
أمثلة: Windows NT و MacOS (منذ الإصدار X).
تتخذ exokernels مقاربة مختلفة من خلال توفير واجهة منخفضة المستوى للأجهزة ، مما يتيح المزيد من التحكم في الموارد.يسمح هذا kernel OS بمزيد من التخصيص ومكاسب الأداء المحتملة ، ولكن يمكن أن يكون معقدًا.
برامج تشغيل الأجهزة عبارة عن مكونات برامج تسمح لـ kernel بنظام التشغيل بالتواصل مع أجهزة الأجهزة داخل الكمبيوتر وخارجها.
هناك 3 أنواع رئيسية من برامج تشغيل الأجهزة التي يستخدمها نظام التشغيل الخاص بك:
هذه برامج التشغيل هي المسؤولة عن إدارة الأجهزة التي تنقل حرف البيانات حسب الأحرف ، بما في ذلك لوحات المفاتيح والفئران والمنافذ التسلسلية والمحطات.عادة ما يتعاملون مع عمليات الإدخال والإخراج على أساس الحرف ، دون تخزين كميات كبيرة من البيانات.ومن الأمثلة على ذلك برامج تشغيل لوحة المفاتيح لتفسير ضربات المفاتيح وبرامج تشغيل الماوس لتتبع حركات المؤشر.
تشرف برامج تشغيل الجهاز على الأجهزة التي تخزن واسترداد البيانات في كتل أو قطاعات ذات حجم ثابت ، مثل محركات الأقراص الصلبة ومحركات الأقراص الصلبة (SSD) وأجهزة تخزين USB.يتعاملون مع البيانات في أجزاء ، مما يتيح قراءة وكتابة كميات كبيرة من البيانات.يتم تكليف برامج تشغيل الأجهزة بإدارة أجهزة التخزين ، والتي تتضمن طلبات التقسيم والتنسيق والتعامل مع طلبات القراءة والكتابة.
تكون برامج تشغيل أجهزة الشبكة مسؤولة عن التحكم في بطاقات واجهة الشبكة (NIC) وأجهزة الشبكات الأخرى ، مما يسهل الاتصال عبر الشبكة.تدير برامج التشغيل هذه نقل واستقبال حزم البيانات ، وتنفيذ بروتوكولات الشبكة مثل TCP/IP.كما أنها تتعامل مع تكوين الشبكة وتوجيه الحزم ونقل البيانات.
وضع المستخدم ووضع kernel هما حالتان مميزتان لبرنامج تشغيل الجهاز داخل نظام التشغيل.
دعونا نلقي نظرة على ماهية كل وضع ، ولماذا يهم أمان جهاز الكمبيوتر الخاص بك واستقراره.
وضع kernel هو حالة مميزة تعمل فيها المكونات الأساسية لنظام التشغيل.في هذا الوضع ، تتمتع kernel بإمكانية الوصول غير المقيد إلى موارد الأجهزة ويمكنها أداء مهام النظام الحرجة ، مثل إدارة الذاكرة ، والتحكم في الأجهزة ، ومقاطعات نظام المعالجة.يشبه مركز التحكم في جهاز الكمبيوتر الخاص بك ، حيث يتم تنفيذ العمليات الأساسية بكفاءة وأمان لضمان الأداء السلس لنظام التشغيل.
نظرًا لأن البرنامج لديه إمكانية الوصول غير المقيد إلى موارد النظام الحساسة ، فإن التشغيل في وضع kernel يتطلب مستوى عالٍ من الثقة.على هذا النحو ، تعمل المكونات الموثوقة فقط لنظام التشغيل ، مثل kernel نفسها وبرامج تشغيل الأجهزة ، في وضع kernel للحفاظ على سلامة النظام.
وضع المستخدم هو بيئة مقيدة حيث يتم تشغيل معظم التطبيقات ، مثل المتصفحات ومعالجات النصوص.في هذا الوضع ، يعمل البرنامج ضمن الحدود التي يحددها نظام التشغيل ، دون الوصول المباشر إلى أجهزة أو موارد النظام الهامة.تم تصميمه لتوفير بيئة آمنة ومستقرة للتطبيقات للعمل بشكل مستقل دون التدخل مع بعضها البعض أو الوظائف الأساسية لنظام التشغيل.
يحتوي kernel على تدابير أمنية مختلفة لحماية النظام من التهديدات المحتملة.
فيما يلي بعض الطرق التي تتمكن kernel من الحفاظ على بيئة آمنة وتخفيف نقاط الضعف المحتملة:
صلاحية التحكم صلاحية الدخول: يفرض kernel سياسات التحكم في الوصول عن طريق تعيين أذونات للمستخدمين والعمليات ، مثل القراءة والكتابة وتنفيذ الأذونات.إنه يتحقق من طلبات الوصول مقابل هذه الأذونات لضمان أن الكيانات المعتمدة فقط يمكنها الوصول إلى الموارد.
أذونات: يفرض kernel الأذونات عن طريق التحقق من حقوق الوصول للكيان المطالب مقابل الأذونات المرتبطة بالمورد.هذا يساعد على منع الوصول غير المصرح به وإساءة استخدام موارد النظام.
sandboxing: تنفذ kernel تقنيات الرمل ، مثل عزل العملية ، وفصل مساحة الاسم ، وفصل الامتياز ، لإنشاء بيئات تنفيذ آمنة للتطبيقات.هذا يمنعهم من الوصول إلى أو تعديل الموارد الناقدة للنظام.
كتب بواسطة Hostwinds Team / مايو 15, 2024