2.13 开启中断
现在,系统中所有中断服务程序都已经和IDT正常挂接。这意味着中断服务体系已经构建完毕,系统可以在32位保护模式下处理中断,重要意义之一是可以使用系统调用。
可以开启中断了!
执行代码如下:
//代码路径:include/asm/system.h:
#define sti() __asm__ ("sti"::)
//代码路径:init/main.c:
void main(void)
{
…
sti();
…
}
图2-29给出了开中断后的效果,注意其中EFLAGS中的变化。