配接器物件的簡介

任何使用直接 I/O 和 DMA 的驅動程式都必須建立配接器物件。 配接器物件代表 DMA 控制器通道或埠,或匯流排主機裝置。

兩種最低層級驅動程式必須使用配接器物件:

  • 使用系統 DMA 控制器之裝置的驅動程式。 這類裝置稱為 次級裝置 ,稱為「使用系統 (或 從屬) DMA」。

  • 屬於匯流排主機介面卡之裝置的驅動程式。 這類裝置會與系統進行仲裁以使用 I/O 匯流排,因此使用匯流排主機 DMA。

驅動程式提供存放裝置,通常是在裝置擴充功能中,以取得介面卡物件的指標。

為了執行 DMA 傳輸,使用這些 DMA 方法的裝置驅動程式通常會有 AdapterControl 常式,並呼叫操作配接器物件的系統提供支援常式。 (不需要 AdapterControl 常式的驅動程式包括 使用散佈/收集 DMA 的驅動程式,以及 使用 common-buffer、bus-master DMA.)

作為裝置啟動作業的一部分,處理 DMA 作業的驅動程式會呼叫 I/O 管理員,進而呼叫平臺特定的 HAL 來建立一組配接器物件。 在任何 Windows 平臺上,配接器物件集通常包含下列專案的配接器物件:

  • 每個系統 DMA 控制器通道或連接次級裝置的埠。

  • 機器中的每個匯流排主要 DMA 裝置。

(針對能夠使用匯流排主機 DMA 的 SCSI 裝置,SCSI 埠驅動程式會設定 HBA 特定 SCSI 迷你埠驅動程式的介面卡物件。迷你埠驅動程式的 HwScsiFindAdapter 常式會提供埠驅動程式與配接器特定的資料。)

如需驅動程式何時及如何使用配接器物件和AdapterControl常式的詳細資訊,請參閱本節和使用Bus-Master DMA

啟用設備磁碟機的 DMA 重新對應