ما هي النواة وماذا تعمل
ما هي النواة وماذا تعمل
إذا كنت تستخدم أجهزة الكمبيوتر ، فلا بد أنك سمعت باسم Kernel. لكن هل تعرف ما هو Kernel ؟ أين هو مطلوب؟ إذا لم يكن الأمر كذلك ، فستتعرف في نهاية مقالة اليوم على كل الأشياء المتعلقة بـ Kernel. ابق معنا للحصول على التفاصيل الكاملة.
تعد هذه النواة مركزًا مهمًا جدًا لنظام تشغيل الكمبيوتر (OS). إنه نواة يوفر جميع الخدمات الأساسية لأجزاء مختلفة من نظام التشغيل. هذه هي الطبقة الرئيسية بين نظام التشغيل والأجهزة ، مما يساعد في معالجة وإدارة الذاكرة ، وأنظمة الملفات ، والتحكم في الجهاز ، وكذلك الشبكات.
تُقارن النواة في معظم الأحيان بالصدفة ، وهي في الواقع الجزء الخارجي من نظام التشغيل الذي يتفاعل مع أوامر المستخدم. Kernel و shell عبارة عن مصطلحات يتم استخدامها بشكل متكرر في أنظمة تشغيل Unix ، من حيث نظام IBM الرئيسي أو أنظمة Microsoft Windows.
بينما ، لا تخلط بين النواة ونظام الإدخال / الإخراج الأساسي (BIOS) ، بل هو برنامج مستقل يتم تخزينه على شريحة في لوحة دوائر الكمبيوتر.
لهذا السبب اعتقدت اليوم أنه لماذا لا يتم تزويدكم بمعلومات كاملة حول ماهية النواة وكيف تعمل. مع هذا يمكنك التعرف على جزء من هذا الكمبيوتر الأساسي سي. لذلك لنبدأ دون تأخير.
ما هو Kernel
يوفر لنا نظام التشغيل واجهة رسومية حتى نتمكن من إعطاء أوامر لنظام الكمبيوتر. لكن النظام لا يستطيع فهم هذه الأوامر بشكل مباشر.
لذلك تتم ترجمة الكود بلغة ثنائية ، حيث يتم استخدام المكون الأساسي لنظام التشغيل ، ويطلق عليه اسم Kernel .
نتعامل مع أدنى طبقة من User Kernel ثم تتعامل النواة مع النظام.
يلعب Kernel دور الوسيط بين أجهزة وبرامج النظام. هذا النواة ليس نظام تشغيل (OS) ؛ بل هي وحدة مركزية لنظام التشغيل. هذا هو أول برنامج يتم تحميله في منطقة الذاكرة المحمية أثناء عملية التمهيد. يتم الاحتفاظ بها في تلك الذاكرة طالما أن النظام قيد التشغيل.
هذه النواة عبارة عن طبقة تجريد منخفضة المستوى. تستخدم عملية المستخدم نظامًا للتفاعل مع النظام. تستدعي استدعاءات النظام النواة ، ثم ينفذ kernel عملية المستخدم.
تدير Kernel في الوقت نفسه العمليات الأخرى للنظام مثل إدارة العمليات وإدارة الذاكرة وإدارة الجهاز وإدارة الإدخال / الإخراج.
ماذا تفعل النواة؟
كما قلت سابقًا ، فإن النواة هي المكون الأساسي لنظام التشغيل. يعمل كجسر بين التطبيقات ومعالجة البيانات باستخدام الاتصالات بين العمليات ومكالمات النظام ، والتي يتم إجراؤها على مستوى الأجهزة.
عندما يتم تحميل نظام التشغيل في الذاكرة ، يتم تحميل النواة أولاً وتبقى في الذاكرة حتى يتم إيقاف تشغيل نظام التشغيل مرة أخرى. هذه النواة مسؤولة عن جميع المهام ذات المستوى المنخفض مثل إدارة القرص وإدارة المهام وإدارة الذاكرة.
بشكل عام ، واجهات نواة الكمبيوتر لمكونات أجهزة الكمبيوتر الرئيسية الثلاثة ، كما توفر خدمات لواجهة التطبيق / المستخدم ووحدة المعالجة المركزية والذاكرة وأجهزة الإدخال / الإخراج الأخرى.
إلى جانب توفير هذا النواة ، فإنه يدير أيضًا موارد الكمبيوتر ، بحيث يمكنه السماح للبرامج الأخرى بتشغيل هذه الموارد واستخدامها.
باستخدام هذا ، تقوم kernel بإعداد مساحة عنوان الذاكرة للتطبيقات ، وتحميل الملفات من رمز التطبيق إلى الذاكرة ، وإعداد مكدس التنفيذ للبرامج والتفرع معها إلى مواقع محددة للتنفيذ داخل البرامج.
ما هي ميزات Kernel؟
دعنا نتعرف على ميزات النواة.
ما هي مسؤوليات Kernel؟
الآن دعنا نتعرف على مسؤوليات Kernel.
1. وحدة المعالجة المركزية : تتحمل هذه النواة نفسها مسؤولية عدد البرامج قيد التشغيل التي يجب تخصيصها للمعالجات في أي وقت.
2. ذاكرة الوصول العشوائي: تستخدم ذاكرة الوصول العشوائي لتخزين كل من تعليمات البرنامج والبيانات. بينما غالبًا ما تريد العديد من البرامج الوصول إلى هذه الذاكرة ، إلا أنها تريد المزيد من الذاكرة وهو أكثر من الذاكرة المتوفرة في الكمبيوتر.
في مثل هذه الحالة ، تقع على عاتق Kernel مسؤولية تخصيص الذاكرة التي ستستخدمها ، جنبًا إلى جنب معها لتقرير ما يجب القيام به عندما لا تتوفر ذاكرة كافية.
3. أجهزة الإدخال / الإخراج : تخصص هذه النوى الطلبات من تطبيقات مختلفة بحيث يمكن إجراء عمليات الإدخال / الإخراج في الجهاز الصحيح ، بالإضافة إلى أنها توفر أيضًا طرقًا ملائمة لاستخدام الجهاز.
4. إدارة الذاكرة : يتمتع هذا النواة بوصول كامل إلى ذاكرة النظام ويسمح أيضًا بالوصول إليها بأمان عند الحاجة إليها.
5. إدارة الجهاز : يجب أن تحتفظ Kernel بقائمة بجميع الأجهزة المتاحة. تم تكوين هذه القائمة بالفعل من قبل المستخدم أو تم اكتشافها بواسطة نظام التشغيل في وقت التشغيل (عادةً ما يطلق عليها التوصيل والتشغيل).
الميزات التي يوفرها Kernel؟
دعنا الآن نعرف ما هي الميزات التي توفرها النواة.
1) جدولة العملية (الإرسال)
2) الاتصال بين
العمليات 3) مزامنة العملية
4) تبديل السياق
5) كتل التحكم في العملية التلاعب
6) معالجة المقاطعة
7) إنشاء العملية التدمير
8) تعليق العملية الاستئناف
تعريف النواة
مدير وظيفة نظام التشغيل هو النواة. يتحكم ويدير جميع المهام الأساسية لنظام التشغيل.
إدارة الذاكرة : يوفر Kernel ذاكرة افتراضية ومادية للعمليات لإكمال تنفيذها. إذا كانت العملية غير قادرة على الانتهاء في الذاكرة الفعلية ، فإن kernel يوفر مساحة افتراضية أيضًا في القرص الصلب بحيث يمكنه تخزين العملية هناك.
هذا المفهوم يسمى رسم الخرائط الافتراضية. عندما يحتاج البرنامج إلى بيانات غير موجودة حاليًا في ذاكرة الوصول العشوائي ، فإن وحدة المعالجة المركزية (CPU) تشير إلى النواة للبيانات ثم تستجيب النواة أيضًا لوحدة المعالجة المركزية ، حيث تكتب محتوياتها إلى كتلة ذاكرة غير نشطة. في القرص المحتمل (مسافة تم إنشاؤها لهذا الغرض وفقًا لمتطلبات البيانات) ثم يتم استبدالها أيضًا بالبيانات التي يطلبها البرنامج. يسمى هذا المخطط ترحيل الطلب.
المجدول : يعمل هذا النواة كجدول أثناء تنفيذ العمليات. يتم تنفيذ عملية واحدة في وقت واحد بواسطة المعالج. تخصص هذه النواة المعالج لبرنامج من قائمة التطبيقات قيد التشغيل.
إدارة الجهاز : يتحكم Kernel في أنشطة الأجهزة الطرفية الأخرى بمساعدة برامج تشغيل الأجهزة. برامج تشغيل الأجهزة هي برامج تساعد نظام التشغيل على التفاعل مع الأجهزة.
يوفر برنامج تشغيل الجهاز واجهة ويساعد نظام التشغيل على التعامل مع الأجهزة الطرفية الأخرى مثل الطابعات والماسحات الضوئية وأجهزة المودم ولوحة المفاتيح والماوس وما إلى ذلك.
يقوم برنامج التشغيل هذا بترجمة مكالمات وظائف نظام التشغيل إلى مكالمات خاصة بالجهاز. تكتشف برامج تشغيل الأجهزة الأجهزة المثبتة بالإضافة إلى محركات البحث عند بدء تشغيل النظام.
تستخدم هذه العملية آلية استدعاء النظام للتعامل مع نواة نظام التشغيل. استدعاء النظام هو استدعاء خدمة للنواة يأخذ منه الإذن لتنفيذ العملية. هناك تعليمات كود آلة استدعاء النظام التي يستخدمها برنامج التطبيق حتى يتمكن من الحصول على إذن الخدمة من نظام التشغيل.
إدارة الذاكرة: – تدير هذه النواة أيضًا ذاكرة الوصول العشوائي. يخصص ذاكرة لكل من التعليمات وتنفيذ البيانات. يقرر أي عملية موجودة في ذاكرة الوصول العشوائي وكم الذاكرة المطلوبة لتنفيذ العملية؟ يعالج هذا النواة العديد من العمليات باستخدام آلية مختلفة.
أنواع النواة
دعنا نتعرف الآن على أنواع أو أنواع مختلفة من النواة.
نواة متجانسة
تقوم Monolithic Kernels بتشغيل جميع خدمات النظام الأساسية مثل إدارة العمليات والذاكرة ومعالجة المقاطعة واتصالات الإدخال / الإخراج ونظام الملفات وما إلى ذلك داخل مساحة kernel.
عادةً ما تحتوي النواة المتجانسة على أعلى معدل نقل للبيانات مقارنةً بجميع النوى الأخرى ، وبالتالي تُستخدم في الخوادم الكبيرة أو الخوادم المخصصة للوظائف.
نواة متجانسة المزايا
1) تكون أصغر في نماذج المصدر والمترجمة
2) رمز أقل يعني أخطاء أقل ومشاكل أمان أقل.
3) تُستخدم استدعاءات النظام في نواة متجانسة لتنفيذ العمليات
4) التنفيذ سريع جدًا
5) في هذا كل الأشياء تحدث في النواة نفسها ، لذلك لا نحتاج إلى أي آلية إضافية للإدخال / الإخراج والعملية أثناء إنشاء التطبيق للتعامل مع.
نواة متجانسة عيوب
1) يعد التشفير أيضًا صعبًا جدًا في مساحة kernel ، لأنه لا يمكنك استخدام المكتبات الشائعة فيه.
2) تصحيح الأخطاء في هذا أمر صعب ، حيث يجب إعادة تشغيل الكمبيوتر بشكل متكرر
3) تسبب الأخطاء الموجودة في جزء من النواة الكثير من الآثار الجانبية
4) غالبًا ما تصبح النواة كبيرة ويصعب الحفاظ عليها.
5) ليست محمولة – يجب إعادة كتابة النواة المتجانسة بشكل متكرر لكل بنية جديدة يتم استخدامها في نظام التشغيل.
مايكرو نواة
بينما في microkernel ، يوفر kernel الوظائف الأساسية التي تسمح من خلالها بتنفيذ الخوادم والبرامج المنفصلة. يتم تقسيم Kernel إلى عمليات منفصلة تسمى الخوادم. هنا تعمل بعض الخوادم في مساحة المستخدم والبعض الآخر في مساحة النواة.
يتم الاحتفاظ بجميع الخوادم بشكل منفصل وتشغيلها في مساحات عناوين مختلفة.
يمكنك عادةً رؤية Microkernels في أنظمة الوقت الفعلي .
مزايا MicroKernel
1) من الأسهل الحفاظ عليها مقارنة بـ Monolithic Kernel.
2) إنه مقاوم للأعطال (بمعنى أنه في حالة فشل أحد الخوادم ، فإن الخوادم الأخرى لا تزال تعمل بكفاءة).
3) محمول
4) صغير الحجم
5) يحتوي على كمية صغيرة من التعليمات البرمجية. هذا يزيد من استقرارهم وأمنهم.
هجين نواة
في هذا يتم خلط أفضل ما في كل من النواة المتجانسة والنواة الدقيقة.
مثل السرعة والتصميم البسيط لنواة متجانسة + نمطية واستقرار نواة صغيرة
لديها صفات كل من النواة المتجانسة والميكروية ، لكن لا يمكننا أن نقول أنها نواة محددة حصريًا.
يمكنك رؤية هذه النوى عادةً على أجهزة سطح المكتب وأنظمة التشغيل Windows و Mac و Linux .
نانو نواة
يقدم هذا النوع من النواة تجريدًا للأجهزة فقط ، ولا توجد خدمات فيه ، كما أن مساحة النواة في حدها الأدنى. nanokernel هو أساس برنامج Hypervisor الذي يمكنك من خلاله محاكاة أنظمة متعددة عبر المحاكاة الافتراضية. النوى رائعة للمشاريع المدمجة.
Exo-Kernel
هذه النواة هي الأصغر. إنه يوفر فقط حماية العملية ومعالجة الموارد. المبرمج الذي يستخدم هذه النواة مسؤول عن الوصول بشكل صحيح إلى الجهاز الذي يريد استخدامه.
الفرق بين kernel ونظام التشغيل
OS عبارة عن حزمة برامج نظام بينما تعد kernel جزءًا من نظام التشغيل الذي يدير جميع العمليات والأجهزة.
حيث يكون نظام التشغيل عبارة عن واجهة بين المستخدم والجهاز. في حين أن النواة هي واجهة بين البرامج والأجهزة.
يساعد Kernel البرنامج على التواصل مع الأجهزة الطرفية الأخرى.
هل Linux هو Kernel أم نظام تشغيل؟
بالمناسبة ، هناك فرق بين kernel و OS. كما أخبرتك بالفعل أن Kernel هو قلب نظام التشغيل الذي يدير جميع ميزاته الأساسية ، بينما إذا تمت إضافة بعض التطبيقات والأدوات المفيدة إلى تلك النواة ، فإن هذه الحزمة الكاملة تسمى OS. Is.
من هذا يمكن القول أنه يوجد في نظام التشغيل مساحة نواة بالإضافة إلى مساحة مستخدم.
يوضح هذا أن Linux هو نواة لأنه لا يحتوي على أي تطبيقات أخرى مثل أدوات نظام الملفات وأنظمة النوافذ وأسطح المكتب الرسومية وأوامر مسؤول النظام ومحرري النصوص والمجمعين وما إلى ذلك.
في الوقت نفسه ، تضيف العديد من الشركات هذه الأنواع من التطبيقات إلى Linux kernel وتقوم بإعداد أنظمة التشغيل الخاصة بها مثل ubuntu و suse و centOS و redHat وما إلى ذلك.
ما هو نواة الذعر؟
نظرًا لأن النواة تتعامل مع معظم الوظائف الأساسية للكمبيوتر ، لذلك إذا تعطلت ، فستتلف الكمبيوتر بالكامل. يسمى هذا الحدث غير المرغوب فيه ” ذعر النواة ” في أنظمة macOS و Unix.
هذا مشابه لموت الشاشة الزرقاء في Windows. للخروج من هذا الموقف ، عليك إعادة تشغيل جهاز الكمبيوتر الخاص بك.
ملاحظة غالبًا ما تنشأ حالات الذعر في Kernel بسبب مشكلات اتصال الأجهزة. لذلك ، إذا كان جهاز الكمبيوتر الخاص بك يعرض مشكلات مثل ذعر النواة عدة مرات ، فيجب عليك فصل جميع الأجهزة غير الضرورية ، فقد يؤدي ذلك إلى إنهاء مشكلتك.
استنتاج
آمل أن تكون قد أحببت مقالتي ما هو Kernel (ما هو Kernel ) . لطالما كنت أحاول تقديم معلومات كاملة حول Kernel للقراء حتى لا يضطروا إلى البحث في أي مواقع أخرى أو الإنترنت في سياق هذه المقالة.
سيوفر هذا أيضًا وقتهم وسيحصلون أيضًا على جميع المعلومات في مكان واحد. إذا كانت لديك أي شكوك حول هذه المقالة أو إذا كنت تريد أن يكون هناك بعض التحسين فيها ، فيمكنك كتابة تعليقات منخفضة على ذلك.
إذا أعجبك هذا المنشور ما هو Kernel أو تعلمت شيئًا ما ، فيرجى مشاركة هذا المنشور على الشبكات الاجتماعية مثل Facebook و Twitter وما إلى ذلك.