Windows内核驱动程序开发环境

时间:2018-03-13 08:31:12

标签: windows driver development-environment

我是Windows驱动程序开发的总菜鸟,最近我被分配了一个项目来开发Windows 10和8.1的驱动程序

我有一台装有Windows 8.1和Visual Studio 2017的电脑。我有WinDbg。我曾尝试进行本地调试,但我没有成功,在某处建议不要将其作为限制。

以最少的麻烦进行内核驱动程序开发的最佳设置是什么。

Os loader是否适用于Windows 8.1?

在推进之前我需要记住哪些事情?

我可以使用Windows 7作为目标,并为Windows 10开发和调试驱动程序吗?在this链接上,它说Windows 7有关于WDK测试目标设置的错误。

我在微软论坛上发布了类似的问题,但还没有答案,这只是第一步。

1 个答案:

答案 0 :(得分:0)

我到达这里。使用此来源https://www.codemetrix.net/windows-kernel-debugging-setup/

<强>环境 在BIOS中启用VT-d以安装64位操作系统

Windows 10不需要许可证,Windows 8.1需要使用这个Windows 10。

Windows 8.1 64位主机。

windows 10 64位目标在virtualbox中。

安装完Windows 10后,转到设备 - &gt;运行插入客户添加CD映像。在此之后启用拖放。

在主机上安装visual studio 2017。所有工具都将随之安装。

64位WinDbg的路径

C:\ ProgramData \ Microsoft \ Windows \ Start Menu \ Programs \ Windows Kits \ Windows调试工具(X64)

查找WinDbg(通常在路径上方)并获取目标的VirtualBox图像 - 称为“Debuggee” - 安装在VirtualBox中。然后打开虚拟机配置并激活串行端口(COM1)。

重要的部分是主机和目标之间的串行连接。

在“串行端口”配置中,选择端口号COM1 端口模式“主机管道”,然后选择路径名称,即的 \。\管\ windebugpipe 即可。 (您可以在此处用另一个名称替换'windebugpipe',但在以下步骤中保持一致,并确保保留\。\ pipe \前缀。)取消选中“连接到现有管道/套接字”框

现在,在主机上,还以管理员身份打开命令提示符并启动WinDbg。

Windbg -b -k com:pipe,port = \。\ pipe \ windebugpipe,resets = 0,重新连接

请注意,port参数应与VM设置中的路径匹配。 WinDbg现在正在等待与调试对象的连接。

重新启动虚拟机。 VM应该连接到您的调试器。调试器可能已经在启动过程中启动并在窗口仍在启动时停止VM,因此如果停止加载则不要烦恼。按“g”并在调试器命令提示符下输入,让Windows继续启动。如果调试器第一次没有启动,请尝试重新启动VM

搞清楚这个 在我的情况下,调试器正忙于处理此命令,并且VM已中途停止。所以要弄清楚还能做些什么。

等待20分钟,直到Windows 10 VM启动。在WinDbg命令提示符下,我看到了这一点 KDTARGET:刷新KD连接

也许连接丢失了。