انتشار هایپروایزر Bareflank 2.0

صورت گرفت انتشار هایپروایزر Bareflank 2.0، که ابزارهایی را برای توسعه سریع هایپروایزرهای تخصصی فراهم می کند. Bareflank به زبان C++ نوشته شده است و از C++ STL پشتیبانی می کند. معماری ماژولار Bareflank به شما این امکان را می دهد که به راحتی قابلیت های موجود هایپروایزر را گسترش دهید و نسخه های هایپروایزر خود را ایجاد کنید، هم بر روی سخت افزار (مانند Xen) و هم در یک محیط نرم افزاری موجود (مانند VirtualBox) اجرا می شوند. امکان اجرای سیستم عامل محیط میزبان در یک ماشین مجازی مجزا وجود دارد. کد پروژه توزیع شده توسط دارای مجوز LGPL 2.1.

Bareflank از لینوکس، ویندوز و UEFI روی CPUهای 64 بیتی اینتل پشتیبانی می کند. فناوری Intel VT-x برای به اشتراک گذاری سخت افزار منابع ماشین مجازی استفاده می شود. پشتیبانی از سیستم‌های macOS و BSD برای آینده و همچنین توانایی کار بر روی پلتفرم‌های ARM64 و AMD برنامه‌ریزی شده است. علاوه بر این، این پروژه در حال توسعه درایور خود برای بارگیری VMM (مدیر ماشین مجازی)، یک لودر ELF برای بارگیری ماژول های VVM و یک برنامه bfm برای مدیریت هایپروایزر از فضای کاربر است. ابزارهایی را برای نوشتن برنامه‌های افزودنی با استفاده از عناصر تعریف‌شده در مشخصات C++11/14، کتابخانه‌ای برای باز کردن پشته استثنا (باز کردن) و همچنین کتابخانه زمان اجرا خود برای پشتیبانی از استفاده از سازنده/ویرانگر و ثبت کنترل‌کننده‌های استثنا فراهم می‌کند.

یک سیستم مجازی سازی مبتنی بر Bareflank در حال توسعه است جعبه دار، که از سیستم های مهمان در حال اجرا پشتیبانی می کند و امکان استفاده از ماشین های مجازی سبک با لینوکس و Unikernel را برای اجرای سرویس ها یا برنامه های تخصصی فراهم می کند. در قالب سرویس‌های ایزوله، می‌توانید هم وب سرویس‌های معمولی و هم برنامه‌هایی را اجرا کنید که دارای الزامات خاصی برای قابلیت اطمینان و امنیت هستند، به دور از تأثیر محیط میزبان (محیط میزبان در یک ماشین مجازی جداگانه ایزوله شده است).

نوآوری های اصلی Bareflank 2.0:

  • اضافه شدن پشتیبانی برای راه اندازی Bareflank به طور مستقیم از UEFI برای اجرای بعدی سیستم عامل در یک ماشین مجازی.
  • یک مدیر حافظه جدید پیاده سازی شده است که مشابه مدیران حافظه SLAB/Buddy در لینوکس طراحی شده است. مدیر حافظه جدید کاهش تکه تکه شدن را نشان می دهد، امکان عملکرد بالاتر را فراهم می کند و از تخصیص حافظه پویا به هایپروایزر پشتیبانی می کند. bfdriver، که به شما امکان می دهد اندازه اولیه هایپروایزر را کاهش دهید و بسته به تعداد هسته های CPU مقیاس بهینه را انجام دهید.
  • یک سیستم ساخت جدید مبتنی بر CMake، مستقل از مفسر فرمان، امکان تسریع قابل توجهی در کامپایل هایپروایزر را فراهم می کند و پشتیبانی آینده را برای معماری های اضافی، مانند ARM، ساده می کند.
  • کد سازماندهی مجدد شده و ساختار متون مبدأ ساده شده است. پشتیبانی بهبود یافته برای پروژه های مرتبط مانند هایپرکرنل بدون نیاز به تکرار کد. کد به وضوح جدا شده است هایپروایزرباز کردن کتابخانه، زمان اجرا، ابزارهای کنترل، بوت لودر و SDK.
  • بیشتر API ها، به جای مکانیسم های ارثی که قبلاً در C++ استفاده می شد، به استفاده از هیئت نمایندگی، که API را ساده کرد، عملکرد را افزایش داد و مصرف منابع را کاهش داد.

منبع: opennet.ru

اضافه کردن نظر