抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

image-20211010101748084

中断的作用

CPU上会运行两种程序,一种是操作系统内核程序,一种是应用程序

在合适的情况下,操作系统内核会把CPU的使用权主动让给应用程序。

“中断”是让操作系统内核夺回CPU使用权的唯一途径。

“中断”会使CPU由用户态变为内核态,使操作系统重新夺回对CPU的控制权。

如果没有“中断”机制,那么一旦应用程序上CPU运行,CPU就会一直运行这个应用程序。

中断的分类

“中断”特指狭义中的中断,即外中断。而内中断一般称为“异常“。

内中断

也称异常、例外。


与当前执行的指令有关,中断信号来源于CPU内部


有时候应用程序想请求操作系统内核的服务,此时会执行一条特殊的指令——陷入指令,该指令会引入一个内部中断信号。


执行“陷入指令”,意味着应用程序主动的将CPU控制权还给操作系统内核。“系统调用”就是通过陷入指令完成的。

陷阱、陷入(trap)

由陷入指令引发,是应用程序故意引起的。

故障(fault)

由错误条件引起的,可能被内核程序修复。内核程序修复故障后会把CPU使用权还给应用程序,让它继续执行下去。如:缺页故障。

终止(abort)

由致命错误引起,内核程序无法修复该错误,因此一般不再将CPU使用权还给引发终止的应用程序,而是直接终止该应用程序。如:整数除0,非法使用特权指令。

外中断

也称“中断”。

与当前执行的指令无关,中断信号来源于CPU外部

时钟中断

I/O中断请求

中断机制的基本原理

检查中断信号

内中断

CPU在执行指令时会检查是否有异常发生

外中断

每个指令周期末尾,CPU都会检查是否有外中断信号需要处理

找到相应的中断处理程序

通过“中断向量表”实现

评论




2019-2022 覃浩的博客 鄂ICP备2021017381号-1 正在载入...

PoweredHexo
HostedGitHub & Coding
DNSDNSPod
CDN腾讯云CDN
PictureBed腾讯云CDN
ThemeVolantis