انتقل إلى المحتوى الرئيسي

الفصل 1.4 - بنية عالية المستوى

أهداف التعلم​

في نهاية هذا الفصل، ستكون قادرًا على:

  • فهم هيكل نظام Linux
  • تحديد مكونات النواة
  • تحديد مكونات مساحة المستخدم
  • فهم الاتصال بين المكونات

مقدمة​

يتم تنظيم نظام Linux في عدة طبقات تعمل معًا. فهم هذه البنية ضروري لإتقان Linux.


نظرة عامة على النظام​

الهيكل الأساسي​

مساحتان رئيسيتان:

  1. مساحة المستخدم: التطبيقات وبرامج المستخدم
  2. مساحة النواة: إدارة النظام والأجهزة

مساحة المستخدم (User Space)​

التطبيقات​

البرامج التي تستخدمها:

  • متصفحات الويب
  • محررات النصوص
  • أدوات التطوير
  • الألعاب، إلخ.

شل​

واجهة سطر الأوامر:

  • Bash: shell الافتراضي في معظم التوزيعات
  • Zsh: shell حديث وقوي
  • Fish: shell سهل الاستخدام

المكتبات​

وظائف مشتركة:

  • libc: مكتبة C القياسية
  • أخرى: مكتبات متخصصة

الخدمات​

برامج في الخلفية:

  • systemd: مدير الخدمات
  • cron: جدولة المهام
  • sshd: خادم SSH

مساحة النواة (Kernel Space)​

نواة Linux​

قلب النظام:

  • إدارة العمليات: إنشاء، جدولة، إنهاء
  • إدارة الذاكرة: تخصيص، تبديل، حماية
  • نظام الملفات: VFS، إدارة الملفات
  • إدارة الشبكة: مكدس TCP/IP، الواجهات
  • إدارة الأجهزة: برامج تشغيل الأجهزة

استدعاءات النظام (Syscalls)​

واجهة بين مساحة المستخدم ومساحة النواة:

  • open(), read(), write(): ملفات
  • fork(), exec(): عمليات
  • socket(), bind(): شبكة
  • mmap(): ذاكرة

الاتصال بين الطبقات​

تدفق نموذجي​


مكونات الأجهزة​

وحدة المعالجة المركزية​

  • تنفيذ التعليمات
  • إدارة العمليات
  • الجدولة (scheduler)

ذاكرة RAM​

  • تخزين مؤقت
  • بيانات وبرامج قيد التشغيل
  • ذاكرة مخبأة للنظام

القرص الصلب​

  • تخزين دائم
  • نظام الملفات
  • تبديل (امتداد RAM)

الشبكة​

  • واجهات الشبكة
  • الاتصال مع الأنظمة الأخرى
  • بروتوكولات الشبكة

فصل مساحة المستخدم/النواة​

لماذا هذا الفصل؟​

الأمان:

  • لا يمكن للتطبيقات الوصول مباشرة إلى الأجهزة
  • الحماية من الأخطاء
  • عزل العمليات

الاستقرار:

  • خطأ في تطبيق لا يؤثر على النواة
  • يبقى النظام مستقرًا حتى لو تعطل تطبيق

الأداء:

  • النواة محسنة للأجهزة
  • التطبيقات يمكن أن تكون أقل تحسينًا

ملخص​

في هذا الفصل، تعلمت:

البنية: مساحة المستخدم + مساحة النواة + الأجهزة
مساحة المستخدم: التطبيقات، شل، مكتبات، خدمات
مساحة النواة: نواة Linux، استدعاءات النظام، إدارة الموارد
الاتصال: عبر استدعاءات النظام (syscalls)
الفصل: الأمان، الاستقرار، الأداء
الأجهزة: وحدة المعالجة المركزية، RAM، القرص، الشبكة


الخطوات التالية​

الفصل 1.5: مفاهيم أساسية
الفصل 1.6: التثبيت والاستخدام الأول


تم إنشاء الفصل في: ديسمبر 2024