編譯及動態調試WRK

剛開始用的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。

然後

發現已經連接上了,然後就可以開始你的看源碼,動態調試的學習了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章