PSHED Plug-Ins簡介
平臺廠商可以提供利用平臺特定功能的 PSHED 外掛程式來補充預設 PSHED 功能。 PSHED 外掛程式是特殊用途的 Windows 裝置驅動程式,可實作 PSHED 所呼叫的回呼介面。 PSHED 外掛程式的目的是要增強或覆寫 Microsoft 提供的 PSHED 預設行為。
PSHED 外掛程式會在系統啟動期間列舉特定硬體識別碼時,實作為Windows 驅動程式模型 (WDM) 裝置驅動程式,由 隨插即用 (PnP) 管理員載入。 平臺廠商會指定起始 PSHED 外掛程式載入的硬體識別碼。 此硬體識別碼可以位於 ACPI 命名空間中,也可以位於另一個裝置命名空間中。
PSHED 外掛程式不會處理由使用者模式應用程式或較高層級驅動程式起始的任何 I/O 要求。 因此,只有在實作驅動程式分派常式時,才需要 PSHED 外掛程式, (請參閱 DRIVER_DISPATCH) 來處理 IRP_MJ_PNP 和 IRP_MJ_POWER IRP。 PSHED 外掛程式不需要註冊裝置介面,或為其裝置物件建立符號連結。
PSHED 外掛程式會參與下列一或多個與硬體錯誤處理相關聯的 功能區域 :
針對所有這些功能區域,PSHED 外掛程式會實作 PSHED 所呼叫的回呼函式。 PSHED 外掛程式會指定其參與的功能區域,並在其向 PSHED 註冊 本身時,提供相關聯回呼函式的指標。 您可以同時向 PSHED 註冊多個 PSHED 外掛程式。 不過,如果多個已註冊的 PSHED 外掛程式指定它參與特定功能區域,則只有最後一個註冊本身才會實際參與該功能區域。
PSHED 外掛程式旨在由平臺廠商實作為硬體平臺硬體錯誤報表和復原功能的軟體介面。 PSHED 外掛程式可以使用平臺廠商所定義的任何私人介面或機制,與平臺韌體進行介面。 這可讓平臺廠商繼續使用現有的韌體來處理硬體錯誤。 Microsoft 預期會標準化更多硬體錯誤報表和復原功能。 此時,對一般錯誤處理和報告的 PSHED 外掛程式需求將會降低,因此只有支援廠商特定功能,才能提供超出標準硬體錯誤處理功能的額外價值。