如何理解 NDIS Miniport 驱动的内部工作
How to understand the internal working of NDIS Miniport driver
我是 Window 驱动程序开发的新手。
我正在尝试了解 NDIS 微型端口驱动程序(来自 Microsoft WDK 示例)的工作原理。特别是要了解数据包流。
根据众多消息来源,我看到了安装两个 NDIS 微型端口驱动程序实例并从那里继续的建议。但是,我无法从那里继续,因为只有模糊的信息。请指教 - 特别是关于如何将 Windows 调试器工具附加到驱动程序实例以及如何查看在 sent/receive 数据包上调用的回调。
我的平台:Windows 7 x64,设置了调试模式(调试设置:单台计算机)。
有个类似的问题。但是没有关于如何调试驱动程序的信息:NDIS and miniport driver
您不能在您作为 运行 驱动程序的同一台机器上进行调试,您需要使用远程机器,它可以是 "Real" 一台或者通常是虚拟机。
这里是如何使用虚拟机设置 Windows 内核调试环境:
https://msdn.microsoft.com/en-us/library/windows/hardware/ff538143%28v=vs.85%29.aspx
了解驱动程序内部结构的最佳方法是在驱动程序中使用 WPP 跟踪来打印消息并使用 traceview.exe 查看。或使用 dbgprint() 打印消息,并使用 dbgview 查看这些消息。
https://msdn.microsoft.com/en-us/library/windows/hardware/ff556204(v=vs.85).aspx
https://msdn.microsoft.com/en-us/library/windows/hardware/ff543632(v=vs.85).aspx
我是 Window 驱动程序开发的新手。
我正在尝试了解 NDIS 微型端口驱动程序(来自 Microsoft WDK 示例)的工作原理。特别是要了解数据包流。
根据众多消息来源,我看到了安装两个 NDIS 微型端口驱动程序实例并从那里继续的建议。但是,我无法从那里继续,因为只有模糊的信息。请指教 - 特别是关于如何将 Windows 调试器工具附加到驱动程序实例以及如何查看在 sent/receive 数据包上调用的回调。
我的平台:Windows 7 x64,设置了调试模式(调试设置:单台计算机)。
有个类似的问题。但是没有关于如何调试驱动程序的信息:NDIS and miniport driver
您不能在您作为 运行 驱动程序的同一台机器上进行调试,您需要使用远程机器,它可以是 "Real" 一台或者通常是虚拟机。
这里是如何使用虚拟机设置 Windows 内核调试环境:
https://msdn.microsoft.com/en-us/library/windows/hardware/ff538143%28v=vs.85%29.aspx
了解驱动程序内部结构的最佳方法是在驱动程序中使用 WPP 跟踪来打印消息并使用 traceview.exe 查看。或使用 dbgprint() 打印消息,并使用 dbgview 查看这些消息。
https://msdn.microsoft.com/en-us/library/windows/hardware/ff556204(v=vs.85).aspx https://msdn.microsoft.com/en-us/library/windows/hardware/ff543632(v=vs.85).aspx