Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1242025
  • 博文数量: 122
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 4004
  • 用 户 组: 普通用户
  • 注册时间: 2014-02-20 08:27
文章分类
文章存档

2016年(1)

2015年(21)

2014年(100)

分类: LINUX

2015-07-29 19:24:35

一、相关概念
SMI:System Management Interruption,系统管理中断。是由硬件触发,由BIOS处理的中断。硬件有相应的指令可以触发,触发后CPU将进入SMM模式(System Management Mode系统管理模式),此时OS相关执行流程将被挂起,执行BIOS中注册的ISR。
SCI:System Control Interruption,系统控制中断,是由BIOS触发,然后由OS处理的中断,通常会在BIOS处理完相关的SMI中断后触发,从而退出SMM模式,退回保护模式,然后由OS内核中注册的ISR进行处理。用于BIOS和OS之间的通信。

二、问题
硬件上报中断事件后,如何决定该中断是由BIOS处理,还是由OS处理?
南桥芯片上有寄存器,可以配置指定中断是否为SMI中断,如果指定为SMI中断,则由BIOS处理,且处理时进入SMM模式。
BIOS处理完中断后,通常会向OS发送SCI中断,然后由OS中注册的SCI接口来处理。
BIOS在初始化时,就会将需要自己处理的事件对应的中断设置为SMI中断,比如ACPI相关的事件。
未设置为SMI的中断(包括NMI和普通中断),默认由OS处理。
阅读(11228) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~