![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
驱动开发
文章平均质量分 85
HOOKTTG
这个作者很懒,什么都没留下…
展开
-
MSDN Kernel-Mode Driver Architecture学习笔记(4)——Kernel-Mode Driver Components (4)
驱动程序的DispatchCleanup例程用来处理带有IRP_MJ_CLEANUP的I/O功能代码的IRPs。原创 2011-04-26 21:19:00 · 947 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(4)——Kernel-Mode Driver Components (3)
处理任何I/O请求包(IRP)开始于一个派遣例程,这个派遣例程是驱动程序提供来处理IRP主功能代码的(IRP_MJ_Xxx)。驱动程序的DriverEntry例程输出派遣例程的入口点到一个驱动程序的DRIVER_OBJECT结构的派遣表中。原创 2011-04-23 23:21:00 · 981 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(4)——Kernel-Mode Driver Components (5)
9) DispatchDeviceControl和DispatchInternalDeviceControl例程一个驱动程序的DispatchDeviceControl和DispatchInternalDeviceControl例程分别处理IRP_MJ_DEVICE_CONTROL和IRP_MJ_INTERNAL_DEVICE_CONTROL I/O功能代码的IRPs。原创 2011-05-26 19:41:00 · 1335 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(1)——Introduction to Windows Drivers(1)
关键词: NT-based 基于NT技术 User-Mode Drivers 用户模式驱动程序 Kernel-Mode Drivers 内核模式驱动程序 WDM(Windows Driver Mode) Windows驱动模型原创 2011-04-12 13:34:00 · 1907 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(1)——Introduction to Windows Drivers(2)
内核模式驱动程序涵盖了许多操作系统的设计目标,特别是系统的I/O管理器。下面几点是设计内核模式驱动程序的目的:Portable(可移植性):便于从一个平台移植到另一个平台原创 2011-04-13 15:29:00 · 1037 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(3)——Device Objects and Device Stacks (2)
一个整个的驱动程序必须为其所处理I/O请求的每个物理、逻辑或者虚拟设备都创建一个设备对象。没有创建为设备创建设备对象的驱动程序将不能接收来自设备的任何IRPs。原创 2011-04-17 23:15:00 · 2132 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(1)——Introduction to Windows Drivers(3)
基于NT技术的操作系统无论在单处理器还是对称多处理器(SMP)平台上运行的结果都是完全一致的,因此内核模式驱动程序也必须按照这个要求设计。原创 2011-04-14 15:32:00 · 1186 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(2)——Windows Driver Model (1)
为了让驱动程序开发者编写的设备驱动可以在源代码上兼容所有的微软Windows操作系统,引入了Windows Driver Model(WDM=Windows驱动程序模型)。符合WDM规则的内核模式驱动程序称之为WDM 驱动程序。原创 2011-04-15 14:57:00 · 1416 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(3)——Device Objects and Device Stacks (3)
对于大多数中间层或者最底层的驱动程序,设备扩展是设备对象非常重要的数据结构。它的内部结构是由驱动程序定义的,通常用于:l 维护设备状态信息。l 为任何内核定义的对象或者其他系统资源提供存储空间,比如自旋锁,驱动程序需要用到这些信息。l 容纳任何驱动程序必须在系统空间常驻的用于执行其I/O操作的数据。原创 2011-04-18 19:24:00 · 2423 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(4)——Kernel-Mode Driver Components (1)
本节介绍内核模式驱动程序包含的标准例程。这些标准驱动程序例程的一些是必需的,一些是可选。本节也介绍驱动程序对象,其包含了指向每个驱动程序标准例程的指针。原创 2011-04-20 22:57:00 · 1123 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(2)——Windows Driver Model (2)
对于大多数种类的设备,Windows驱动程序工具包(WDK)都提供了一套全功能系统驱动程序样例。其中一些个别驱动程序样例可以作为要新开发的同类设备程序的参考模型。不管怎样,系统的驱动程序都有一个额外的设计要求:让开发新的设备驱动程序简单化。所以,许多系统驱动程序都有一个分层的架构,方便开发新的同类驱动可以重利用。原创 2011-04-15 21:55:00 · 1887 阅读 · 1 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(3)——Device Objects and Device Stacks (1)
操作系统用device objects(设备对象)来表示设备。每个设备可以有一个或者多个设备对象与之关联。通过操作设备对象来作为对设备的所有操作的目标对象。原创 2011-04-16 19:28:00 · 1283 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(3)——Device Objects and Device Stacks (4)
本节讲述如何让一个驱动程序的设备对象不被未授权访问。1) 控制对设备的访问对设备的访问由由一个安全描述符(它包含一个ACL=访问控制等级)控制。在设备对象被创建或者设置到注册表的时候,设备对象的安全描述符会被指定。控制WDM驱动程序的设备访问当WDM驱动程序(除了某些总线驱动程序)创建一个设备对象,即插即用管理器为设备确定一个安全描述符。原创 2011-04-20 12:46:00 · 1684 阅读 · 0 评论 -
MSDN Kernel-Mode Driver Architecture学习笔记(4)——Kernel-Mode Driver Components (2)
每个驱动程序必须有一个DriverEntry例程,用来初始化驱动程序范围内的数据结构和资源。I/O管理器在加载驱动程序的时候调用DriverEntry例程。原创 2011-04-22 18:06:00 · 1466 阅读 · 0 评论