الفصل 2.2 - نواة لينكس
أهداف التعلم
في نهاية هذا الفصل، ستكون قادرًا على:
- فهم دور نواة لينكس
- شرح كيفية إدارة النواة للموارد
- فهم الاستدعاءات النظامية (syscalls)
- تحديد التفاعلات مع الأجهزة
ما هي نواة لينكس؟
نواة لينكس هي قلب نظام التشغيل. تعمل كواجهة بين الأجهزة والبرمجيات، وتدير جميع موارد النظام.
أدوار النواة
1. إدارة العمليات
تقوم النواة بإنشاء وجدولة وإنهاء العمليات:
- الإنشاء: fork(), clone()
- الجدولة: Scheduler (CFS - Completely Fair Scheduler)
- الإنهاء: exit(), kill()
- الاتصال: pipes, sockets, signaux
2. إدارة الذاكرة
تدير النواة الذاكرة الفعلية والافتراضية:
- التخصيص: malloc() → kmalloc()
- الذاكرة الافتراضية: Pagination, swap
- الحماية: فصل مساحات الذاكرة
- التخزين المؤقت: Buffer cache, page cache
3. نظام الملفات
تدير النواة الوصول إلى الملفات:
- VFS: نظام الملفات الافتراضي (واجهة موحدة)
- دعم أنظمة ملفات متعددة: ext4, xfs, btrfs, إلخ.
- الأذونات: التحقق من حقوق الوصول
- التخزين المؤقت: تحسين الأداء
4. إدارة الشبكة
تدير النواة الاتصالات الشبكية:
- Stack TCP/IP: تنفيذ البروتوكولات
- واجهات الشبكة: eth0, wlan0, إلخ.
- جدار الحماية: iptables, netfilter
- التوجيه: جداول التوجيه
5. إدارة الأجهزة
تدير النواة الأجهزة المادية:
- Drivers: برامج تشغيل لكل جهاز
- Plug and Play: الكشف التلقائي
- إدارة الطاقة: ACPI, suspend/resume
- المقاطعات: إدارة IRQ
الاستدعاءات النظامية (Syscalls)
تتواصل التطبيقات مع النواة عبر الاستدعاءات النظامية:
أمثلة على الاستدعاءات النظامية:
open(): فتح ملفread(): قراءة من ملفwrite(): الكتابة في ملفfork(): إنشاء عمليةexec(): تنفيذ برنامجsocket(): إنشاء مقبس شبكة
بنية النواة
تنظم النواة في وحدات:
أنواع الوحدات:
- Core: وظائف أساسية (محملة دائمًا)
- Modules: وظائف اختيارية (محملة عند الطلب)
- Drivers: برامج تشغيل الأجهزة
ملخص
في هذا الفصل، تعلمت:
نواة لينكس: قلب النظام، واجهة الأجهزة/البرمجيات
الأدوار: إدارة العمليات، الذاكرة، الملفات، الشبكة، الأجهزة
الاستدعاءات النظامية: واجهة بين التطبيقات والنواة
البنية: النواة الأساسية + الوحدات + برامج التشغيل
الوحدات: تحميل ديناميكي للوظائف
الخطوات التالية
الفصل 2.3: إدارة الذاكرة وswap
الفصل 2.4: نظام الملفات الافتراضي (VFS)
تم إنشاء الفصل في: ديسمبر 2024