《编译与反编译技术实战》——1.8 仿真与分析工具QEMU

简介:

本节书摘来自华章计算机《编译与反编译技术实战》一书中的第1章,第1.8节,作者 刘晓楠 陶红伟 岳峰 戴超,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

1.8 仿真与分析工具QEMU

QEMU是一套由Fabrice Bellard所编写的以GPL许可证分发源码的模拟处理器,在GNU/Linux平台上使用广泛。Bochs、PearPC等与其类似,但不具备其许多特性,比如高速度及跨平台的特性,通过KQEMU这个闭源的加速器,QEMU能模拟至接近真实计算机的速度。

目前,0.9.1及之前版本的QEMU可以使用KQEMU加速器。在QEMU 1.0之后的版本都无法使用KQEMU,但可利用qemu-kvm加速模块,并且加速效果以及稳定性明显好于KQEMU。

QEMU有以下两种主要运作模式:

1)进程级模拟模式。在这种模式下,QEMU能以二进制翻译的方式启动那些为不同处理器编译的Linux可执行程序。典型的程序是Wine及Dosemu。

2)系统级模拟模式。QEMU能模拟整个计算机系统,包括中央处理器及其他周边设备。它使得为跨平台编写的程序进行测试及除错工作变得容易。也能用来在一台主机上虚拟数台不同虚拟计算机。

该软件的优点有:

  • 默认支持多种架构。可以模拟IA 32、AMD 64、MIPS、SPARC、PowerPC、龙芯等多种架构。
  • 可扩展,可自定义新的指令集。
  • 开源,可移植,仿真速度快。
  • 在支持硬件虚拟化的x86架构上可以使用KVM加速配合内核ksm大页面备份内存,速度稳定,远超过VMware ESX。
  • 可以在其他操作系统平台上运行Linux程序。
  • 可以存储及还原运行状态。
  • 可以支持虚拟网卡等多种外设。
  • 该软件的缺点有:
  • 对微软视窗及某些主机操作系统的支持不完善(某些模拟的系统仅能运行)。
  • 对不常用的架构的支持不完善。
  • 除非使用KQEMU加速器,否则其模拟速度仍不及其他虚拟软件,如VMware。
  • 比其他模拟软件难安装及使用。
相关文章
|
IDE 开发工具 Windows
 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之NavDestination组件
 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之NavDestination组件
466 3
|
11月前
|
机器学习/深度学习 存储 人工智能
【科普向】我们所说的AI模型训练到底在训练什么?
人工智能(AI)模型训练类似于厨师通过反复实践来掌握烹饪技巧。它通过大量数据输入,自动优化内部参数(如神经网络中的权重和偏置),以最小化预测误差或损失函数,使模型在面对新数据时更加准确。训练过程包括前向传播、计算损失、反向传播和更新权重等步骤,最终生成权重文件保存模型参数,用于后续的应用和部署。理解生物神经网络的工作原理为人工神经网络的设计提供了灵感,后者广泛应用于图像识别、自然语言处理等领域。
|
机器学习/深度学习 人工智能 TensorFlow
2023年人工智能开源项目前20名
人工智能(AI)正在迅速成为现代世界的变革力量,开源项目在这一转型中发挥了重要作用。开源人工智能项目使尖端技术的访问民主化,鼓励该领域专家之间的合作,并能够开发复杂而强大的人工智能解决方案来解决现实世界的问题。
2539 0
|
弹性计算 负载均衡 网络安全
阿里云专有网络是什么?专有网络VPC有什么用?
2023阿里云专有网络是什么?专有网络VPC有什么用?
1074 0
阿里云专有网络是什么?专有网络VPC有什么用?
|
JavaScript
vue element plus Radio 单选框
vue element plus Radio 单选框
581 0
|
Java Spring
SpringBoot-yaml语法规则和读取数据
SpringBoot-yaml语法规则和读取数据
SpringBoot-yaml语法规则和读取数据
|
网络安全
【网络安全 | XCTF】simple_transfer
【网络安全 | XCTF】simple_transfer
301 0
|
前端开发 数据挖掘
【SPSS】频数分析和基本描述统计量详细操作教程(附实战案例)
【SPSS】频数分析和基本描述统计量详细操作教程(附实战案例)
3450 0
|
存储 数据安全/隐私保护
miss_01(简单密码学及音频隐写)
miss_01(简单密码学及音频隐写)
383 0
|
SQL 安全 Oracle
看完这篇 教你玩转渗透测试靶机Vulnhub——Healthcare:1
看完这篇 教你玩转渗透测试靶机Vulnhub——Healthcare:1
497 0