次の方法で共有


PSHED プラグイン ガイドライン

PSHED プラグインに従う必要があるガイドラインの一覧を次に示します。

  • 修正されたエラーの場合、エラー処理フローには、すべてのデバイス ドライバーに適用されるのと同じ制限が適用されます。 割り込みサービス ルーチン (ISR) は 25 マイクロ秒を超える場合は実行できません。遅延プロシージャ呼び出し (DPC) は 100 マイクロ秒を超える場合は実行できません。 そのため、PSHED プラグインのコールバック関数、および PSHED プラグインのコールバック関数が呼び出す可能性があるファームウェア ルーチンは、任意の期間実行できません。 修正されていないエラーでは、エラー処理フローは、エラー条件の処理に優先順位が与えられない場合にデータ損失が発生する可能性がある状態にあるため、これらの制限を無視できます。

  • PSHED プラグインは、制御をアサートしたハードウェアと直接やり取りする必要があります。 つまり、PSHED プラグインは次のことを行う必要があります。

    • オペレーティング システムがアーキテクチャから参照できる、やり取りするハードウェア リソースの所有権を請求します。
    • やり取りするハードウェア リソースを再配置できる場合は、プラグ アンド プレイ (PnP) をサポートします。
    • オペレーティング システムがアーキテクチャから参照できないハードウェア リソースと、同じハードウェア リソースとやり取りする他のすべてのソフトウェアまたはファームウェアとのやり取りをすべて調整します。
    • PSHED または低レベル ハードウェア エラー ハンドラー (LLHEH) によってまだ操作されていないハードウェア リソースとのみやり取りします。 PSHED プラグインは、LLHEH によって操作される標準チップセット レジスタの一部ではないチップセット固有のレジスタのみ操作する必要があります。

システム管理モードのエラー処理コードの場合と同様、プラットフォーム ファームウェアでは、すべてのコンピューター リソースの絶対制御を想定するべきではありません。仮想化またはパーティション分割されたシステムでは、この想定が誤っているような方法でハードウェアがパーティション分割される可能性があるためです。