Windows驱动开发系列文章一

文章目录

环境搭建

基本上按照官方网站安装 VisualStudio/SDK/WDK 这些软件就可以了

详情请参考这个安装链接

如何调试

Windows 调试分为两种:一种是实时调试,一种是非实时调试

实时调试

这个就需要用到Microsoft 强大的windbg工具, 常用的命令一定要熟悉,这个大家自行去挖掘。

Q: 如何使用windbg实现双机调试?

A: 使用下面的命令来实现

bcdedit /debug on

USB 方式: bcdedit /dbgsettings usb targetname:xxx

bcdedit /set "{dbgsettings}" busparams xx.xx.xx

具体参考这里USB Debug

Net方式: bcdedit /dbgsettings net hostip:xx.xx.xx.xx key:1.2.3.4 port:12345

具体参考这里Network Debug

非实时调试

这个主要以来于windows的log机制

可以在驱动种使用 KdPrintEx/DbgPrintEx 函数来答应,然后使用DbgView工具来收集log,然后在对log进行分析调整。

具体如何操作,这个大家自行挖掘,这一块儿还是挺多内容的,除了这些windows还自带了一个WPP机制,这个可以打印到内存中,

然后在BSOD的时候可以把这个内存中的log取出来,这是一种很方便的机制,特别是对于BSOD问题,并且失败率比较低的问题。

但是使用起来很复杂,但是使用起来就再也离不开。

相关推荐
程序员JerrySUN42 分钟前
Linux UART 驱动开发全解析:从原理到实战
linux·运维·驱动开发
林政硕(Cohen0415)2 小时前
Linux驱动开发进阶(三)- 热插拔机制
linux·驱动开发·热插拔
sukalot2 小时前
Windows 图形显示驱动开发-WDDM 2.4功能-GPU 半虚拟化(十一)
windows·驱动开发
西北丰2 小时前
构造超小程序
windows
『六哥』3 小时前
Windows 10 如何设置右击鼠标快速进行“关机”
windows·经验分享·编辑器
小麦嵌入式4 小时前
Linux驱动开发实战(十一):GPIO子系统深度解析与RGB LED驱动实践
linux·c语言·驱动开发·stm32·嵌入式硬件·物联网·ubuntu
weixin_420947644 小时前
windows golang,consul,grpc学习
windows·golang·consul
触角010100015 小时前
STM32F103低功耗模式深度解析:从理论到应用实践(上) | 零基础入门STM32第九十二步
驱动开发·stm32·单片机·嵌入式硬件·物联网
virelin_Y.lin6 小时前
系统与网络安全------Windows系统安全(7)
windows·web安全·系统安全·ftp
Pacify_The_North6 小时前
【C++进阶三】vector深度剖析(迭代器失效和深浅拷贝)
开发语言·c++·windows·visualstudio