搭建VM环境,调试WRK内核

 学习日志:具体实现过程参考《VMware Workstations6基本使用》和《WRK 实验环境设置》,现在将整个过程、其中遇到的问题及解决办法(重点)叙述一下。

环境及工具:VMware+Windows2003sp1+WRK1.2+Windbg

一、安装VMware

       安装VMware的过程相当简单,按照安装步骤一步一步进行就可以。

二、在VMware上安装Windows2003sp1

(注:省略)

三、设置共享文件夹

 (注:省略)

四、在虚拟机上编译WRK

       具体过程如下所示,所有过程均在虚拟机上完成,图示详见《WRK 实验环境设置》。

1、将“WRK-v1.2”目录下的内容复制到虚拟机的硬盘中。

2、打开控制台窗口,执行下述命令:
path /wrk-v1.2/tools/x86;%path%
cd /wrk-v1.2/base/ntos
其中第一条命令是设置编译环境的文件路径,可以用不带参数的path 命令验证路径设置的结果。

3、执行下面的命令将对WRK 源代码进行编译:
nmake -nologo x86=
编译过程大约需要2 分钟,编译的结果是在/wrk-v1.2/base/ntos/BUILD/EXE目录下生成内核可执行文件和符号文件等。

编译过程中,系统提示没有找到MSVCP71.dll,不用担心,只要在本机找到一个MSVCP71.dll,拷贝到虚拟机的/WINDOWS/system32/目录下就可以正常编译。

4、将上述目录中的WRK 内核文件wrkx86.exe 复制到/WINDOWS/system32/目录下,并将将WRK 内核所需要的/WS03SP1HALS/x86目录下相应HAL 文件( 例如halmacpi.dll ) 复制到/WINDOWS/system32/目录下。

5、设置WRK 的引导选项,对虚拟机的boot.ini 文件进行编辑。
在boot.ini 文件中增加一个具有如下参数的引导选项:
/kernel=wrkx86.exe /hal=halmacpi.dll

       至此WRK 已经安装和设置完毕,我们可以用WRK 内核来引导操作系统。在虚拟机中重新启动操作系统,可以看到新增加了一个引导选项,选择该选项则可以用我们刚刚编译好的WRK 内核启动系统。

五、在虚拟机上调试WRK

1、关闭虚拟机,给虚拟机增添一个串口:单击VMware 的“VM”菜单,选择“Settings…”命令,在出现的对话框中选择“Add…”按钮,在接下来出现的Add Hardware Wizard 向导中依次选择增加Serial Port,串口类型为选择“Output to named pipe”,命名管道的设置可以采用VMware 提供的缺省值。

2、为了调试目标操作系统,必须设置WinDbg 的启动参数,为此可用创建一个新的WinDbg 快捷方式,其参数设置如下:
"D:/Program Files/Debugging Tools for Windows/windbg.exe" -b -k com:pipe,port=//./pipe/com_1,baud=115200,reconnect -y D:/Symbols/WindowsWRK;srv*D:/Symbols/WindowsWRK*http://msdl.microsoft.com/download/symbols -srcpath "E:/SourceFile/WRK1.2/base"

说明:象文件的路径需要与本机的一致。

3、为了对目标机进行调试,必须在目标机操作系统中增加新的启动选项。启动
虚拟机,编辑boot.ini 文件,增加一个具有如下参数的引导选项:
/kernel=wrkx86.exe /hal=halmacpi.dll /debug /debugport=com1 /baudrate=115200

4、修改本机和虚拟机的COM1端口速率,将其原来的缺省速率9600调整到115200,这一步很重要,否则windbg就不能与虚拟机进行通信

5、现在开始就可以用windbg对虚拟机的WRK内核进行调试了。

说明:本文主要是记录整个过程,重点叙述了其中遇到的问题及解决方法,希望各位能够说说自己在调试WRK过程中遇到的问题,以及下一步如何去利用WRK。

 

参考资料:

1、《VMware Workstations6基本使用》

2、《WRK 实验环境设置》

其实,我想把这两篇文章一并上传,可是不知传哪里,所以只有拜托各位自己去找了。
 

 
 原文地址 http://hi.baidu.com/billwangyj/blog/item/33b0cc0f5c91da2e6159f30d.html 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值