Windows电脑 驱动 笔记

驱动简介:

从本质上说,驱动是一个软件程序 。它负责在操作系统和硬件设备之间建立通信。

另一个比喻:驱动是硬件的"灵魂 "。硬件插上电脑后只是"肉体 ",驱动被安装后,操作系统才学会如何唤醒它的能力,比如让显卡显示3D画面,让网卡上网。
*

Windows系统------驱动包的组成:

一个完整的驱动程序"包",通常由三个部分组成:
1、驱动程序的可执行文件(*.sys)

这是驱动的核心大脑,里面是你写的所有逻辑代码,比如"检测到温度过高,就关闭风扇"。它被编译为.sys格式后,在安装时会位于C:\Windows\System32\drivers\文件夹下。它运行在CPU的Ring0(内核模式),拥有最高权限,负责直接与硬件打交道。

2、驱动程序安装信息文件(*.inf)

这是一个告诉Windows如何安放你的驱动的说明书,它包含:

① 这个驱动适配哪个硬件(硬件ID)

② 驱动文件(*.sys)应该复制到哪里

③ 需要在注册便中写入什么信息来让系统识别这个驱动

3、驱动程序目录文件(*.cat)

这是一个数字身份证(防伪标签)。

它证明了你的驱动文件是经过微软测试和签名的,没有被篡改过。

System32文件夹 为何以32结尾?是否表明其下文件都是32位的?

以32结尾并不代表其下文件都是32位的,这是一个历史遗留的命名问题。

在早期系统中,System表示16位目录,System32则表示32位目录。

后来出了64位Windows,64位系统文件也放在 C: \ Windows \ System32 下。

而把真正的32位系统文件放在:C: \ Windows \ SysWOW64下。

WOW64 = Windows - on - Windows64,负责运行32位程序的子系统。

普通程序(.exe)如何间接使用?

普通程序运行在 Ring 3(用户模式) ,没有权限直接碰 .sys。它们必须通过 Windows API 作为桥梁:

  1. 调用 API :比如调用 CreateFile、DeviceIoControl、ReadFile、WriteFile。

  2. 系统服务分发 :这些 API 会触发一个"系统调用"(如 syscall 指令),CPU 从 Ring 3 切换到 Ring 0。

  3. I/O 管理器 :Windows 内核收到调用后,会创建一个 IRP(I/O 请求包)。

  4. 传递给驱动 :I/O 管理器根据你打开的设备句柄(如 \\.\MyFan),找到对应的设备栈,把 IRP 分发给最上层驱动。

  5. 逐层传递 :IRP 沿着设备栈向下传递,最终到达你的 .sys 驱动中的回调函数(比如 EvtIoDeviceControl)。

关键点 :.sys 里的函数不是被 .exe 直接调用 的,而是被 I/O 管理器 通过 IRP 回调 的。

可以用一个类比:

  • 应用程序:顾客

  • Windows API :餐厅的菜单

  • syscall 指令 + CPU 模式切换 :服务员把菜单送到后厨窗口

  • I/O 管理器 :后厨的调度主管

  • 你的驱动 (.sys) :炒菜的厨师

顾客(应用程序)不能直接指挥调度主管(I/O 管理器)。顾客只能按照菜单(API)点菜,然后服务员(syscall)把单子送到后厨。调度主管看到单子后,才会安排厨师做菜。

相关推荐
深圳老胡5 小时前
STM32CubeMX 生成 CMake 工程,用 VSCode 编译与调试的完整流程
笔记·stm32·单片机·代码规范
坤坤子吖5 小时前
C++智能指针:RAII、shared_ptr与内存泄漏
开发语言·c++·笔记·学习
乐橙开放平台5 小时前
智慧连锁客流检测和离岗检测怎么对接
大数据·人工智能·笔记·物联网·自动化·音视频·智能家居
零基础1235 小时前
FinalShell 使用教程:从安装到高效运维
运维·经验分享·笔记·finalshell
ACP广源盛139246256736 小时前
Type‑C 扩展坞方案选型笔记|国产 DP1.4 转 HDMI2.0 桥接芯片 GSV2201S @ACP评估
c语言·开发语言·笔记·硬件架构·硬件工程·国产芯片
敲个大西瓜7 小时前
langchain笔记(一)
redis·笔记·langchain
带金箍的至尊宝7 小时前
系统架构设计师笔记 05:第2章硬件与软件基础,冯诺依曼结构怎么考
数据库·笔记·系统架构
知产xiao_xin8 小时前
商标权的内容和限制
经验分享·笔记·知识产权
陈年老古董8 小时前
Hive 函数学习笔记(上):单行函数与炸裂函数
hive·笔记·学习
喜欢打篮球的普通人8 小时前
MiniMind 学习笔记(十八):速通强化学习——从 MDP 到 PPO 的概念与算法地图
笔记·深度学习·学习