中断和异常

来源:互联网 发布:js canvas scale 编辑:程序博客网 时间:2024/04/27 23:52

一、中断:系统停止当前正在运行的程序而转向其他服务,可能是因为优先级高的请求

服务了,或者是因为人为安排中断。中断是属于正常现象。   
异常:是由于软件错误而引起的

二、中断是CPU所具备的功能   --   硬件   
异常是软件运行过程中的一种开发过程中没有考虑到的程序错误   --   软件   

三、
1.中断的概念     
    
所谓中断是指CPU对系统发生的某个事件作出的一种反应:CPU暂停正在执行的程序,

保留现场后自动地转去执行相应的处理程序,处理完该事件后再返回断点继续执行被“

打断”的程序。   
    
引起中断的事件称为中断源,中断源向CPU提出进行处理的请求称为中断请求。     
    
2.中断类型     
    
按中断事件来源进行分类,主要有两类:     
    
(1)中断。由CPU以外的事件引起的中断,如I/O中断、时钟中断、控制台中断等。

   
    
(2)异常(exception)。来自CPU的内部事件或程序执行中的事件引起的过程。如

由于CPU本身故障、程序故障和请求系统服务的指令引起的中断等。     
    
3.中断的一般处理过程     
    
中断处理一般分为中断响应和中断处理两个步骤。中断响应由硬件实施,中断处理主

要由软件实施。     
    
(1)中断响应     
    
对中断请求的整个处理过程是由硬件件和软件结合起来而形成的一套中断请求机构实

施的,发生中断时,CPU暂停执行当前的程序,而转去处理中断。这个硬件对中断请求

作出反应的过程,称为中断响应。     
    
一般来说,中断响应顺序执行下述三步动作:①中止当前程序的执行;②保存原程序

的断点信息;③转到相应的处理程序。     
    
通常CPU在执行一条指令后,立即检查有无中断请求。如有,则立即作出响应。     
    
(2)中断处理     
    
中断响应后,就由软件(中断处理程序)进行相应处理。中断处理过程大致分为四个

阶段:保存被中断程序的现场,分析中断原因,转入相应处理程序进行处理,恢复被中

断程序现场(即中断返回)。

原创粉丝点击