إصدار Bareflank 3.0 hypervisor

تم إصدار برنامج Hypervisor 3.0 من Bareflank، مما يوفر أدوات للتطوير السريع لبرامج Hypervisor المتخصصة. Bareflank مكتوب بلغة C++ ويدعم C++ STL. ستسمح لك البنية المعيارية لـ Bareflank بتوسيع الإمكانيات الحالية لبرنامج Hypervisor بسهولة وإنشاء إصداراتك الخاصة من برامج Hypervisor، والتي تعمل على أعلى الأجهزة (مثل Xen) وتعمل في بيئة برامج موجودة (مثل VirtualBox). من الممكن تشغيل نظام التشغيل للبيئة المضيفة في جهاز ظاهري منفصل. يتم توزيع رمز المشروع بموجب ترخيص LGPL 2.1.

يدعم Bareflank أنظمة Linux وWindows وUEFI على وحدات المعالجة المركزية Intel وAMD 64 بت. تُستخدم تقنية Intel VT-x لمشاركة الأجهزة لموارد الجهاز الظاهري. ومن المقرر دعم أنظمة macOS وBSD في المستقبل، بالإضافة إلى القدرة على العمل على منصة ARM64. بالإضافة إلى ذلك، يقوم المشروع بتطوير برنامج التشغيل الخاص به لتحميل VMM (Virtual Machine Manager)، ومحمل ELF لتحميل وحدات VVM، وتطبيق bfm للتحكم في برنامج Hypervisor من مساحة المستخدم. يوفر أدوات لكتابة الملحقات باستخدام العناصر المحددة في مواصفات C++ 11/14، ومكتبة لتفكيك مكدس الاستثناءات (الاسترخاء)، بالإضافة إلى مكتبة وقت التشغيل الخاصة بها لدعم استخدام المنشئات/المدمرات وتسجيل معالجات الاستثناءات.

استنادًا إلى Bareflank، يتم تطوير نظام المحاكاة الافتراضية Boxy، والذي يدعم تشغيل أنظمة الضيف ويسمح باستخدام الأجهزة الافتراضية خفيفة الوزن مع Linux وUnkernel لتشغيل الخدمات أو التطبيقات المتخصصة. في شكل خدمات معزولة، يمكنك تشغيل كل من خدمات الويب والتطبيقات العادية التي لها متطلبات خاصة للموثوقية والأمان، خالية من تأثير البيئة المضيفة (البيئة المضيفة معزولة في جهاز افتراضي منفصل). يعد Bareflank أيضًا أساس برنامج MicroV Hypervisor، المصمم لتشغيل الأجهزة الافتراضية البسيطة (جهاز افتراضي ذو تطبيق واحد)، وينفذ واجهة برمجة التطبيقات KVM وهو مناسب لإنشاء أنظمة المهام الحرجة.

الابتكارات الرئيسية لـ Bareflank 3.0:

  • الانتقال إلى استخدام مفهوم microkernel. في السابق، كان لدى برنامج Hypervisor بنية متجانسة، حيث كان من الضروري، لتوسيع الوظيفة، استخدام واجهة برمجة تطبيقات خاصة لتسجيل مكالمات رد الاتصال، مما جعل من الصعب تطوير الامتدادات بسبب الارتباط بلغة C++ والبنية الداخلية. تتضمن البنية الجديدة القائمة على النواة الدقيقة تقسيم برنامج Hypervisor إلى مكونات kernel تعمل على الحلقة صفر وامتدادات تعمل على الحلقة الثالثة (مساحة المستخدم). يعمل كلا الجزأين في وضع جذر VMX، وكل شيء آخر، بما في ذلك البيئة المضيفة، يعمل في وضع VMX غير الجذر. تنفذ ملحقات مساحة المستخدم وظيفة Virtual Machine Manager (VMM) وتتفاعل مع kernel لبرنامج Hypervisor من خلال مكالمات النظام المتوافقة مع الإصدارات السابقة. يمكن إنشاء الملحقات بأي لغة برمجة، بما في ذلك Rust.
  • تم الانتقال إلى استخدام مكتبة BSL الخاصة بنا مع دعم Rust وC++، والتي حلت محل المكتبات الخارجية libc++ وnewlib. من خلال التخلص من التبعيات الخارجية، يوفر Bareflank دعمًا أصليًا لتجميع Windows لتبسيط التطوير على هذا النظام الأساسي.
  • تمت إضافة الدعم لمعالجات AMD. علاوة على ذلك، يتم الآن تطوير Bareflank على نظام مزود بوحدة المعالجة المركزية AMD ثم يتم نقله بعد ذلك إلى وحدة المعالجة المركزية Intel.
  • أضاف محمل الإقلاع دعمًا لبنية ARMv8، وسيتم استكمال تكييف برنامج Hypervisor من أجله في أحد الإصدارات التالية.
  • ضمان الامتثال لمتطلبات تطوير الأنظمة الحيوية التي صاغتها منظمات AUTOSAR و MISRA.

المصدر: opennet.ru

إضافة تعليق