编译及动态调试WRK

85 篇文章 6 订阅
83 篇文章 9 订阅

刚开始用的vs各种不正确,最后使用先安装windows server 2003,然后在里面编译wrk,成功。

将WRK源码拷贝到windows虚拟机中,方法很多,我这边是通过【文件夹共享】的方式把源码放到C盘根目录【C:\】

在虚拟机中,将【C:\WRK-v1.2\toos\x86】的路径加到Path系统环境变量中。

打开CMD命令行窗口模式,cd C:\WRK-v1.2\base\ntos文件夹,输入

nmake -nologo x86= 开始编译。

编译完后,会在C:\WRK-v1.2\base\ntos\BUILD\EXE目录下产生内核文件wrkx86.exe

这里报错缺什么dll去下什么dll,dll下载连接推荐https://cn.dll-files.com/

编译完成。

将编译好的wrkx86.exe拷贝到C:\WINDOWS\system32目录下。

在CMD命令模式下,执行以下命令:

link -dump -all \WINDOWS\system32\hal.dll | findstr pdb

在WRK中,根据以下关系选择相应的HAL库:

halacpi.dll -> halacpim.dll

halaacpi.dll->halmacpi.dll

halapic.dll->halmps.dll

所以我这里就是把halmacpi.dll放到C:\WINDOWS\system32目录下

然后把隐藏文件C:\boot.ini,最后一行添加以下内容:

multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="WRK V1.2" /kernel=wrkx86.exe /hal=halmacpi.dll
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="WRK V1.2" /kernel=wrkx86.exe /hal=halmacpi.dll /debug /debugport=com1 /baudrate=115200

然后关闭虚拟机,设置串口,

然后重启虚拟机

如果要windbg调试,选择第三个,然后打开windbg,windbg属性的目标记得加"C:\Program Files\Debugging Tools for Windows (x64)\windbg.exe" -k com:port=\\.\pipe\com_1,baud=115200,pipe。

然后

发现已经连接上了,然后就可以开始你的看源码,动态调试的学习了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值