【linux内核分析与应用-陈莉君】中断机制概述

目录

 

1.中断是什么?

2.为什么引入中断?

3.CPU什么时候响应中断?

4.中断模型

5.中断子系统

6.中断源-中断向量的类型

7.中断描述符表

8.动手实践与参考资料


1.中断是什么?

中断是CPU对系统发生的某个事件作出的一种反应,当中断发生的时候,CPU暂停正在执行的程序,
保留现场后自动转去执行相应事件的处理程序,处理完成后,返回到断点,继续处理被打断的程序.
听起来很简单,实际上中断是操作系统的脉搏,是并发处理的基础,远远不像概念说的这么简单.

【linux内核分析与应用-陈莉君】中断机制概述_第1张图片

2.为什么引入中断?

中断的引入是为了支持CPU和设备之间的并行操作.当CPU启动设备进行输入输出后,
设备便可以独立地工作了,CPU就转去处理自己的事情,当设备完成输出后,通过向
CPU发出中断报告此次输入输出的结果,让CPU决定如何处理之后的事情.

 【linux内核分析与应用-陈莉君】中断机制概述_第2张图片

3.CPU什么时候响应中断?

CPU收到中断信号以后并不立即响应,而是在执行每条指令周期的最后一个时间周期,
一旦检测到中断有效并且中断允许标志位置为1的时候CPU才会在当前指令执行完以后
转入中断响应周期.

【linux内核分析与应用-陈莉君】中断机制概述_第3张图片

4.中断模型

【linux内核分析与应用-陈莉君】中断机制概述_第4张图片

【linux内核分析与应用-陈莉君】中断机制概述_第5张图片

【linux内核分析与应用-陈莉君】中断机制概述_第6张图片

【linux内核分析与应用-陈莉君】中断机制概述_第7张图片

5.中断子系统

【linux内核分析与应用-陈莉君】中断机制概述_第8张图片

6.中断源-中断向量的类型

【linux内核分析与应用-陈莉君】中断机制概述_第9张图片

7.中断描述符表

8086实地址模式中,CPU把内存中从0开始的1K字节作为一个中断向量表,
表中的每个表项占4个字节,由两个字节的段地址和两个字节的偏移量组成,
这样组成的地址便是相应中断处理程序的入口地址.
但是在保护模式下由4个字节表项构成的中断向量表显然满足不了要求,
这是因为:
1.除了两个字节的段地址外,偏移量必须用四个字节来表示;
2.要有反应模式切换的信息.

【linux内核分析与应用-陈莉君】中断机制概述_第10张图片

【linux内核分析与应用-陈莉君】中断机制概述_第11张图片
【linux内核分析与应用-陈莉君】中断机制概述_第12张图片

【linux内核分析与应用-陈莉君】中断机制概述_第13张图片

8.动手实践与参考资料

【linux内核分析与应用-陈莉君】中断机制概述_第14张图片

【linux内核分析与应用-陈莉君】中断机制概述_第15张图片

你可能感兴趣的:(操作系统,中断)