![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
windows内核与驱动开发
文章平均质量分 86
q403107839
NULL
展开
-
IRP知识
在微软的Windows 操作系统家族中,都通过发送I/O 请求包(IRP, I/o Request Packets)来进行 和驱动程序的通讯。用来封装IRP 的数据结构不仅仅用来描述一个I/O 操作的请求本身的内 容,还要用来维护这一请求在一系列驱动程序中传递的过程中的相关状态信息.。实现这一数 据结构其实是为了两重目的,也就是说IRP 可以被定义[理解]为: 一个放置I/O请求的容器原创 2013-06-02 20:41:01 · 396 阅读 · 0 评论 -
Windows 内核编程
常见的内核数据结构 1。驱动对象结构(DRIVER_OBJECT) 每个驱动对象代表一个已经加载的内核驱动程序,指向驱动对象结构的指针常常作为DriverEntry,AddDevice,Unload等函数的参数。 驱动对象结构是半透明的(即结构中只有部分域是公开的),其中公开的域包括DeviceObiect,DriverExtension,HardwareDatabase,FastIoD原创 2013-06-01 09:15:14 · 550 阅读 · 0 评论 -
Windows内核编程基本方法
数据访问主要有三种I/O方式,缓冲区I/O(Buffered I/O),直接方式I/O(DirectI/O)和非缓冲区非直接方式I/O 1.缓冲方式I/O 对于缓冲方式,系统会分配一个非分页的缓冲区,该缓冲区大小和应用程序提供的缓存大小是一样的。。对于读请求操作,I/O管理器会将应用程序提供的用户的缓冲区的内容复制到系统分配的缓冲区中,然后I/O管理器将此IRP下发到对应的驱动中 对于写请求原创 2013-06-05 01:43:20 · 499 阅读 · 0 评论