zoukankan      html  css  js  c++  java
  • 配置虚拟机 (VMWare) 和Windbg调试 Windows XP 用于驱动开发

    配置虚拟机 (VMWare) Windbg调试 Windows XP 用于驱动开发

    驱动程序设计和普通应用程序设计不同,它更接近系统的内核,稍有不当极可能造成系统的崩溃,所以一般驱动的开发会在虚拟机上进行。这样方便进行调试。

    要配置的东西很多,现总结如下:

    1.     首先安装虚拟机软件:VMWare,新建一个Windows XP Professional的虚拟机。选择合适的网络连接方式和硬盘大小,分配好内存,装了系统之后就不能改了。将一个Windows XP Professional SP3的镜像文件加载到新建的虚拟机的光驱中或者也可以直接用光驱,只要在VMware里选好使用物理光驱就行了。之后就是正常的Windows操作系统安装过程。

    2.     接下来为了操作的方便,先将网络配置调通,让虚拟机可以正常连网。我的网络环境下选择NAT:方式就可以实现正常连网了。

    3.     安装虚拟机工具VMWare Tool,可以使得鼠标不需要切换,共享剪贴板和支持文件拖拽等。将Windows.iso载入到虚拟机的光驱中,进入系统后安装即可。装完这个之后鼠标就可以在主机和虚拟机之间自动切换了,剪贴板也共享了。但是文件拖拽功能不好用。据说是对中文支持的问题,汉化版不太好用。下了一个补丁仍未解决。

    4.     虚拟机和主机之间的文件传输是很重要的,否则很不方便,于是使用另一种方法——建立共享文件夹来解决。首先在虚拟机设置中选项中启用共享文件夹,按向导选择主机路径。这时在虚拟机的网上邻居里面添加一个网上邻居,根据向导添加共享文件夹。这时就可以方便的在主机和虚拟机之间共享文件了。为了使用的方便,这时还可以右击我的电脑,将共享文件夹映射为网络驱动器。

    5.     这时可以开始对系统进行更新,打下补丁。

    6.     要使XP通过调试模式启动需要将虚拟机C盘根目录下的boot.ini末尾加上一行:multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /debug /debugport=COM1 /baudrate=115200 这样虚拟机和将增加一个以调试模式启动的选项,调试信息将通过串口1,以115200的不特率传输。

    7.     注意这时虚拟机还没有串口,关机后编辑虚拟机配置,添加一个串口命名为://./pipe/com_1 第二行选“该终端是服务器” 第三行选“其它终端是一个程序”(其实就是Windbg)。重新启动,在其设备管理器中将串口COM1的波特率(第一行)设为115200. 在主机的设备管理器中也进行同样的配置。

    8.     在主机中安装Windbg,可以在微软的官网上下到。安装好之后选择File->Symbol File Path 输入srv*C:/symbolcache*http://msdl.microsoft.com/download/symbols 这样就会自动从微软的网站上下载调试符号(PDB),便于反汇编。

    9.     要使Windbg和要调试的系统连接上需要添加启动参数。为方便带参数启动Windbg,可以为Windbg.exe创建一个快捷方式:其目标末尾加上:"C:/Program Files/Debugging Tools for Windows (x86)/windbg.exe" -k com:port=//./pipe/com_1,baud=115200,pipe 注意一定要加载引号外。这时环境就配置好了。

    10.  首先启动虚拟机软件,将XP系统开机,然后运行Windbg的快捷方式,这时Windbg显示Opened //./pipe/com_1 Waiting to reconnect... 这时再选择进入XP系统(Debug模式)就会出现类似于:Connected to Windows XP 2600 x86 compatible target at (Tue Jan 12 16:26:36.203 2010 (GMT+8)), ptr64 FALSE Kernel Debugger connection established. 的信息。这时可以用Ctrl+Break停止运行了。要继续运行在提示符下键入g即可

  • 相关阅读:
    SQL语句调优
    Oracle start with connect by prior
    博客园如何转载博客
    初遇java.lang.NoClassDefFoundError
    二叉搜索树、B树、B+树、B*树
    初见POJO
    win10系统Myeclipse装载tomcat7.0x遇见的新问题
    Myeclise新导入项目遇到的红色感叹号和红色叉问题
    SSM框架中文乱码解决方案
    第五天
  • 原文地址:https://www.cnblogs.com/oyjj/p/2132958.html
Copyright © 2011-2022 走看看