zoukankan      html  css  js  c++  java
  • WINDOWS 7驱动开发系列(六)认识内核的对象

    对象,尤其是设备对象是WINDOWS 驱动当中相当重要的概念之一。如果您看过了之前的系列博客之后,您会发现其实在内核模式下WINDOWS对于DRIVER的管理其实是把一个请求也就是REQUEST一级一级的传递,也就是利用链的方式来处理请求。那么DEVICE也就是这一级级传递当中必不可以的节点,而WINDOWS 对于DEVICE是利用OBJECT来进行管理的。
    如果你想创建一个DEVICE的对象那么需要调用IoCreateDevice 这个函数来进行。然后咱们需要调用IoAttachDeviceToDeviceStack来把你的这个设备ATTACH到DEVICESTACK上面去。而DEVICESTACK这个栈实际上就是来完成一级一级向上调用的功能。简单说了DEVICE OBJECT的介绍咱们来看一下DEVICE OBJECT 的分类:

    Physical Device Object (PDO) − 物理设备对象
    Functional Device Object (FDO) − 功能设备对象
    Filter Device Object (filter DO) − 过滤设备对象
    那么这些设备对象是何时被创建的呢?
    首先BUS DRIVER当BUS上面的设备被枚举的时候被创建。
    BUS DRIVER的FILTERDRIVER在DEVICE被过滤的时候创建filter DO。

  • 相关阅读:
    python中的编码问题
    CVPR2018 Tutorial 之 Visual Recognition and Beyond
    hdu 1376 Octal Fractions
    hdu 1329 Hanoi Tower Troubles Again!
    hdu 1309 Loansome Car Buyer
    hdu 1333 Smith Numbers
    hdu 1288 Hat's Tea
    hdu 1284 钱币兑换问题
    hdu 1275 两车追及或相遇问题
    hdu 1270 小希的数表
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/2458377.html
Copyright © 2011-2022 走看看