Linux内核学习笔记 -24 中断处理机制

中断描述符表IDT放在内核的数据段中,它的起始地址放在中断描述符表寄存器,即IDTR中,如上图蓝色箭头所示。

在内核中中断描述符相关的源代码是什么样子?有一个变量IDT_DESCR,它存放在head_32.S,或者在64位系统中存放在head_64.S中,这里面有两个汇编语句,第一句表示中断描述符表包含256个中断描述符;第二句表示中断描述符的入口地址

如何对中断描述符初始化?在linux内核中,在系统的初始化阶段首先要初始化可编程控制器,将中断描述符的起始地址装入到中断描述符表寄存器IDTR中,并且开始初始化表中的每一项。

当计算机运行在实模式时,中断描述符表被初始化,并由BIOS使用。

当真正进入了linux内核以后,中断描述符表就被移动到内核的另一个区域,并且进入保护模式进行预初始化

猜你喜欢

转载自blog.csdn.net/f2157120/article/details/107805646