首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何调试Bootloader Qemu ARM?

如何调试Bootloader Qemu ARM?
EN

Stack Overflow用户
提问于 2019-02-28 22:37:21
回答 1查看 960关注 0票数 0

我正在尝试使用QEMU引导内核(从固件中提取)。

Qemu模拟似乎是从0x0开始的。

问题是从0x00x04000000的内存只填满了0

如何调试bootloader?

EN

回答 1

Stack Overflow用户

发布于 2019-03-01 04:00:13

你没有说你的命令行是什么。QEMU开始执行的地址取决于很多因素:

您正在为QEMU传递architecture

  • which镜像文件
  • 传递给-kernel (ELF、普通内核镜像、uImage等)的任何文件的文件格式

不过,一般来说,您不应该期望能够从一个Arm硬件的固件转储中随机拉出一个内核映像,并在QEMU下运行它。这是因为每个ARM板或机器都是不同的-- RAM可能在不同的位置,串口等设备在不同的地址,等等--内核只能在编译为支持的系统上引导。(a) QEMU没有固件转储所针对的硬件位的特定仿真,以及(b)固件中的内核未被构建为在QEMU支持的任何主板类型上运行的可能性很高。因此,几乎可以肯定的是,它只会在启动早期崩溃,而不会产生任何输出。

如果您想要调试早期启动过程中发生的事情,最好的方法可能是使用QEMU内置的gdbstub,并将一个支持来宾架构的gdb附加到它。您可能还会发现QEMU的内部日志记录通过'-d‘选项很有用,尽管它需要对QEMU的工作原理有一定的了解才能理解输出。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54928101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档