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



ببساطة، Ring يشبه برجاً مكوناً من أربعة طوابق:

الطبقة السفلية Ring 0 هي منطقة نواة النظام، أي "وضع الامتياز" لنظام التشغيل.

أعلى Ring 3 هو المكان الذي تعمل فيه برامج المستخدم العادي، أي "وضع المستخدم"

البرامج عادة ما تبقى في Ring 3، ولا يُسمح لها بتجاوز ذلك والتعامل مع أشياء Ring 0، مثل أنك لا تستطيع الكتابة مباشرة إلى القرص الصلب، أو إيقاف التشغيل مباشرة، كل هذا يجب أن يتم من خلال استدعاءات النظام (syscall) بشكل غير مباشر.

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

تم استخدام هذا النظام لاحقًا على الأجهزة الافتراضية (VM). يمكنك اعتباره كمبيوتر يعمل داخله "كمبيوتر افتراضي" آخر. لكن المشكلة هي: النظام الأصلي يعتبر نفسه الزعيم، يعمل في Ring 0، ولكنه الآن مجرد "تابع صغير" داخل الجهاز الافتراضي، ماذا نفعل؟

ثم وُلدت "الافتراضية البرمجية": من خلال تعديل التعليمات ديناميكيًا، تجعل النظام الافتراضي "يعتقد" أنه يتحكم في كل شيء، بينما تظل السيطرة الفعلية في يد النظام المضيف (المعروف أيضًا باسم الhypervisor).
RING0.92%
شاهد النسخة الأصلية
post-image
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • تعليق
  • مشاركة
تعليق
0/400
لا توجد تعليقات
  • تثبيت