QEMU和FVP模型区别
QEMU and FVP models difference
有谁知道 ARM 的固定虚拟平台 (FVP) 二进制文件(通常 需要付费许可)和 QEMU 的免费模型之间的区别?
例如:他们的 strong/weak 调试和跟踪能力等要点是什么?
我想说的是,尽管它们可以进行比较,但由于它们针对的目的不同,因此不应该进行比较。请注意,此处使用的术语在 ) 中定义为您指定的 FVP 和 fastmodel。
我会根据我在这些工具上的尝试来尝试回答。
速度与准确性。
QEMU 不如 FVP 准确,但速度更快。关于这个有很多不同的来源(尽管我无法获得关于基准测试的论文)但我观察到 QEMU 比启动的 fastmodel 快 x2 Linux.
关于准确性:如果您只想运行 应用程序,那么QEMU 适合您。但是,如果您想获得 micro-architecture(核心内部的内容,了解安全扩展,..),则需要 fastmodel。如果您需要访问新的 extensions/updates 处理器,那么 fastmodel 将是第一个拥有这些功能的处理器。可能甚至在芯片可用之前,因为它是在 Arm 内开发的。
支持
QEMU 是 open-source,因此您可以让社区帮助您甚至深入研究代码。而 Arm 有支持 "hotline",您无法访问代码。
两者都有很多关于如何使用该工具的文档,而且很容易找到。
运行 都在 Windows/Linux。
功能
QEMU 还提供了 运行 qemu-static
的可能性(参见 Ubuntu 中的包,..)和 this page 给出了它的概述。 Fastmodel 不提供此功能。
我在 QEMU 中找不到如何以与 done within FVP 相同的粒度更新系统配置。
创建新的 SoC
系统 Canvas 可在 Fastmodel(参见 Documentation)中使用,这是一个可用于生成 SoC 的图形界面。
在QEMU内部,好像有一些predefined platforms you can use. While using a FVP, there are listed in here.
调试
QEMU 似乎只提供 GDB 作为调试器(https://wiki.qemu.org/Documentation/Debugging). FVP can be used with CADI、GDB、ModelDebugger。它似乎使用 Arm 调试器提供了有关系统组件的更多信息。
有谁知道 ARM 的固定虚拟平台 (FVP) 二进制文件(通常 需要付费许可)和 QEMU 的免费模型之间的区别?
例如:他们的 strong/weak 调试和跟踪能力等要点是什么?
我想说的是,尽管它们可以进行比较,但由于它们针对的目的不同,因此不应该进行比较。请注意,此处使用的术语在
我会根据我在这些工具上的尝试来尝试回答。
速度与准确性。
QEMU 不如 FVP 准确,但速度更快。关于这个有很多不同的来源(尽管我无法获得关于基准测试的论文)但我观察到 QEMU 比启动的 fastmodel 快 x2 Linux.
关于准确性:如果您只想运行 应用程序,那么QEMU 适合您。但是,如果您想获得 micro-architecture(核心内部的内容,了解安全扩展,..),则需要 fastmodel。如果您需要访问新的 extensions/updates 处理器,那么 fastmodel 将是第一个拥有这些功能的处理器。可能甚至在芯片可用之前,因为它是在 Arm 内开发的。
支持
QEMU 是 open-source,因此您可以让社区帮助您甚至深入研究代码。而 Arm 有支持 "hotline",您无法访问代码。
两者都有很多关于如何使用该工具的文档,而且很容易找到。
运行 都在 Windows/Linux。
功能
QEMU 还提供了 运行 qemu-static
的可能性(参见 Ubuntu 中的包,..)和 this page 给出了它的概述。 Fastmodel 不提供此功能。
我在 QEMU 中找不到如何以与 done within FVP 相同的粒度更新系统配置。
创建新的 SoC
系统 Canvas 可在 Fastmodel(参见 Documentation)中使用,这是一个可用于生成 SoC 的图形界面。
在QEMU内部,好像有一些predefined platforms you can use. While using a FVP, there are listed in here.
调试
QEMU 似乎只提供 GDB 作为调试器(https://wiki.qemu.org/Documentation/Debugging). FVP can be used with CADI、GDB、ModelDebugger。它似乎使用 Arm 调试器提供了有关系统组件的更多信息。