共用方式為


初始化Miniport配接器

當網路裝置可供使用時,如果系統尚未載入所需的 NDIS 迷你埠驅動程式,則系統會載入該驅動程式。 接著,即插即用 (PnP) 管理員會傳送 NDIS 隨插即用 IRP 來啟動裝置。 NDIS 會呼叫 miniport 驅動程式的 MiniportInitializeEx 函式,以初始化網路 I/O 作業的配接器。 NDIS 可以在驅動程式初始化后隨時呼叫 MiniportInitializeEx。 如需迷你連接埠驅動程式初始化的詳細資訊,請參閱 初始化 Miniport Driver

MiniportInitializeEx 傳回之前,NDIS 不會針對要初始化的配接器提交任何要求。 配接器處於初始化狀態。

迷你埠驅動程式通常會在 MiniportInitializeEx中執行下列工作:

  1. 取得配接器的組態資訊。

  2. 取得適配卡硬體資源的相關信息。

  3. 呼叫 NdisMSetMiniportAttributes,並提供下列與配接器相關聯的屬性:

    • 驅動程式配置內容區域的指標。
    • 適當的屬性旗標。
    • 呼叫其 MiniportCheckForHangEx 函式的超時時間間隔。
    • 介面類型。
  4. 初始化配接器特定資源。

miniport 驅動程式會指定 NDIS_MINIPORT_ADAPTER_ATTRIBUTES 結構中的配接器屬性,MiniportInitializeEx 傳遞至 NdisMSetMiniportAttributes

一般而言,MiniportInitializeEx 依下列順序配置配接器特定資源:

  1. 非分頁集區記憶體。

  2. NET_BUFFERNET_BUFFER_LIST 集區(請參閱 Miniport Driver Send and Receive Operations)。

  3. 自旋鎖。

  4. 定時器。

  5. IO 埠。

  6. DMA (請參閱 散佈/集結 DMA)。

  7. 共用記憶體。

  8. 中斷(請參閱管理中斷)。

MiniportInitializeEx 成功傳回之後,配接器會處於暫停狀態。 NDIS 可以呼叫 MiniportRestart 函式,將配接器轉換為執行中狀態。 如需詳細資訊,請參閱 啟動迷你連接埠配接器

如果 MiniportInitializeEx 傳回NDIS_STATUS_SUCCESS,驅動程式應該釋放 MiniportHaltEx 函式中配接器的所有資源。 如需詳細資訊,請參閱 停止迷你連接埠配接器

驅動程式必須呼叫 NdisMSetMiniportAttributes,並在傳回NDIS_STATUS_SUCCESS時,在 NDIS_MINIPORT_ADAPTER_ATTRIBUTES 結構中設定 GeneralAttributes

如果 MiniportInitializeEx 失敗,則在返回之前,MiniportInitializeEx 必須釋放其配置的所有資源,並且適配器會回到停止狀態。

停止迷你埠配接器

Miniport 配接器狀態和操作

迷你端口驅動程式傳送和接收作業

分散/收集 DMA

啟動迷你埠配接器