انتشار پروژه QEMU 7.1 ارائه شده است. به عنوان یک شبیه ساز، QEMU به شما این امکان را می دهد که برنامه ای را که برای یک پلتفرم سخت افزاری کامپایل شده روی سیستمی با معماری کاملاً متفاوت اجرا کنید، به عنوان مثال، یک برنامه ARM را روی رایانه شخصی سازگار با x86 اجرا کنید. در حالت مجازی سازی در QEMU، عملکرد اجرای کد در محیط ایزوله به دلیل اجرای مستقیم دستورالعمل ها بر روی CPU و استفاده از هایپروایزر Xen یا ماژول KVM، نزدیک به سیستم سخت افزاری است.
این پروژه در ابتدا توسط فابریس بلارد ایجاد شد تا امکان اجرای فایلهای اجرایی کامپایل شده برای پلتفرم x86 را فراهم کند. Linux روی معماریهایی غیر از x86. در طول سالهای توسعه، پشتیبانی از شبیهسازی کامل برای ۱۴ معماری سختافزاری اضافه شد و تعداد دستگاههای سختافزاری شبیهسازیشده از ۴۰۰ فراتر رفت. در آمادهسازی نسخه ۶.۲، بیش از ۲۳۰۰ تغییر از ۱۸۹ توسعهدهنده اعمال شد.
بهبودهای کلیدی اضافه شده در QEMU 7.1:
- بر روی پلت فرم Linux گزینه ارسال بدون کپی پیادهسازی شده است که امکان انتقال صفحات حافظه را در حین مهاجرت زنده بدون بافرینگ میانی فراهم میکند.
- QMP (پروتکل ماشین QEMU) توانایی استفاده از دستور block-export-add را برای صادرات تصاویر NBD با داده های صفحه در حالت "کثیف" اضافه کرده است. دستورات جدید 'query-stats' و 'query-stats-schema' نیز به آمار پرس و جو از زیرسیستم های مختلف QEMU اضافه شده اند.
- Guest Agent پشتیبانی از پلتفرم Solaris را بهبود بخشیده است و دستورات جدید 'guest-get-diskstats' و 'guest-get-cpustats' را برای نمایش وضعیت دیسک و CPU اضافه کرده است. خروجی اطلاعات از NVMe SMART به دستور 'guest-get-disks' و خروجی اطلاعات مربوط به نوع اتوبوس NVMe به دستور 'guest-get-fsinfo' اضافه شده است.
- یک شبیه ساز جدید LoongArch با پشتیبانی از نوع 64 بیتی معماری مجموعه دستورالعمل LoongArch (LA64) اضافه شده است. این شبیه ساز از پردازنده های Loongson 3 5000 و Loongson 7A1000 Northbridge پشتیبانی می کند.
- شبیه ساز ARM انواع جدیدی از ماشین های شبیه سازی شده را پیاده سازی می کند: Aspeed AST1030 SoC، Qaulcomm و AST2600/AST1030 (fby35). اضافه شدن پشتیبانی از شبیهسازی پردازندههای Cortex-A76 و Neoverse-N1، و همچنین پسوندهای پردازنده SME (افزونههای ماتریس مقیاسپذیر)، RAS (قابلیت اطمینان، در دسترس بودن، سرویسپذیری) و دستورات برای مسدود کردن نشتها از حافظه پنهان داخلی در حین اجرای گمانهزنی دستورالعملها در CPU. برای ماشین های 'virt'، شبیه سازی کنترل کننده وقفه GICv4 پیاده سازی شده است.
- در شبیهساز معماری x86 برای KVM پشتیبانی از مجازیسازی مکانیزم ردیابی LBR (آخرین رکورد شاخه) اضافه شد.
- شبیه ساز معماری HPPA سیستم عامل جدیدی را بر اساس SeaBIOS v6 ارائه می دهد که از استفاده از صفحه کلید PS/2 در منوی بوت پشتیبانی می کند. شبیه سازی پورت سریال بهبود یافته است. فونت های کنسول STI اضافی اضافه شد.
- شبیه ساز معماری MIPS برای بردهای Nios2 (-machine 10m50-ghrd) شبیه سازی یک کنترل کننده وقفه برداری برداری و مجموعه سایه ای از ثبات ها را پیاده سازی می کند. بهبود مدیریت استثنا
- شبیه ساز معماری OpenRISC برای دستگاه 'or1k-sim' توانایی استفاده از 4 دستگاه UART 16550A را اضافه کرده است.
- شبیه ساز معماری RISC-V پشتیبانی از افزونه های مجموعه دستورالعمل های جدید (ISA) تعریف شده در مشخصات 1.12.0 را اضافه کرده است، همچنین پشتیبانی از پسوند Sdtrig و پشتیبانی بهبود یافته از دستورالعمل های برداری را اضافه کرده است. بهبود قابلیت های اشکال زدایی پشتیبانی از TPM (Trusted Platform Module) به ماشین شبیه سازی شده 'virt' و پشتیبانی Ibex SPI به دستگاه 'OpenTitan' اضافه شده است.
- شبیه ساز معماری 390x از پسوندهای VEF 2 (Vector-Enhancements Facility 2) پشتیبانی می کند. بایوس s390-ccw امکان بوت شدن از دیسک هایی با اندازه سکتوری غیر از 512 بایت را فراهم می کند.
- شبیه ساز معماری Xtensa پشتیبانی از هسته های lx106 و کدهای شی را برای تست کش اضافه کرده است.
منبع: opennet.ru
