3.4. 系统管理中断
实时,系统管理中断(SMI)提供扩展功能,如传统的硬件设备仿真,也可用于系统管理任务。smis 与不可屏蔽中断(NMI)相似,它们使用特殊的用电信号处理行,通常不可屏蔽。当发生 SMI 时,CPU 会进入系统管理模式(SMM)。在这个模式中,执行特殊的低级处理程序来处理 SMI。SMM 通常直接从系统管理固件提供,通常是 BIOS 或 EFI。
实时 SMI 最常用于提供传统硬件模拟。常见的例子是减少磁盘驱动器。如果没有附加 diskette 驱动器,操作系统会尝试访问磁盘,并触发 SMI。在这种情况下,处理器通过模拟设备提供操作系统。然后,操作系统将仿真视为旧设备。
在实时中,SMI 可能会对系统造成负面影响,因为它们无需直接参与操作系统。编写较差的 SMI 处理例程可能会消耗大量 CPU 时间,操作系统可能无法抢占处理程序。这可以在其他精心调整后创建定期高延迟,并会响应高度响应的系统。由于供应商可以使用 SMI 处理程序来管理 CPU 温度和 fan 控制,因此可能无法禁用它们。在这种情况下,您必须使用这些中断通知问题的供应商。
在实时中,您可以使用 hwlatdetect 程序隔离 SMI。它包括在 rt-tests 软件包中。这个实用程序测量 SMI 处理期间 CPU 使用的时间周期。