Share via


WDM 驅動程式的類型

WDM 驅動程式有三種:匯流排驅動程式、函式驅動程式和篩選驅動程式。

  • 匯流排驅動程式會驅動個別的 I/O 匯流排裝置,並提供與裝置無關的個別位置功能。 匯流排驅動程式也會偵測並報告連線至匯流排的子裝置。
  • 式驅動程式 會驅動個別裝置。
  • 篩選驅動程式會篩選裝置、裝置類別或匯流排的 I/O 要求。

在此內容中, 匯流排 是附加其他實體、邏輯或虛擬裝置的任何裝置;匯流排包含傳統匯流排,例如 SCSI 和 PCI,以及平行埠、序列埠和 i8042 埠。

請務必讓驅動程式開發人員瞭解不同類型的 WDM 驅動程式,並瞭解其撰寫的驅動程式類型。 例如,驅動程式是否處理每個隨插即用IRP,以及如何處理這類 IRP,取決於要寫入何種驅動程式 (匯流排驅動程式、函式驅動程式或篩選驅動程式) 。

下圖顯示匯流排驅動程式、函式驅動程式和裝置篩選驅動程式之間的關聯性。

說明可能驅動程式層的圖表。

每個裝置通常都有父 I/O 匯流排的匯流排驅動程式、裝置的函式驅動程式,以及裝置的零或多個篩選驅動程式。 需要許多篩選驅動程式的驅動程式設計不會產生最佳效能。

上圖中的驅動程式如下:

  1. 匯流排驅動程式會服務匯流排控制器、配接器或橋接器。 匯流排驅動程式是必要的驅動程式;電腦上每種匯流排類型都有一個匯流排驅動程式。 Microsoft 為最常見的公車提供公車驅動程式。 IHV 和 OEM 可以提供其他匯流排驅動程式。

  2. 匯流排篩選驅動程式通常會將價值新增至公車,並由 Microsoft 或系統 OEM 提供。 匯流排可以有任意數目的匯流排篩選驅動程式。

  3. 較低層級的篩選驅動程式 通常會修改裝置硬體的行為。 它們是選擇性的,通常由 IHV 提供。 裝置可以有任意數目的較低層級篩選驅動程式。

  4. 函式驅動程式是裝置的主要驅動程式。 函式驅動程式通常是由裝置廠商所撰寫,除非裝置正用於 原始模式) ,否則需要 (。

  5. 上層篩選驅動程式 通常會為裝置提供加值功能。 它們是選擇性的,通常是由 IHV 提供。

下列主題將詳細說明三種 WDM 驅動程式的一般類型:匯流排驅動程式、函式驅動程式、篩選驅動程式。 此外,也包含使用範例 USB 驅動程式的 WDM 驅動程式分層範例。

本節內容