如何在CEntryPoint阶段就挂上NDB
2024.04.12
实验环境:
如果能够更早地在NDB中断下来,就能够跟踪到UEFI更多的执行细节,对关键代码跟踪一遍,好过多遍阅读源代码。
更多的准备细节可参考:
UEFI启动后的快速手动断点
How:
只需在CEntryPoint开头加上两行代码,第一行开SD口复用成JTAG+UART,第二行,延时5秒,让NDB有足够时间挂上。
为了第一时间看有没有断下来,还用NDB原来已经加载的旧符号,马上break,不错,还在栈底:
在Ghidra中验证一下位置,确实还在延时的循环中:
当前pc是个跳转:
比较、循环:
UEFI实战源代码可以如此自由地修改、编译、写入、运行,并可立即自由地在NDB中断下来观察学习,可以飞的感觉。
作者:朱博渊 创建时间:2024-04-12 13:51
最后编辑:朱博渊 更新时间:2024-11-15 17:44
最后编辑:朱博渊 更新时间:2024-11-15 17:44