Wdm Driver 學習2

========= Driver Object and Device Object =============

DRIVER_OBJECT => 對應到的是一個Kernel Module

不會自己產生thread 會由系統的thread執行

DEVICE_OBJECT => 對應到的是一個設備 mouse keyboard 或是虛擬的Device

DRIVER_OBJECT Create出來,唯一可以接受IRP 要求的實體

========== The Driver location in Windows architecture ============


在Windows 的架構中

Driver 的定位是在HAL 以及 System Service 之中

負責當OS 及 Hardware的 Bridge

================ IRP Structure =================

整個結構如圖所示 (會有三種 IO Mode 在下一篇會再提到)


而 IRP 在傳遞的時後的流程如下圖所示:

一隻Driver一定只會對應到一個 Driver object

但不一定是一個 Device Object

但在通常的狀況下

一個Driver Object 會對應到一個 Device Object

而相對的來說 也會對應到一個 Io Stack Location(欄位如圖所示)

裡面會存放現在這個 Device Object 需要的資訊

及需要的處理



留言