Windows 7 中的 IEEE 1394 匯流排驅動程式
Windows 7 包含 1394ohci.sys,這是新的 IEEE 1394 匯流排驅動程式,支援 IEEE-1394b 規格中所定義的更快速度和替代媒體。 1394ohci.sys匯流排驅動程式是單一 (整合型) 裝置驅動程式,使用核心模式驅動程式架構 (KMDF) 實作。 舊版 Windows) 中提供的舊版 1394 匯流排驅動程式 (包含使用 Windows 驅動程式模型 (WDM) 埠/迷你埠組態實作的多個設備磁碟機。 1394ohci.sys匯流排驅動程式會取代舊版埠驅動程式、1394bus.sys和主要迷你埠驅動程式,ochi1394.sys。
新的1394ohci.sys匯流排驅動程式與舊版匯流排驅動程式完全回溯相容。 本主題描述新版和舊版 1394 匯流排驅動程式之間行為的一些已知差異。
注意
1394ohci.sys驅動程式是包含在 Windows 中的系統驅動程式。 當您安裝 1394 控制器時,會自動載入它。 這不是您可以個別下載的可轉散發驅動程式。
I/O 要求完成
所有傳送至新 1394 匯流排驅動程式的 I/O 要求都會傳回STATUS_PENDING,因為1394ohci.sys匯流排驅動程式是使用 KMDF 而不是 WDM 實作。 此行為不同于舊版 1394 匯流排驅動程式的行為,其中某些 I/O 要求會立即完成。
用戶端驅動程式必須等到傳送至新 1394 匯流排驅動程式的 I/O 要求完成為止。 您可以提供要求完成之後所呼叫的 I/O 完成常式。 已完成 I/O 要求的狀態在 IRP 中。
設定 ROM 擷取
新的 1394 匯流排驅動程式會嘗試以更快的匯流排速度使用非同步區塊交易,以擷取節點組態 ROM 的內容。 舊版 1394 匯流排驅動程式會以 S100 速度使用非同步四列讀取,或每秒 100 MB 位 (Mbps) 。 1394ohci.sys匯流排驅動程式也會使用節點組態 ROM標頭產生和max_rom專案中指定的值,以改善擷取組態 ROM 的其餘內容。 如需新 1394 匯流排驅動程式如何擷取節點組態 ROM 內容的詳細資訊,請參閱 擷取 IEEE 1394 節點的組態 ROM 的內容。
IEEE-1394-1995 PHY 支援
1394ohci.sys匯流排驅動程式需要支援 IEEE-1394a 或 IEEE-1394b 的實體層 (PHY) 。 它不支援支援 IEEE-1394-1995 的 PHY。 這項需求是因為1394ohci.sys匯流排驅動程式獨佔使用短 () 匯流排重設。
NODE_DEVICE_EXTENSION結構使用方式
用戶端驅動程式可以在用戶端驅動程式所控制裝置的裝置上參考與實體裝置物件相關聯的 1394 匯流排驅動程式中的裝置擴充功能, (PDO) 。 此裝置擴充功能是由 NODE_DEVICE_EXTENSION 結構所描述。 在1394ohci.sys中,此結構會維持在與舊版 1394 匯流排驅動程式相同的位置,但結構的非靜態成員可能無效。 當用戶端驅動程式使用新的 1394 匯流排驅動程式時,他們必須確定 NODE_DEVICE_EXTENSION 中存取的資料有效。 包含有效資料的 NODE_DEVICE_EXTENSION 靜態成員為 Tag、 DeviceObject和 PortDeviceObject。 NODE_DEVICE_EXTENSION 的所有其他成員都是 非靜態的,用戶端驅動程式不得參考。
間距計數優化
1394ohci.sys匯流排驅動程式的預設行為是在 1394 匯流排上只找到 IEEE 1394a 裝置時,將差距計數優化,不包括本機節點。 例如,如果執行1394ohci.sys的系統具有符合 IEEE 1394b 的主機控制器,但匯流排上的所有裝置都符合 IEEE 1394a,則新的 1394 匯流排驅動程式會嘗試優化間距計數。
只有當1394ohci.sys匯流排驅動程式判斷本機節點是匯流排管理員時,才會發生間距計數優化。
1394ohci.sys匯流排驅動程式會透過節點自我識別碼封包中的速度設定,判斷裝置是否符合 IEEE-1394a。 如果節點在自我識別碼封包中的速度 (sp) 欄位中設定這兩個位,則1394ohci.sys會將節點視為符合 IEEE-1394b。 如果速度欄位包含任何其他值,則1394ohci.sys會將節點視為符合 IEEE-1394a。 所使用的間距計數值是以 IEEE-1394a 規格中的資料表 E-1 為基礎,可提供間距計數做為躍點的函式。 1394ohci.sys匯流排驅動程式不會計算間距計數。 您可以使用登錄值來變更預設間距計數行為。 如需詳細資訊,請參閱 修改 IEEE 1394 匯流排驅動程式的預設行為。
裝置驅動程式介面 (DDI) 變更
在 Windows 7 中,1394 DIS 已變更,以支援 1394b 規格所定義的更快速度,並改善以簡化 1394 用戶端驅動程式的開發。 如需新 1394 匯流排驅動程式支援的一般 DDI 變更詳細資訊,請參閱 Windows 7 中的裝置驅動程式介面 (DDI) 變更。