有没有办法从随机内存内容开始在 QEMU(系统模式)上运行二进制文件?
我的用例是一个二进制文件,其中包含某种第一阶段引导加载程序和用户应用程序。我想测试引导加载程序并检查所有内存部分是否已正确初始化(例如,.bss 已归零,或 .data 已复制),诸如此类。然而,QEMU 模型似乎是从全零内存开始的,而在实际芯片中情况并非总是如此。
您可以使用gdb的
compare-sections
来查看数据是否符合您的预期:
(gdb) help compare-sections
Compare section data on target to the exec file.
Argument is a single section name (default: all loaded sections).
To compare only read-only loaded sections, specify the -r option.
我不知道如何在启动时使用随机(或非零)模式初始化内存...