共用方式為


初始化 Miniport 配接器

當網路裝置變成可用時,如果尚未載入,系統會載入所需的 NDIS 迷你埠驅動程式。 接著,隨插即用 (PnP) 管理員會傳送 NDIS 隨插即用 IRP 來啟動裝置。 NDIS 會呼叫 miniport 驅動程式的 MiniportInitializeEx 函式,以初始化網路介面卡以進行網路 I/O 作業。 NDIS 可以在驅動程式初始化之後隨時呼叫 MiniportInitializeEx 。 如需迷你埠驅動程式初始化的詳細資訊,請參閱 初始化 Miniport 驅動程式

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

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

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

  2. 取得介面卡硬體資源的相關資訊。

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

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

迷你埠驅動程式會指定MiniportInitializeEx傳遞至NdisMSetMiniportAttributesNDIS_MINIPORT_ADAPTER_ATTRIBUTES結構中的配接器屬性。

MiniportInitializeEx通常會依下列順序配置介面卡特定資源:

  1. 非分頁集區記憶體。

  2. (請參閱迷你埠驅動程式傳送和接收作業) NET_BUFFER和NET_BUFFER_LIST集區。

  3. 微調鎖定。

  4. 計時器。

  5. IO 埠。

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

  7. 共用記憶體。

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

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

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

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

如果 MiniportInitializeEx 失敗, MiniportInitializeEx 必須釋放它所配置的所有資源,然後配接器會返回已停止狀態。

停止迷你埠配接器

迷你埠配接器狀態和作業

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

散佈圖/收集 DMA

啟動 Miniport 配接器