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问题,并且失败率比较低的问题。

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

相关推荐
Helix25014 分钟前
MDT自动化部署实战:构建企业级Windows批量装机与PXE网络引导环境
windows·mdt自动化部署·wds网络启动·pxe引导·windows批量装机·任务序列·无人值守安装
一 铭1 小时前
Pi实战 12:TDD 测试驱动篇——用 Pi 做测试驱动开发
驱动开发·tdd
学IT的周星星1 小时前
记忆系统:让 Agent 记住你是谁、上次聊到哪
运维·服务器·人工智能·windows·大模型·llm·agent
撞强3 小时前
Windows 上从零开始:Obsidian + Copilot(Icompify)+ 客户洞察实战 · 图文指南
windows·copilot·obsidian·icompify
weixin_571667414 小时前
Windows 通过 SSH 反向隧道向 Ubuntu 转发代理
linux·运维·windows·代理
事圆则缓4 小时前
Kotlin 集合与序列:给页面一份清楚的数据
开发语言·windows·kotlin
遇印记4 小时前
应用层,网络管理
运维·网络·windows·学习·安全
硫酸锌016 小时前
安卓手机连接Windows电脑后通过DHCP服务为手机分配IP地址
android·windows·计算机网络
kmomo..7 小时前
Linux 驱动开发学习笔记:UART、触摸屏与 ADC 驱动实战
linux·驱动开发·学习
catino8 小时前
SDD:规范驱动开发(Spec-Driven Development)
驱动开发·ai