استخدام وحدات المعالجة المركزية الظاهرية
- 7 دقائق
كما هو موضح سابقًا، تعمل وحدة المعالجة المركزية الظاهرية كوكيل لوحدة المعالجة المركزية الفعلية. وبعبارة أخرى، vCPU هو تمثيل pCPU إلى نظام التشغيل الضيف (أي، نظام التشغيل الذي يعمل على VM). يمكن بدء تشغيل وحدة المعالجة المركزية الظاهرية في جهاز ظاهري وتعيينها إلى وحدة معالجة مركزية فعلية بواسطة برنامج مراقب الأجهزة الافتراضية. من حيث المبدأ، يمكن أن يحتوي الجهاز الظاهري على وحدة معالجة مركزية ظاهرية واحدة أو أكثر. على سبيل المثال، يمكن أن يحتوي جهاز ظاهري في VMware ESX 4 على ما يصل إلى ثماني وحدات معالجة مركزية ظاهرية. يمثل حجم وحدات المعالجة المركزية الظاهرية عرض الجهاز الظاهري. يسمى الجهاز الظاهري الذي عرضه أكبر من واحد جهازًا ظاهريًا ذا معالجة متعددة مختلفة. في الاتجاه المعاكس، يسمى الجهاز الظاهري الذي عرضه يساوي واحدًا جهازًا ظاهريًا أحادي المعالج. يناقش الفيديو التالي الأجهزة الظاهرية متعددة المعالجات بالتفصيل:
يوضح الشكل التالي جهازًا ظاهريًا بنظام متعدد المعالجات المختلفة أصليًا بعرض أربعة وجهازًا ظاهريًا أصليًا بنظام أحادي المعالج، وكليهما يعمل على نفس الجهاز.
الشكل 6: جهاز ظاهري بنظام متعدد المعالجات المختلفة أصلي بعرض أربعة وجهاز ظاهري بنظام أصلي أحادي المعالج، وكلاهما يعمل على نفس الجهاز
على غرار العملية التي يتم إجراؤها على نظام تشغيل للأغراض العامة، يمكن أن تكون وحدة المعالجة المركزية الظاهرية في حالات مختلفة، مثل حالات التشغيل والجاهزية والانتظار. في وقت معين، يمكن جدولة وحدة المعالجة المركزية الظاهرية بواسطة برنامج مراقبة الأجهزة الافتراضية في مركز واحد فقط (مثل جدولة عملية نظام التشغيل على النواة). على سبيل المثال، سيتم تشغيل الجهاز الظاهري أحادي المعالجة الذي يعمل على جهاز مضيف مزود بمعالجين Xeon e5405 (أي ما مجموعه ثماني وحدات معالجة مركزية) على نواة واحدة فقط من النوى الثماني المتوفرة. تفضل أحمال العمل المتوازية بطبيعتها، مثل تطبيقات MapReduce، الأجهزة الظاهرية بنظام متعدد المعالجات. نناقش بعد ذلك كيفية قيام برنامج مراقبة الأجهزة الافتراضية بجدولة وحدات المعالجة المركزية الظاهرية على وحدات المعالجة المركزية الظاهرية الفعلية.
جدولة وحدة المعالجة المركزية الظاهرية ومجدولات Xen
تدعم أنظمة تشغيل الأغراض العامة مستويين من الجدولة والعملية وجدولة مؤشر الترابط. باستخدام برنامج مراقبة الأجهزة الافتراضية، تمت إضافة مستوى إضافي واحد للجدولة، جدولة وحدة المعالجة المركزية الظاهرية. يقوم برنامج مراقبة الأجهزة الافتراضية بجدولة وحدات المعالجة المركزية الظاهرية على وحدة (وحدات) المعالجة المركزية الفعلية الأساسية، ومن ثم يوفر لكل جهاز ظاهري ضيف جزءًا من وقت المعالجة الفعلية الأساسية.
نناقش (بإيجاز) مجدولين مشهورين من Xen، المجدول بالزمن الحرج الأقصر أولاً البسيط (SEDF) ومجدول الائتمان (CS). وكما يوحي اسمه، فإن المجدول بالزمن الحرج الأقصر أولاً البسيط مجدول بسيط، حيث يتم تضمين معلمتين فقط، n (الشريحة) وm (الفترة). يمكن للجهاز الظاهري (أو واجهة المستخدم في المجال بلغة Xen) طلب المعلمة n كل فترة m. يحدد مجدول الزمن الحرج الأقصر أولاً البسيط موعدًا نهائيًا لكل وحدة معالجة مركزية ظاهرية محسوبة من حيث n وm. يتم تحديد الموعد النهائي على أنه آخر مرة يمكن فيها تشغيل المجال للتسليم بالموعد النهائي. على سبيل المثال، يمكن لواجهة مستخدم المجال طلب n = 10 مللي ثانية وm = 100 مللي ثانية. وفقًا لذلك، يمكن جدولة وحدة المعالجة المركزية الافتراضية في هذا المجال بواسطة المجدول بالزمن الحرج الأقصر أولاً البسيط حتى 90 مللي ثانية في فترة 100 مللي ثانية، ومع ذلك لا يزال يمكن التسليم بالموعد النهائي. يعمل المجدول بالزمن الحرج الأقصر أولاً البسيط من خلال البحث عبر مجموعة جميع وحدات المعالجة المركزية الظاهرية القابلة للتشغيل، والموجودة في قائمة الانتظار، واختيار واحد مع أقرب موعد نهائي.
مجدول الائتمان لـ Xen هو أكثر مشاركة من خوارزمية المجدول بالزمن الحرج الأقصر أولاً البسيط. أولاً، عند تكوين جهاز ظاهري يتم تعيين كل وحدة معالجة مركزية ظاهرية في الجهاز الظاهري بخاصيتين: الوزن ونقطة الارتكاز. يحدد الوزن حصة سعة وحدة المعالجة المركزية الفعلية التي يجب توفيرها لوحدة المعالجة المركزية الظاهرية. على سبيل المثال، إذا تم تحديد اثنتين من وحدات المعالجة المركزية الظاهرية، وحدة المعالجة المركزية الظاهرية-1 ووحدة المعالجة المركزية الظاهرية-2، بأوزان 256 (الافتراضي) و128، على التوالي، فإن وحدة المعالجة المركزية الظاهرية-1 ستحصل على ضعف حصة وحدة المعالجة المركزية الظاهرية-2. يمكن أن تتراوح الأوزان بين 1 و65,535. يحدد الحد الأقصى النسبة المئوية الإجمالية لوحدة المعالجة المركزية الفعلية التي يجب إعطاؤها إلى وحدة المعالجة المركزية الظاهرية. يمكن لنقطة الارتكاز تعديل سلوك الوزن. ومع ذلك، يمكن أن تظل وحدة المعالجة المركزية الظاهرية بدون نقطة ارتكاز.
تحول خوارزمية مجدول الائتمان وزن كل وحدة المعالجة المركزية الظاهرية إلى ائتمانات. سيتم خصم الائتمانات من وحدة المعالجة المركزية الظاهرية طالما أنها قيد التشغيل. يتم تمييز وحدة المعالجة المركزية الظاهرية على أنها انتهت بمجرد استهلاك الائتمانات ويتم تمييزها على أنها أقل. تحتفظ خوارزمية مجدول الائتمان بقائمة انتظار لكل وحدة معالجة مركزية فعلية (بافتراض بنية متعددة المعالجات للشريحة) وتخزن الجميع في وحدة المعالجة المركزية الظاهرية أولاً، وذلك متبوعًا بجميع وحدات المعالجة المركزية الظاهرية. تعمل خوارزمية مجدول الائتمان عن طريق اختيار الأولى ضمن وحدة المعالجة المركزية الظاهرية في قائمة الانتظار للانتقال للمرحلة التالية. تتبع خوارزمية مجدول الائتمان ائتمانات كل وحدة معالجة مركزية ظاهرية، وعند تبديل وحدة المعالجة المركزية الظاهرية، فإنه يضعها في قائمة الانتظار في نهاية الفئة المناسبة. أخيرًا، تطبق خوارزمية مجدول الائتمان موازنة الأحمال عن طريق السماح لوحدة المعالجة المركزية الفعلية بدون وحدات المعالجة المركزية الظاهرية للسحب ضمن وحدات المعالجة المركزية الظاهرية من قوائم انتظار وحدات المعالجة المركزية الفعلية الأخرى. يمكن العثور على مزيد من التفاصيل حول المجدول بالزمن الحرج الأقصر أولاً البسيط وخوارزمية مجدول الائتمان في الدليل النهائي لبرنامج مراقبة الأجهزة الافتراضية Xen1لشيسنال.
Xen هو عبارة عن برنامج مراقبة الأجهزة الافتراضية مفتوح المصدر. ومن ثم، من الممكن ابتكار وإضافة برنامج الجدولة الخاص بك. يعرض شيسنال تغطية ممتازة وشاملة لأجزاء Xen الداخلية بالإضافة إلى إرشادات خطوة بخطوة لإضافة جدول زمني جديد إلى Xen.
المراجع
- ديفيد تشيسنال (2007). الدليل النهائي لـ Xen Hypervisor Prentice Hall
اختبر معلوماتك
الملاحظات
هل كانت هذه الصفحة مفيدة؟
لا
هل تحتاج إلى مساعدة مع هذا الموضوع؟
هل تريد محاولة استخدام Ask Learn لتوضيح هذا الموضوع أو إرشادك خلاله؟