【发布时间】:2018-01-05 22:43:24
【问题描述】:
我正在制作一个操作系统,并且正在使用 Qemu 对其进行调试。我想要一种在某些指令结束时读取内存大块的方法。怎么做?可以对 Qemu 说将 ram 复制到文件中吗?如果不是我能做什么?
【问题讨论】:
-
您可以使用 QEMU 监视器来执行此操作。你可以在 QEMU 中设置一个断点,让程序运行到你想转储内存的地方。单击您的程序正在运行的 QEMU 窗口,然后使用 Alt-2(或者可能是 control-alt-2)切换到监视器。你应该得到一个命令行。您可以使用命令
pmemsave转储物理内存,例如pmemsave 0x100000 4096 outfile.mem,它将转储从0x100000 开始的4096 字节并将其转储到文件outfile.mem。您可以使用memsave而不是pmemsave转储虚拟内存。 -
我重做了我的评论。它错误地说
f2应该是2。监视器键序列是 control-alt-2 或 alt-2