QEMU是一种通用的开源机器和用户空间模拟器和虚拟机。
QEMU能够在软件中模拟完整的机器,而无需硬件虚拟化支持。通过使用动态翻译,它可以实现非常好的性能。 QEMU还可以与XEN和KVM管理程序集成,以提供仿真的硬件,同时允许管理程序管理CPU。借助管理程序支持,QEMU可以实现CPU的接近天然性能。当Qemu直接模拟CPU时,它可以在另一台机器(例如X86_64 PC板)上运行为一台机器制造的操作系统(例如ARMV7板)。
QEMU还能够为Linux和BSD内核接口提供用户空间API虚拟化。这允许使用不同的架构ABI(例如Linux X86_64 ABI)在主机上运行二进制ABI(例如Linux PPC64 ABI)编译的二进制文件。这不涉及任何硬件仿真,而只是CPU和SYSCALL仿真。
QEMU旨在适合各种用例。希望完全控制其行为和设置的用户可以直接调用它。它还旨在通过提供稳定的命令线接口和监视API来促进集成到更高级别的管理层中。当使用Ovirt,OpenStack和Virt-Manager等开源应用程序时,通常通过Libvirt库间接调用它。
QEMU整体是根据GNU通用公共许可证(版本2)发布的。有关完整许可详细信息,请咨询许可证文件。
可以在https://www.qemu.org/documentation/上在线托管文档。当前开发版本的文档可从https://www.qemu.org/docs/master/提供从源树中的docs/
文件夹生成,并且由sphinx构建。
QEMU是多平台软件,旨在在所有现代Linux平台,OS-X,Win32(通过MINGW64工具链)和各种其他UNIX目标上构建。构建QEMU的简单步骤是:
mkdir build
cd build
../configure
make
还可以通过QEMU网站在线找到其他信息:
QEMU源代码在GIT版本控制系统下维护。
git clone https://gitlab.com/qemu-project/qemu.git
提交补丁时,一种常见的方法是使用“ git格式 - 点”和/或“ git send-email”进行格式,并将邮件发送到[email protected]邮件列表。提交的所有补丁必须包含作者的“签名”线。补丁应遵循开发人员指南样式部分中规定的准则。
有关提交补丁的其他信息,请访问QEMU网站在线找到:
QEMU网站还维护在源控制下。
git clone https://gitlab.com/qemu-project/qemu-web.git
创建了一个“ git-publish”实用程序,以使上述过程不那么麻烦,强烈建议您进行定期贡献,甚至仅用于发送连续的补丁程序修订版。它还需要一个工作的“ git send-email”设置,默认情况下并不能自动化所有内容,因此您可能需要一次手动浏览以上步骤。
有关安装说明,请转到:
“ git-publish”的工作流程是:
$ git checkout master -b my-feature
$ # work on new commits, add your 'Signed-off-by' lines to each
$ git publish
如果您将来需要参考,则您的补丁程序系列将被发送并标记为My-Feature-V1。
发送V2:
$ git checkout my-feature # same topic branch
$ # making changes to the commits (using 'git rebase', for example)
$ git publish
您的补丁程序系列将在主题中以“ V2”标签发送,并且GIT提示将标记为My-feature-V2。
QEMU项目使用GitLab问题来跟踪错误。在运行从QEMU GIT或上游发布的构建代码时发现的错误应通过以下方式报告:
如果通过操作系统供应商预先构建的二进制软件包使用QEMU,则最好先向供应商自己的错误跟踪器报告错误。如果已知该错误也会影响最新的上游代码,则也可以通过GitLab进行报告。
有关错误报告的更多信息,请参阅:
有关版本的历史记录和发行说明,请访问https://wiki.qemu.org/changelog/或查看GIT历史记录以获取更多详细信息。
可以通过多种方式与QEMU社区联系,两种主要方法是电子邮件和IRC:
有关与社区联系的其他方法的信息,可以通过QEMU网站在线找到: