Software Delegated Exception Interface (SDEI) 软件委托异常接口的一种典型应用场景是利用APEI( ACPI Platform Error Interface)用作固件优先(firmware first)的RAS故障处理的通知机制。事实上SDEI只是在ACPI6.2版本引入的一种新的通知机制(firmware to OS),可以不受中断屏蔽的影响。
Firmware First Error Handling with SDEI
RAS是系统鲁棒性的重要特性,重点关注由硬件产生的故障,这些故障一般有两种处理方式:firmware first 和 kernel first。其中firmware first的处理流程如下图:
- RAS节点检测到故障
- Firmware收到故障事件(中断)
- 故障事件转发到MM驱动
- MM驱动从故障记录寄存器中读取RAS故障并生成CPER(Common Platform Error Record)故障记录,返回EL3
- EL3通过SDEI通知OS
- OS读CPER并处理故障
从上面的流程可以看出,SDEI是firmware到OS的通知机制