加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 系统 > 正文

04内核-驱动对象

发布时间:2021-03-05 04:47:56 所属栏目:系统 来源:网络整理
导读:驱动对象 驱动程序:就是一个 .sys 模块, 驱动对象:则是 .sys 被加载到内核中的实例化出来的对象,用于表示这个驱动模块. Windows内核使用 DRIVER_OBJECT 结构体来描述一个驱动对象. 虽然Windows内核源码使用C语言编写,但也使用了面向对象的思想. 在面向对象

I/O管理器将IRP中最低层驱动程序的I/O堆栈位置置零,并用FSD分配的IRP调用文件系统的注册完成例程(参见步骤3)。此完成例程检查I/O状态块,以确定是重试请求还是更新关于原始请求维护的任何内部状态,并释放其驱动程序分配的IRP。文件系统可以收集它发送给低级驱动程序的所有驱动程序分配IRP的状态信息,以便它可以设置I/O状态并完成原始IRP。当文件系统已经完成原始IRP时,I/O管理器将向I/O操作的原始请求者(子系统的本机函数)返回和NTSTATUS值。

IRP处理流程中的IO栈(IO_STACK_COMPLATE)

I/O管理器为每个驱动程序提供一组分层驱动程序,为每个IRP建立一个I/O堆栈位置。每个I/O堆栈位置由 IO_STACK_LOCATION结构组成。

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读