来源:自学PHP网 时间:2015-04-17 18:01 作者: 阅读:次
[导读] 由于最近需要调试win8下面驱动的一个bug,所以尝试了一下用windbg进行双机联调,发现VirtualKD v2.6版本对windows 8 Consumer Preview版的支持不好,用target里面的vminstall.exe可以安装成功,但是重...
由于最近需要调试win8下面驱动的一个bug,所以尝试了一下用windbg进行双机联调,发现VirtualKD v2.6版本对windows 8 Consumer Preview版的支持不好,用target里面的vminstall.exe可以安装成功,但是重启之后,win8就会不停的尝试修复~~,完全无法调试。具体原因未知。 无奈只好用最原始的双机联调的办法来试一下。
过程和调试win7类似。
1. 首先设置一下Virtual Machine Settings,创建一个Serial Port,使用named pipe,详细过程可以参考网上的其他文章 。 -www.2cto.com-
2. 在win8中,以管理员权限执行如下命令
[cpp]
C:\Windows\system32>bcdedit /copy {current} /d "Windows 8 Debug"
已将该项成功复制到 {945e8a3c-6a72-11e1-ab5a-eeb97f46a921}。
C:\Windows\system32>bcdedit /debug {945e8a3c-6a72-11e1-ab5a-eeb97f46a921} on
操作成功完成。
C:\Windows\system32>bcdedit /dbgsettings serial debugport:1 baudrate:115200
操作成功完成。
3. 创建一个windbg的快捷方式,其命令行为
[html]
"C:\Program Files\Debugging Tools for Windows (x86)\windbg.exe" -b -k com:port=\\.\pipe\com_1,baud=115200,pipe -www.2cto.com-
这样,重启之后,选择Windows 8 Debug启动入口,开启windbg,就可以连接上win8进行内核驱动调试了。
期待VirtualKD能够快点支持Win8。
另外,发现在Win8 Consumer Preview版本中,驱动的关机回调函数中对注册表的所有操作都是返回成功,但开机后注册表没有发生变化,比较奇怪,不知道是不是系统机制发生变化了。
作者 cnbragon
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com