Skip to main content

ما هي نواة لينكس؟

ما هو اللينكس...؟ What is Linux...? l (قد 2025)

ما هو اللينكس...؟ What is Linux...? l (قد 2025)
Anonim

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

أساليب

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

ما هو النواة؟

كل نظام تشغيل يحتوي على نواة. تحتوي كل من أنظمة التشغيل Windows و MacOS و iOS و Android و Chrome OS و Linux على نظام منخفض المستوى يكون مسؤولاً عن تفاعل جميع التطبيقات مع الأجهزة المادية للكمبيوتر. بدون النواة ، لن تتمكن أي من تطبيقاتك من استخدام الكمبيوتر الفعلي ؛ لن تعمل تطبيقات مثل Firefox أو Chrome أو LibreOffice أو MS Office أو Outlook. كما أن النواة مسؤولة أيضًا عن السماح للعمليات بتبادل المعلومات باستخدام ما يسمى الاتصال بين العمليات (IPC).

هناك (بصفة عامة) ثلاثة أنواع من الألباب:

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

يستخدم Linux مصدرًا مفتوحًا ، Monolithic Kernel ، في حين تستخدم كل من macOS و Windows كلا من Hybrid Kernels. تم تصميم لينكس نواة في عام 1991 من قبل لينوس تورفالدس. حتى يومنا هذا ، لا يزال السيد تورفالدز هو المطور الرئيسي في نواة لينكس ، في حين يساهم المطورون من جميع أنحاء العالم في نواة لينكس. في الواقع ، يقدر أن ما يقرب من 10 آلاف مطور ، من أكثر من 1000 شركة ، ساهموا في نواة لينكس (منذ بدء التتبع في عام 2005).

أين النواة؟

إذا قمت بفتح نافذة طرفية وإصدار الأمر ليرة سورية / التمهيد، سترى ملف يسمى vmlinuz-VERSION (حيث VERSION هو اسم أو رقم الإصدار). الملف vmlinuz هو نواة لينكس القابلة للتشغيل الفعلية ، و "z" هي تشير إلى أن النواة مضغوطة ؛ لذلك بدلا من vmlinux لدينا vmlinuz.

ضمن ذلك الدليل / boot هي ملفات kernel الهامة الأخرى ، مثل initrd.img-VERSION و system.map-VERSION و config-VERSION (حيث يكون VERSION عبارة عن اسم أو رقم إصدار). هذه الملفات الأخرى تخدم الأغراض التالية:

  • initrd: يستخدم كـ RAMdisk صغير يستخرج وينفذ ملف kernel الفعلي.
  • system.map: تستخدم لإدارة الذاكرة ، قبل تحميل النواة.
  • التكوين: يرشد النواة على ما هي الخيارات والوحدات النمطية للتحميل.

وحدات

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

  • lsmod سيتم سرد كافة وحدات kernel المحملة حاليًا.
  • insmod سيتم تحميل وحدة kernel في kernel قيد التشغيل.
  • rmmod سوف تفريغ وحدة من نواة التشغيل.

لذلك يمكنك ، بفضل بعض الأوامر البسيطة ، أن تكون نواة لينكس مرنة تمامًا.

النواة الحالية

حتى كتابة هذه السطور ، فإن نواة لينكس الثابتة هي 4.18.5 ، ولكن ليس كل توزيعات لينكس ستشمل أحدث نواة. في الواقع ، يعمل توزيع سطح المكتب Elementary الذي تم تحديثه على تشغيل kernel 4.15.0-30. ماذا يعني هذا العدد؟ في حالة أحدث نواة في نظام التشغيل الأساسي ، فهذا يعني:

  • 4 هو الإصدار الرئيسي
  • 15 هو الإصدار الأصغر
  • 0-30 هو المراجعة

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