پس از هشت ماه توسعه، هایپروایزر رایگان Xen 4.16 منتشر شد. شرکت هایی مانند Amazon، Arm، Bitdefender، Citrix و EPAM Systems در توسعه نسخه جدید شرکت کردند. انتشار بهروزرسانیها برای شعبه Xen 4.16 تا 2 ژوئن 2023 و انتشار رفع آسیبپذیریها تا 2 دسامبر 2024 ادامه خواهد داشت.
تغییرات کلیدی در Xen 4.16:
- مدیر TPM، که عملکرد تراشههای مجازی برای ذخیره کلیدهای رمزنگاری (vTPM) را که بر اساس یک TPM فیزیکی مشترک (ماژول پلتفرم مورد اعتماد) پیادهسازی شده است، تضمین میکند، برای اجرای پشتیبانی از مشخصات TPM 2.0 تصحیح شده است.
- افزایش وابستگی به لایه PV Shim که برای اجرای مهمانهای پیش مجازی اصلاح نشده (PV) در محیطهای PVH و HVM استفاده میشود. در آینده، استفاده از مهمانهای مجازیسازیشده 32 بیتی تنها در حالت PV Shim امکانپذیر خواهد بود، که تعداد مکانهایی را در هایپروایزر کاهش میدهد که به طور بالقوه میتوانند دارای آسیبپذیری باشند.
- قابلیت بوت شدن در دستگاه های اینتل بدون تایمر قابل برنامه ریزی (PIT، برنامه ریزی فاصله تایمر) اضافه شده است.
- اجزای منسوخ را پاک کرد، ساخت کد پیشفرض «qemu-xen-traditional» و PV-Grub را متوقف کرد (نیاز به این چنگالهای مخصوص Xen پس از انتقال تغییرات با پشتیبانی Xen به ساختار اصلی QEMU و Grub ناپدید شد).
- برای مهمانان با معماری ARM، پشتیبانی اولیه از شمارنده های مانیتور عملکرد مجازی اجرا شده است.
- پشتیبانی بهبود یافته از حالت dom0less، که به شما امکان می دهد از استقرار محیط dom0 هنگام راه اندازی ماشین های مجازی در مرحله اولیه بوت سرور اجتناب کنید. تغییرات ایجاد شده امکان پیاده سازی پشتیبانی از سیستم های ARM 64 بیتی با سیستم عامل EFI را فراهم کرد.
- پشتیبانی بهبودیافته از سیستمهای 64 بیتی ARM ناهمگن مبتنی بر معماری big.LITTLE، که هستههای قدرتمند اما پرقدرت و هستههای با عملکرد پایینتر اما کم مصرفتر را در یک تراشه ترکیب میکنند.
در همان زمان، اینتل انتشار هایپروایزر Cloud Hypervisor 20.0 را منتشر کرد که بر اساس اجزای پروژه مشترک Rust-VMM ساخته شده بود، که علاوه بر اینتل، علی بابا، آمازون، گوگل و رد هت نیز در آن مشارکت دارند. Rust-VMM به زبان Rust نوشته شده است و به شما این امکان را می دهد که هایپروایزرهای خاص کار را ایجاد کنید. Cloud Hypervisor یکی از این هایپروایزرها است که یک مانیتور ماشین مجازی سطح بالا (VMM) را ارائه می دهد که در بالای KVM اجرا می شود و برای وظایف بومی ابری بهینه شده است. کد پروژه تحت مجوز Apache 2.0 در دسترس است.
Cloud Hypervisor بر اجرای توزیعهای لینوکس مدرن با استفاده از دستگاههای paravirtualized مبتنی بر virtio متمرکز است. از جمله اهداف کلیدی ذکر شده عبارتند از: پاسخگویی بالا، مصرف کم حافظه، عملکرد بالا، پیکربندی ساده و کاهش بردارهای حمله احتمالی. پشتیبانی شبیهسازی به حداقل میرسد و تمرکز بر مجازیسازی است. در حال حاضر فقط سیستم های x86_64 پشتیبانی می شوند، اما پشتیبانی AArch64 برنامه ریزی شده است. برای سیستمهای مهمان، در حال حاضر تنها نسخههای ۶۴ بیتی لینوکس پشتیبانی میشوند. CPU، حافظه، PCI و NVDIMM در مرحله مونتاژ پیکربندی می شوند. امکان انتقال ماشین های مجازی بین سرورها وجود دارد.
در نسخه های جدید:
- برای معماریهای x86_64 و aarch64، اکنون حداکثر 16 بخش PCI مجاز است، که تعداد کل دستگاههای PCI مجاز را از 31 به 496 افزایش میدهد.
- پشتیبانی از اتصال CPU های مجازی به هسته های فیزیکی CPU (CPU pinning) پیاده سازی شده است. برای هر vCPU، اکنون می توان مجموعه محدودی از CPU های میزبان را تعریف کرد که اجرا بر روی آنها مجاز است، که می تواند هنگام نگاشت مستقیم (1:1) منابع میزبان و مهمان یا هنگام اجرای یک ماشین مجازی بر روی یک گره NUMA خاص مفید باشد.
- پشتیبانی بهبود یافته برای مجازی سازی I/O. هر منطقه VFIO اکنون می تواند به حافظه نگاشت شود، که تعداد خروجی های ماشین مجازی را کاهش می دهد و عملکرد ارسال دستگاه به ماشین مجازی را بهبود می بخشد.
- در کد Rust، کار برای جایگزینی بخش های ناامن با پیاده سازی های جایگزین اجرا شده در حالت ایمن انجام شده است. برای بخشهای ناامن باقیمانده، نظرات مفصلی اضافه شده است که توضیح میدهد چرا کد ناامن باقیمانده میتواند ایمن در نظر گرفته شود.
منبع: opennet.ru