تعد النوى الدقيقة والنواة المتجانسة نوعين من النوى في نظام التشغيل. النواة هي الجزء الرئيسي من نظام التشغيل. ونتيجة لذلك، يتم تخزين التعليمات البرمجية المهمة للنواة في مساحات ذاكرة مختلفة. تعد النواة عنصرًا حاسمًا لأنها تحافظ على الأداء السليم للنظام بأكمله. فهو يدير الأجهزة والعمليات، ومعالجة الملفات، والعديد من الوظائف الأخرى.
في هذه المقالة، سوف تتعرف على النواة الدقيقة والنواة المتجانسة. ولكن قبل مناقشة الاختلافات، يجب أن تعرف عن النواة الدقيقة والنواة المتجانسة.
ما هو ميكروكيرنل؟
النواة الدقيقة هي نوع من النواة التي تسمح بتخصيص نظام التشغيل. إنه متميز ويوفر إدارة مساحة عنوان منخفضة المستوى أيضًا الاتصال بين العمليات (IPC) . علاوة على ذلك، فإن وظائف نظام التشغيل مثل مدير الذاكرة الظاهرية ونظام الملفات وجدولة وحدة المعالجة المركزية مبنية فوق النواة الدقيقة. تحتوي كل خدمة على مساحة عنوان خاصة بها لجعلها آمنة. علاوة على ذلك، فإن كل تطبيق له مساحة عنوان خاصة به. ونتيجة لذلك، توجد حماية بين التطبيقات وخدمات نظام التشغيل والنواة.
عندما يطلب تطبيق ما خدمة من خدمات نظام التشغيل، تتواصل خدمات نظام التشغيل مع بعضها البعض من أجل تقديم الخدمة المطلوبة إلى التطبيق. يمكن أن يساعد الاتصال بين العمليات (IPC) في إنشاء هذا الاتصال. بشكل عام، توفر أنظمة التشغيل المعتمدة على النواة الدقيقة مستوى عالٍ من القابلية للتوسعة. من الممكن أيضًا تخصيص خدمات نظام التشغيل لتلبية احتياجات التطبيق.
مزايا وعيوب Microkernel
هناك مزايا وعيوب مختلفة للنوية الدقيقة. بعض مزايا وعيوب النواة الدقيقة هي كما يلي:
مزايا
شار في سلسلة جافا
- هذه وحدات نمطية، ويمكن تعديل عدة وحدات، أو إعادة تحميلها، أو استبدالها دون تعديل النواة.
- إن بنية النواة الدقيقة صغيرة ومعزولة، ولكنها قد تعمل بشكل أفضل.
- يعد نظام Microkernel تقنية متعددة الاستخدامات حيث يمكن أن تتعايش واجهات برمجة التطبيقات (APIs) التي يتم تنفيذها بواسطة عدة خوادم.
- يمكن توسيع النظام بسهولة أكبر لأنه يمكن إضافته إلى تطبيق النظام دون مقاطعة النواة.
- ويضيف ميزات جديدة دون إعادة الترجمة.
- بالمقارنة مع الأنظمة المتجانسة، هناك عدد أقل من أعطال النظام.
سلبيات
- مطلوب تبديل السياق في النواة الصغيرة عند تشغيل برامج التشغيل كعمليات.
- قد يكون أداء نظام النوية متغيرًا ويسبب مشكلات.
- تعد خدمات Microkernel أكثر تكلفة من الأنظمة المتجانسة التقليدية.
ما هي النواة المتجانسة؟
تدير النواة المتجانسة موارد النظام بين تطبيق النظام وأجهزة النظام. على عكس النواة الدقيقة، يتم تشغيل خدمات المستخدم والنواة في نفس مساحة العنوان. فهو يزيد من حجم النواة ويزيد أيضًا من حجم نظام التشغيل.
توفر النواة المتجانسة جدولة وحدة المعالجة المركزية وإدارة الأجهزة وإدارة الملفات وإدارة الذاكرة وإدارة العمليات وخدمات نظام التشغيل الأخرى عبر مكالمات النظام. كل هذه المكونات، بما في ذلك إدارة الملفات وإدارة الذاكرة، موجودة داخل النواة. تستخدم خدمات المستخدم والنواة نفس مساحة العنوان، مما يؤدي إلى نظام تشغيل سريع التنفيذ. أحد عيوب هذه النواة هو أنه إذا فشلت أي عملية أو خدمة للنظام، فإن النظام بأكمله يتعطل. يجب تعديل نظام التشغيل بأكمله لإضافة خدمة جديدة إلى نواة متجانسة.
مزايا وعيوب النواة المتجانسة
هناك مزايا وعيوب مختلفة للنواة المتجانسة. بعض مزايا وعيوب النواة المتجانسة هي كما يلي:
مزايا
- تعمل النواة المتجانسة بسرعة بسبب إدارة الذاكرة وإدارة الملفات وجدولة العمليات وما إلى ذلك.
- قد تتفاعل جميع المكونات بشكل مباشر مع بعضها البعض وأيضًا مع النواة.
- إنها عملية واحدة ضخمة يتم تنفيذها بالكامل ضمن مساحة عنوان واحدة.
- هياكلها سهلة وبسيطة. تحتوي النواة على جميع المكونات المطلوبة للمعالجة.
سلبيات
- إذا كان المستخدم يحتاج إلى إضافة خدمة جديدة، فإنه يحتاج إلى تعديل نظام التشغيل بالكامل.
- ليس من السهل نقل التعليمات البرمجية المكتوبة في نظام التشغيل المتجانس.
- إذا فشلت أي من الخدمات، فشل النظام بأكمله.
الاختلافات الرئيسية بين النواة الدقيقة والنواة المتجانسة
هنا، سوف تتعلم الاختلافات الرئيسية بين Microkernel و Monolithic Kernel. الاختلافات المختلفة بين Microkernel و Monolithic Kernel هي كما يلي:
- النواة الدقيقة هي نوع من النواة يقوم بتنفيذ نظام التشغيل من خلال توفير طرق، بما في ذلك إدارة مساحة العنوان ذات المستوى المنخفض، وIPC، وإدارة الخيوط. من ناحية أخرى، النواة المتجانسة هي نوع من النواة يتم فيها تشغيل نظام التشغيل الكامل في مساحة النواة.
- تقوم النواة الدقيقة بتشغيل خدمات المستخدم والنواة في مساحات عناوين مختلفة. من ناحية أخرى، تقوم النواة المتجانسة بتشغيل كل من خدمات النواة والمستخدم في نفس مساحة العنوان. في النواة الدقيقة، تتم فقط العمليات الأساسية مثل IPC وإدارة الذاكرة والجدولة في مساحة kernel.
- يكون تنفيذ النواة الدقيقة أبطأ لأن الاتصال بين تطبيق النظام والأجهزة يتم عن طريق تمرير الرسالة. من ناحية أخرى، يكون تنفيذ النواة المتجانسة أسرع لأن استدعاء النظام ينشئ الاتصال بين تطبيق النظام والأجهزة.
- تستخدم Microkernels قوائم انتظار الرسائل لتحقيق IPC. من ناحية أخرى، تستخدم النواة المتجانسة مآخذ توصيل وإشارات لتحقيق IPC.
- حجم النواة الصغيرة أصغر من النواة المتجانسة لأن خدمات النواة فقط هي التي تعمل في مساحة عنوان النواة. من ناحية أخرى، يكون حجم النواة المتجانسة أكبر لأن كلاً من خدمات المستخدم والنواة تعمل في نفس مساحة العنوان.
- تعد النوى الدقيقة أكثر أمانًا من النوى المتجانسة لأن نظام التشغيل لا يتغير في حالة فشل الخدمة في النواة الدقيقة. ومن ناحية أخرى، إذا فشلت خدمة ما في نواة متجانسة، فإن النظام بأكمله يفشل.
- من السهل توسيع النواة الدقيقة حيث تتم إضافة خدمات جديدة في مساحة عنوان المستخدم، وهي منفصلة عن مساحة النواة، وبالتالي لا تحتاج النواة إلى التحديث. ومن ناحية أخرى، يجب تحديث النواة الكاملة إذا تم استخدام خدمة جديدة في نواة متجانسة.
- يحتاج تصميم Microkernel إلى تعليمات برمجية أقل مما يؤدي إلى أخطاء أقل. في المقابل، تتطلب النواة المتجانسة المزيد من التعليمات البرمجية التي تؤدي إلى المزيد من الأخطاء.
مقارنة وجهاً لوجه بين النواة الدقيقة والنواة المتجانسة
هنا، سوف تتعلم المقارنة وجهاً لوجه بين Microkernel وMonolithic Kernel. الاختلافات الرئيسية بين Microkernel و Monolithic Kernel هي كما يلي:
سمات | النواة الدقيقة | نواة متجانسة |
---|---|---|
تعريف | إنه نوع kernel يقوم بتنفيذ نظام التشغيل من خلال توفير إدارة مساحة العنوان منخفضة المستوى وIPC وإدارة الخيوط. | إنه نوع من النواة يعمل فيه نظام التشغيل الكامل بسرعة النواة. |
مقاس | إنه أصغر حجمًا. | إنه أكبر من النواة الدقيقة. |
سرعة | تنفيذ عمليتها أبطأ. | تنفيذ عمليتها أسرع. |
أساسي | يقوم بتنفيذ خدمات النواة والمستخدم في مساحات عناوين مختلفة. | يقوم بتنفيذ خدمات المستخدم والنواة في نفس مساحة العنوان. |
حماية | إنه أكثر أمانًا من النواة المتجانسة. | إنه أقل أمانًا من النواة الدقيقة. |
استقرار | فشل عملية واحدة لا يؤثر على العمليات الأخرى. | في النواة المتجانسة، إذا فشلت الخدمة، يفشل النظام بأكمله. |
قابلة للتمديد | فمن السهل أن تمتد. | ومن الصعب أن تمتد. |
شفرة | من الضروري كتابة المزيد من التعليمات البرمجية لكتابة microkernel. | من الضروري استخدام كود أقل لكتابة نواة متجانسة. |
بين العمليات | تستخدم Microkernels الخاصة بالاتصال قوائم انتظار الرسائل لتحقيق IPC. | تستخدم النوى المتجانسة الإشارات والمقابس لتحقيق IPC. |
قابلية الصيانة يمكن صيانتها بسهولة. | تستغرق الصيانة وقتًا وموارد إضافية. | |
تصحيح | من السهل تصحيح الأخطاء. | ومن الصعب التصحيح. |
مثال | Symbian، L4Linux، K42، Mac OS X، PikeOS، HURD، إلخ. | Linux، وBSD، وSolaris، وOS-9، وDOS، وOpenVMS، وما إلى ذلك. |
خاتمة
كلا بنيات النواة لها العديد من الفوائد والقيود. لذلك، لا يوجد حل بسيط بشأن أيهما أفضل ويجب استخدامه. يجب أن تختار الأهداف والمتطلبات نمط النواة. الأنواع الأخرى من النوى لها نواة نانوية، ونواة هجينة، ونواة خارجية.