Dự án QEMU 9.1 đã được phát hành. Là một trình giả lập, QEMU cho phép bạn chạy một chương trình được xây dựng cho một nền tảng phần cứng trên một hệ thống có kiến trúc hoàn toàn khác, ví dụ, chạy một ứng dụng ARM trên PC tương thích x86. Ở chế độ ảo hóa QEMU, hiệu năng thực thi mã trong môi trường biệt lập gần bằng hiệu năng của hệ thống phần cứng nhờ việc thực thi trực tiếp các lệnh trên CPU và sử dụng hypervisor Xen hoặc mô-đun KVM. Linuxhoặc mô-đun NVMM trong NetBSD.
Dự án này ban đầu được Fabrice Bellard tạo ra nhằm cung cấp khả năng chạy các tập tin thực thi được biên dịch cho nền tảng x86. Linux Trên các kiến trúc khác ngoài x86. Trong suốt quá trình phát triển, hỗ trợ giả lập đầy đủ đã được bổ sung cho 14 kiến trúc phần cứng, và số lượng thiết bị phần cứng được giả lập đã vượt quá 400. Trong quá trình chuẩn bị phiên bản 9.1, hơn 2800 thay đổi đã được thực hiện bởi 263 nhà phát triển.
Những cải tiến chính được thêm vào trong QEMU 9.1:
- Bộ công cụ di chuyển khách cung cấp hỗ trợ tăng tốc độ nén dữ liệu bằng công nghệ IAA (Bộ tăng tốc phân tích trong bộ nhớ Intel) hoặc UADK (Bộ công cụ phát triển bộ tăng tốc không gian người dùng). Cải thiện hỗ trợ phục hồi sau các lỗi di chuyển ở chế độ sao chép sau.
- Cơ chế virtio, được sử dụng để tổ chức tương tác giữa hệ thống khách và hệ thống máy chủ, đã bổ sung hỗ trợ cho chức năng VIRTIO_F_NOTIFICATION_DATA, cho phép tài xế ở phía khách truyền dữ liệu bổ sung cùng với các thông báo được gửi đi. Ví dụ, chức năng này có thể được sử dụng để gửi dữ liệu gỡ lỗi hoặc để tối ưu hóa hiệu suất.
- Trong guest-agent cho Linux-Hệ thống đã thêm lệnh guest-network-get-route, và đối với WindowsCác lệnh Guest-ssh-* đã được thêm vào hệ thống. Giao diện dòng lệnh hiện cung cấp các tùy chọn tùy chỉnh mở rộng cho các lệnh "được cho phép" và "bị chặn".
- Trình mô phỏng kiến trúc ARM đã bổ sung hỗ trợ cho các phần mở rộng bộ xử lý EAT_NMI, FEAT_CSV2_3, FEAT_ETS2, FEAT_Spec_FPACC, FEAT_WFxT, FEAT_Debugv8p8. Khi mô phỏng đơn vị quản lý bộ nhớ SMMUv3 (Đơn vị quản lý bộ nhớ hệ thống), hỗ trợ cho các trang bộ nhớ lồng nhau và hai cấp sẽ được triển khai. Đối với bo mạch Xilinx Zynq, hỗ trợ mô phỏng cấu hình đa bộ xử lý, bộ điều khiển hiển thị DM163 và bộ điều khiển bộ đệm đã được thêm vào.
- Trình mô phỏng kiến trúc LoongArch cung cấp khả năng tải trực tiếp hình ảnh hạt nhân ở định dạng ELF và thêm hỗ trợ chạy tới 256 CPU bằng cách sử dụng tiện ích mở rộng extioi. Cải thiện khả năng gỡ lỗi.
- Trình mô phỏng kiến trúc RISC-V bổ sung hỗ trợ cho các phần mở rộng bộ xử lý Zve32x, Zve64x, Zimop, Zcmop, Zama16b, Zabha, Zawrs và Smcntrpmf, cũng như phiên bản 1.13 của Đặc tả kiến trúc tập lệnh đặc quyền. Cải thiện khả năng gỡ lỗi.
- Trình mô phỏng kiến trúc SPARC đã bổ sung hỗ trợ cho các phần mở rộng bộ xử lý FMAF, IMA, VIS3 và VIS4.
- Trong trình giả lập kiến trúc x86 dành cho hypervisor KVM Khả năng khởi chạy hệ thống khách sử dụng phần mở rộng bộ xử lý AMD SEV-SNP (Secure Nested Paging), đảm bảo hoạt động an toàn với bảng trang bộ nhớ lồng nhau, đã được triển khai. Hỗ trợ mô phỏng CPU dựa trên các kiến trúc vi xử lý Icelake-Server-v7, SapphireRapids-v3 và SierraForest cũng đã được thực hiện.
- Lỗ hổng bảo mật (CVE-2024-7409) đã được khắc phục. người phục vụ Các thiết bị chặn NBD (Network Block Device) cho phép, thông qua các thao tác trong hệ thống khách, đạt được sự chấm dứt bất thường của QEMU trong quá trình hoạt động nbd-server-stop, ngay cả khi máy khách không có khóa TLS để kết nối với máy chủ NBD.
Nguồn: opennet.ru
