学习windows内核一

来源:互联网 发布:skype for ubuntu 14 编辑:程序博客网 时间:2024/06/05 04:02

操作系统通过驱动对象来分发命令。

主函数需要驱动对象和注册表路径

主函数需要注册一个类似C++析构函数的东西。还是自己实现,删除设备对象和符号链接还有一些自己创建的东西。

通过设备对象才能通信,所以需要创建一个设备对象。如果创建成功了就能在驱动对象中拿到他了。

然后需要先判断是否创建成功。失败了就返回状态。返回值可以用一个NTSTATUS的变量存放。若成功了,就可以创建符号链接

重点:实际上访问的就是符号链接,找到符号链接,符号链接找到对应的设备对象 就找到对应的驱动程序了。然后调用对应的Routine;这个也需要自己实现内容。


设备对象名字要按格式\\Device\\name这种。符号链接我用的\\??\\name不知道能改成什么。学到后面再说吧。

删除的时候,先删除符号链接吧。检测删除成功没。成功了再继续删除设备对象。符号链接可以通过字符串来删除,设备对象在驱动对象里面可以直接拿到。


IO管理器对设备对象发请求的话majorfunction[对应的宏]=注册函数名字,需要自己实现函数内容。

嗯 第一课就学了这么多东西。

原创粉丝点击