中断和异常

本文介绍了中断机制的起源和发展,解释了中断机制如何使操作系统能够管理多道程序并发执行。文中详细阐述了中断的本质、作用及分类,并说明了外中断的处理过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

中断和异常

中断机制的诞生

早期的计算机是用打孔纸带作为输入输出的,每次只能有一道程序运行,CPU的利用率非常低,为了解决这个问题,人们发明了操作系统(作为计算机的管理者),引入中断机制,实现了多道程序并发执行。

中断机制的概念和作用

中断的本质:只要发生中断,就意味着需要操作系统介入,开展管理工作。

举个例子:现在有A,B,C三道程序并发运行,刚开始程序A在用户态的状态下运行,运行了一段时间之后,CPU可能会收到计时部件发出的中断信号,CPU会切换为核心态,把CPU的使用权限交给操作系统,操作系统内核对中断信号进行处理,操作系统内核发现刚才的中断信号是告诉他时间片已到,那么操作系统就发现程序A的时间片已经用完了,现在该换程序B运行了。在操作系统完成这一系列的管理工作之后,操作系统会把CPU的使用权交给用户进程,接着程序B就会在用户态下开始执行。

1.当中断发生时,CPU会立即进入核心态。

2.当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理。

3.对于不同的中断信号,会进行不同的处理。

发生了中断,就意味着需要操作系统介入,开展管理工作。由于操作系统的管理工作,比如进程切换、分配I/O设备等都需要使用特权指令,因此CPU要从用户态转为核心态。中断可以是CPU从用户态切换为核心态,是操作系统获得计算机的控制权。有了中断,才能实现多道程序并发执行。

CPU用户态和核心态是怎么切换的?

答:CPU的用户态和核心态的切换,是通过中断实现的。并且中断是唯一的途径。

中断的分类和异常

如果中断信号的来源来自于CPU的内部,那么这种中断就叫做内中断,比如整数除0之后,操作系统得到CPU的中断信号之后,内核程序就会得到CPU的使用权,中断程序的运行,这种中断信号是来源于CPU的内部的,因此被称为内中断;如果是外部的输入输出设备已经完成操作,它会向操作系统发送一个中断信号,操作系统会中断I/O操作,把CPU的使用权交给程序,这种中断信号是来自于CPU外部,因此这种中断被称为是外中断。

img

内中断又被称为异常。

外中断的处理过程

img

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr-X~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值