الظاهرية مقابل أنظمة التشغيل التقليدية

مكتمل

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

من ناحية أخرى، تعمل الظاهرية على تخفيف القيود الفعلية وتمكين مرونة النظام المُحسن وعزلته. تسمح برامج Hypervisor بتشغيل أنظمة تشغيل متعددة جنباً إلى جنب مع توفير العزل الكامل (أي عزل الأمان وعزل الموارد وعزل الفشل ). أولًا، يمكن لـ hypervisors أن يخولوا بشكل فعال الوصول المتعدد إلى الموارد الفعلية. ثانيًا، تسمى التفاعلات غير المرغوب فيها بين الأجهزة الظاهرية أحيانًا التحدث المتبادل. يمكن أن تتضمن Hypervisors جداول الموارد المتطورة والمخصصين للتحايل على التحدث المتبادل. ثالثًا، hypervisors تقدم خيار عدم مشاركة أي شيء بين توزيعات نظام تشغيل مختلفة. التعليمة البرمجية الوحيدة والبيانات المشتركة بين الأجهزة الظاهرية هي في الواقع برنامج Hypervisor نفسه. وهناك استثناء واحد هو آليات مشاركة الصفحات. يمكن تحسين أداء الأجهزة الظاهرية عن طريق مشاركة صفحات الذاكرة بين VMs في hypervisors مثل VMware. ومع ذلك، يتم ذلك بطريقة شفافة، معزولة ومع البيانات المتطابقة الثنائية فقط. يتم تناول هذا الموضوع بالتفصيل في الوحدة التي تتحدث عن الظاهرية للذاكرة.

ومع ذلك، فإن الفوائد الفريدة التي تقدمها الظاهرية تأتي بتكلفة ما. على سبيل المثال، درجة العزل تأتي على حساب الكفاءة. يمكن قياس الكفاءة من حيث الوقت الإجمالي للتنفيذ. بشكل عام، توفر الأجهزة الظاهرية أداءً أقل مقارنة بالآلات الفعلية المكافئة. ويرجع ذلك بشكل رئيسي إلى (1) نفقات تبديل السياق بين الأجهزة الظاهرية وhypervisor و(2) تكرار الجهود من قبل hypervisor وأنظمة التشغيل التي تعمل على الأجهزة الظاهرية (على سبيل المثال، قد تعمل جميعها على تشغيل المجدولين وإدارة الذاكرات الظاهرية وتفسير طلبات I/O).

ويبين الشكل 4 المواقع المنطقية التقريبية لمثالين رائدين في الظاهرية، Xen Project وVMware ESXi (ستجد المزيد عن هذا لاحقًا في الوحدة) مقابل بعض أنظمة التشغيل التقليدية على طول أبعاد الكفاءة والعزل. يشير المحور س إلى نوع العزل الذي تدعمه برامج hypervisors ونظام التشغيل الموضح، ويعرض المحور ص الكفاءة النوعية. ومن الملاحظة الأساسية أنه لا توجد حتى الآن تقنية أجهزة ظاهرية وصلت إلى الحالة المثالية المتمثلة في زيادة الكفاءة والعزل إلى أقصى حد.

Traditional operating systems and popular hypervisors along the efficiency and isolation dimensions.

الشكل 4: أنظمة التشغيل التقليدية وفرط والـ hypervisors الشائعة على طول أبعاد الكفاءة والعزل


المراجع

  1. سولتش وآخرون. (2007). الظاهرية لنظام التشغيل القائم على الحاوية: بديل قابل للتطوير وعالي الأداء لـ برامج Hypervisor في مراجعة أنظمة تشغيل ACM SIGOPS (المجلد 41، العدد 3، الصفحات 275-287)، ACM

‏‫اختبر معلوماتك

1.

لماذا تتبع أنظمة التشغيل التقليدية الظاهرية في تمكين الحوسبة السحابية؟

2.

قام مستخدم بتنزيل تعليمة برمجية ضارة بدون دراية. تهدف تلك التعليمة البرمجية إلى إيقاف تشغيل الجهاز الذي يعمل عليه. سيؤثر تشغيل تلك التعليمة البرمجية في جهاز ظاهري على أي مما يلي؟

3.

ما هي أنواع العزل التي يجب أن يوفرها الـ hypervisor؟