操作系统的中断和异常

 时间:2026-02-17 04:42:29

1、早期的计算机只能串行执行,系统资源利用率低。为了解决这个问题,人们发明了操作系统(作为计算机的管理者),引入中断机制,实现了多道程序并发执行。

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

3、用户态和核心态的切换是通过中断实现的,并且中断是切换的唯一途径。核心态到用户态的切换是通过执行一个特权指令,将程序状态字(PSW)的标志位设置为用户态。

1、中断分为内中断和外中断。内中断(也称异常、例外、陷入)信号来源是CPU内部,与当前执行的指令有关,外中断(狭义的中断)信号的来源是CPU外部,与当前执行的指令无关。

2、内中断可以分为自愿中断和强迫中断,自愿中断是指指令中断,如系统调用时使用的访管指令(又叫陷入指令、trap指令),强迫中断是指硬件故和软件故障(如整数除0)。

3、内中断还可以分为陷入(trap)、故障(fault)和终止(abort)。陷入指有意而为之的异常,如系统调用。故障指由错误条件引起的,可能被故障处理程序修复,如缺页。终止指不可恢复的致命错误造成的结果,终止处理程序不再将控制返回给引发终止的应用程序,如整数除0。

4、外中断可以分为外设请求(如I/O操作完成发出的中断信号)和人工干预(如用户强行终止进程)。

1、执行完每个指令之后,CPU都要检查当前是否有外部中断信号。

2、如果检测到外部中断信号,则需要保护被中断进程的CPU环境(如程序状态字PSW、程序计数器PC、各种通用寄存器)。

3、根据中断信号类型转入相应的中断处理程序。

4、中断程序处理结束后,恢复原进程的CPU环境并退出中断,返回原进程继续往下执行程序。

  • eclipse "no make found in PATH" 解决方法
  • 如何用JAVA求出一列数字中的最小数字
  • 二代旁系血亲图解
  • infinitode2攻略
  • ASP编程技巧:如何给文本框加上日期控件
  • 热门搜索
    逡怎么读 用户账户控制怎么取消 我来自中国英语怎么说 腺样体肥大是怎么引起的 血压偏高怎么办 电子邮箱怎么写 鱼怎么画 荨麻疹怎么治 日记怎么写三年级 鱼泡怎么做好吃