如何测试x64 CPU仿真器

时间:2014-01-21 08:44:02

标签: x86 emulation x86-64 i386

在哪里可以找到代码(可启动映像,ROM转储,可执行文件)来测试CPU的所有功能,以检查仿真器是否正确模拟所有内容?诸如故障,异常,异常指令,286保护模式,调试寄存器行为等等。几乎每个CPU的功能。

是否存在各种CPU风格的CPU怪癖列表?我知道一些在Intel和AMD上执行不同的指令,但我想知道是否有大量列表。

谢谢。

1 个答案:

答案 0 :(得分:1)

x86仿真器或模拟器的完整指令和操作数覆盖可能难以实现。 http://wiki.qemu.org/Testing有一些您可以尝试进行启动时覆盖的图像。他们的邮件列表也可能有助于探索如何找出先验的方法和功能覆盖率,启动这些图像中的一个或另一个并在其上执行某些操作将会得到你。

bochs相同。我发现thread on their mailing list表示他们可能有一些想法甚至可能对您有用的代码。

Intel Pin以及基于它的工具如PinPointsSimPoint可能有助于生成代表性跟踪并获得良好 - 如果不一定完美和完整 - 覆盖指令集和CPU特征

Agner Fog's sitehttp://www.sandpile.org/可能是揭示特定CPU中的古怪,未定义或错误行为的有用起点,尽管在这两个站点上快速搜索我无法查看更多内容直接相关的链接。

无论你做什么,祝你好运!