PSHED 插件指南
下面是 PSHED 插件必须遵循的准则列表。
对于更正的错误,错误处理流受到对所有设备驱动程序施加的相同限制。 中断服务例程 (ISR) 不得执行超过 25 微秒, (DPC 的延迟过程调用) 不得执行超过 100 微秒。 因此,PSHED 插件的回调函数以及 PSHED 插件的回调函数可能调用的任何固件例程不得在任意时间段内执行。 对于未更正的错误,错误处理流可以忽略这些限制,因为系统处于在未给予处理错误条件的优先级时可能发生数据丢失的状态。
PSHED 插件应仅与它断言控制的硬件直接交互。 这意味着 PSHED 插件应执行以下操作:
- 声明它与之交互的任何硬件资源的所有权,这些资源在体系结构上对操作系统可见。
- 如果可以重新定位与 PnP 交互的任何硬件资源,则支持即插即用 (PnP) 。
- 与与同一硬件资源交互的所有其他软件或固件协调与操作系统在体系结构上不可见的任何硬件资源的所有交互。
- 仅与尚未由 PSHED 或低级别硬件错误处理程序操作的硬件资源进行交互, (LLHEH) 。 PSHED 插件应仅操作不属于由 LLHEH 操作的标准芯片集寄存器的特定于芯片集的寄存器。
注意 平台固件不应像系统管理模式错误处理代码那样对所有计算机资源进行绝对控制,因为在虚拟化或分区系统中,硬件的分区方式可能使此假设是错误的。