该项目最初由 Fabrice Bellard 创建,旨在允许为 x86 平台构建的 Linux 可执行文件在非 x86 架构上运行。 经过多年的发展,已经为14种硬件架构增加了完整的仿真支持,仿真的硬件设备数量已超过400个。为准备4.2版本,2200位开发人员进行了198多次更改。
钥匙
- 经典的TCG(Tiny Code Generator)代码生成器支持监控处理器指令和内存地址的插件;
- 在块设备驱动程序中
新开发银行 (网络块设备)提供更高效的读时复制请求处理。 NBD 服务器代码针对复制稀疏图像(带空白)进行了优化。 对 NBD 客户端和服务器实现进行了总体改进; - 使用 AES-XTS 算法提高了 LUKS 磁盘加密的性能;
- vfio-pci 添加了对“failover_pair_id”属性的支持,以简化 VFIO 设备的迁移;
- virtio-mmio 添加了对 virtio 兼容 2 标准和 virtio 1.1 规范中定义的打包虚拟队列机制的支持(
虚拟队列 ) 以批处理模式与虚拟 I/O 设备交换数据; - x86 仿真器中添加了一种新型仿真机“microvm”,使用 virtio-mmio 代替 PCI 来优化性能。 实现了使用“-cpu”标志启用和禁用 VMX 的功能。 添加了对模拟 AVX512 BFloat16 扩展的支持。 提供对新 CPU 型号 Denverton(基于 Atom 的服务器 SoC)、Snowridge 和 Dhyana 的支持。 稳定支持 macOS Hypervisor 框架(“-accel hvf”);
- ARM 架构仿真器增加了对仿真 Aspeed AST2600 SoC(“ast2600-evb”)的支持。 添加了对具有 STDOUT_STDERR/EXIT_EXTENDED 扩展的 Semihosting 2.0 技术的支持,该技术允许模拟设备使用 stdout、stderr 和 stdin 在主机端创建文件。 KVM 增加了使用超过 256 个 CPU 的能力,并提供对 SVE SIMD 指令的支持。 在类型为“的虚拟机中
道德 » 已实现内存热插拔支持。 使用 TCG 代码生成器改进了仿真性能。 - PowerPC 架构仿真器现在能够仿真 POWER9 指令 mffsce、mffscrn 和 mffscrni。 模拟“powernv”机器添加了对 Homer 和 OCC SRAM 系统设备的支持;
- 在RISC-V架构仿真器中,添加了“-initrd”选项,并且能够在调试器中查看架构的完整状态;
- s390架构仿真器支持IEP(Instruction Execution Protection)指令;
- 68k 架构模拟器增加了模拟 Macintosh Quadro 800 和经典 NeXTcube 系统的初始功能;
- xtensa架构模拟器添加了一种新型模拟机“virt”,并实现了对ABI call0的支持,以进行用户空间模拟。
来源: opennet.ru