我正在尝试在 Qemu 上模拟 cavium octeon 的 mips64 linux 内核。我目前在使用模式初始化代码方面遇到一些问题,并且想要调试 init。我正在使用命令行中的 -s -S 选项启动 Qemu 并使用运行 gdb命令
ddd --debugger /OCTEON-SDK/tools/bin/mips64-octeon-linux-gnu-gdb /OCTEON-SDK/linux/kernel_2.6/linux/vmlinux
然后用命令附加 gdb
目标远程本地主机:1234
gdb 当前仅显示在内核空间中运行的指令。
我想问的是,在内核空间的情况下,有什么方法可以让我逐步调试用户模式初始化和库指令?例如,如果printf是从 init 发出的,那么我想查看库中正在执行哪些指令以及控制权如何返回给内核?