有的小伙伴在使用Nanocode调试GDK7时候发现下图类似情形:
这是因为Nanocode没找到KdVersionBlock,按照下面步骤设置就可以找到了。
步骤 1: 连接到 GDK7
首先,我们需要使用串口连接到 GDK7。可以通过点击访问下面的教程了解具体如何操作:
WinDbg 使用串口调试 GDK7
步骤 2: 使用 WinDbg 中断 GDK7
在成功连接后,使用 WinDbg 将 GDK7 中断。中断后,输入以下命令来查看内存布局:
lm vm nt
记下显示的起始地址(例如 fffff804`04200000),请注意,每台机器显示的地址可能不同,需根据实际结果进行记录。
步骤 3: 查找版本块地址
接下来,输入以下命令查找版本块的具体地址:
x nt!kdversionblock
我们会看到类似 fffff804`04e0f408 的信息。记录这个地址,请注意,每台机器显示的地址可能不同,需根据实际结果进行记录。
步骤 4: 计算地址偏移
使用第二步和第三步中获得的地址来计算偏移值。例如,小编的地址是fffff804`04e0f408,那么就可以输入以下命令:
? fffff804`04e0f408-fffff804`04200000
命令执行后,会显示一个值(如 00c0f408),将这个值记录下来,请注意,每台机器显示的结果可能不同,需根据实际结果进行记录。
步骤 5: 修改配置文件
打开你的 Nanocode 安装目录,进入到 data
文件夹,找到 ndb.cfg
文件并用记事本打开。在 [syspara]
部分的下一行添加如下内容:
kd_version_block=00c0f408
这里的 00c0f408
是之前计算出的偏移值,根据我们的实际执行结果进行更改既可。
步骤 6: 重新使用 Nanocode 调试
完成以上步骤后,我们现在可以重新使用 Nanocode 来调试我们的 GDK7了。
作者:zuoyingying 创建时间:2024-04-26 10:19
最后编辑:zuoyingying 更新时间:2024-12-09 10:54
最后编辑:zuoyingying 更新时间:2024-12-09 10:54