美文网首页
中断与异常

中断与异常

作者: NiNko | 来源:发表于2020-03-12 12:29 被阅读0次

通常CPU执行的指令有两种,分别是操作系统内核程序和用户自编程序。因此操作系统将CPU的状态划分为两种,分为用户态(目态)和核心态(又称管态,内核态)。在这两种状态下分别运行非特权指令和特权指令。
在操作系统引入核心态和用户态这两种工作状态之后,就需要考虑两种状态的切换。操作系统不允许用户程序工作在核心态,但用户程序又需要某些核心态的功能,因此在操作系统中需要某些方法实现从用户态进入核心态,这种方法就是中断和异常。当发生中断和异常时,运行用户态的CPU会立即进入核心态,这是通过硬件实现的,比如用某个特殊寄存器的某一位表示CPU工作状态,0表示核心态,1表示用户态。


  • 中断

中断也成为外中断,指来自CPU执行指令以外的时间发生,如I/O中断,时钟中断等。这一类中断通常与当前运行程序无关。

  • 异常

异常也成为内中断,指源于CPU执行指令内部的事件,如程序的非法操作码,地址越界等,对异常的处理一般依赖于当前程序的运行现场,且异常不能被屏蔽,一旦出现需要立即处理。


  • 系统调用

系统调用指用户在程序中调用操作系统提供的一些子功能,这些系统调用一般包括设备管理,文件管理,进程控制,进程通信,内存管理。系统调用的功能设计系统资源和进程管理等操作,需要某些特权指令才能完成。

用户可以执行陷入指令(访管指令)发起系统调用,请求操作系统提供服务。

相关文章

  • 中断与异常

    通常CPU执行的指令有两种,分别是操作系统内核程序和用户自编程序。因此操作系统将CPU的状态划分为两种,分为用户态...

  • 中断与异常

  • 中断、异常与并发

    0. 前言 记得在学习《计算机系统组成原理》和阅读CSAPP时,对异常控制流(异常)、并发等内容似懂非懂、雾里看花...

  • 中断/异常

    中断/异常,是操作系统的驱动力,就好比汽车的发动机、飞机的引擎 是什么? 中断是CPU对系统发生的某个事件作出的一...

  • 嵌入式学习笔记19.12.13

    异常:中断 各中断: 异常向量表(各个异常子程序入口) __reset__handler(!!handler) ....

  • 可以响应中断的方法

    sleep() 抛出中断异常后会清楚中断标志位

  • 中断和异常

    中断(英语:Interrupt)是指处理器接收到来自硬件或软件的信号,提示发生了某个事件,应该被注意,这种情况就称...

  • 中断和异常

    中断和异常 早期计算机,各个程序只能串行的执行,一个程序放入计算机移入内存之后,要等待IO设备输出结束,这个程序才...

  • 中断和异常

    中断和异常.md 中断和异常的定义 中断(interrupt)指在程序执行过程中遇到急需处理的事件时,暂时中止现行...

  • 04-30 中断与异常

    1.中断与异常 在计算机的世界里,不存在一丝温度. 它只会沿着写好的代码,心无旁骛地执行下去,这是它的优点,也是它...

网友评论

      本文标题:中断与异常

      本文链接:https://www.haomeiwen.com/subject/chqujhtx.html