前言
上一篇我们聊了关于在用户层和驱动层通信的方式https://daliu.net/posts/20241229/,又更加清楚的知道了调用的模型和调用的过程,那么今天这一篇介绍一个更加便捷的方法,并引入一个关于物理地址的概念。
IRP的控制代码
从上一篇中我们已经知道,I/O管理器,会根据不同的请求,创建指定的IRP,而IRP有若干主函数代码,不同的请求对应不同的IRP也就对应不同的主函数,有一个主函数代码,也是从用户层接受请求然后被触发建立对应IRP,并跟驱动函数进行通信的,这个主函数代码是:IRP_MJ_DEVICE_CONTROL
前言
通过上一篇的简单入门,我们了解了在驱动层如何进行文件的读写以及注册表的读取以及设置,那接下来要进一步学习的还是跟I/O有关,不过更加有趣,那就是从用户到驱动之间如何实现消息的传递,就像我们做web开发一样,从前端到后端的通信,这也是有相似指出,让我们拭目以待。
前言
通过上一篇的简单入门,我们建立了一个基本的驱动编写和运行调试的环境,接下来继续了解关于驱动的其他操作,在处理IO操作上,我们想要首先了解的就是文件相关的操作。
前言
在开始学习写windows的驱动的时候,有一个很常用的网站,那就是微软官网的学习网站,里面有庞大的学习文档介绍,即便你之前用的更多的是百度,那么这个网站也是在学习windows驱动过程中用的最多的一个,网址:Microsoft