“xx-softmmu”和“xx-linux-user”的区别和关系是什么?

24

从源代码构建qemu时,我发现针对每个CPU架构,有两个目标列表选项:xx-softmmuxx-linux-user。例如:

x86_64-softmmu
x86_64-linux-user

我无法搜索出两个选项之间的区别。有人能介绍一下它们之间的差异和关系吗?

1个回答

22
简单来说,xxx-softmmu将编译qemu-system-xxx,这是一个模拟的xxx架构机器(系统仿真)。当它重置时,起始点将是该体系结构的复位向量。而xxx-linux-user编译qemu-xxx,允许您在xxx架构中运行用户应用程序(用户模式仿真)。它将查找用户应用程序的主函数,并从那里开始执行。
请参见https://en.wikipedia.org/wiki/QEMU#Operating_modes

1
准确来说,当使用用户模式仿真时,它将从可执行文件的入口点(通常为_start)开始,但这只是一个细节。 - minmaxavg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接