计算机组成原理-程序中断方式完整流程

发布时间:2024年01月17日

程序中断方式完整流程

首先CPU通过执行IO指令来启动外部设备,此时外部设备可以开始做准备工作了(准备CPU想要的数据或者信息),在外部设备准备过程中,CPU可以继续执行原程序的内容
当IO设备完成工作后,会给CPU发送一个中断请求表示自己准备工作已经完成,此时对应刚刚执行完的指令为K,当中断处理完返回到K+1的指令

中断处理程序中还包括让其IO设备继续恢复工作(例如要输出n个字符时,此时如果是一个一个字符发起中断,那么中断处理程序还需恢复IO设备的工作或者说继续执行之前的IO指令,因为它还没执行完),及让外设准备下一个数据
在这里插入图片描述

例题

CPI是clock per instruction,是每条指令需要的平均时钟周期

中断响应其实可以理解为中断隐指令,可以理解为CPU为响应中断做的一些关于准备要执行中断处理程序的准备工作

此时先要启动D工作,然后到D将字符送入IO端口,然后再申请中断,接着中断响应,然后进行中断服务程序
在这里插入图片描述

小结

在这里插入图片描述
程序中断方式的完整流程主要包括以下几个步骤:

  1. 中断源发出中断请求。中断源可以是硬件设备(如键盘、鼠标、定时器等)或软件(如系统调用、异常处理等)。

  2. 判断当前处理机是否允许中断和该中断源是否被屏蔽。这是为了防止不必要的中断干扰CPU的正常工作。

  3. 优先权排队。如果有多个中断同时发生,需要根据预先设定的优先级来决定先处理哪一个中断。

  4. 处理机执行完当前指令或当前指令无法执行完,则立即停止当前程序,保护断点地址和处理机当前状态,转入相应的中断服务程序。这是中断响应阶段,包括保存现场和跳转到中断服务程序的入口地址。

  5. 执行中断服务程序。在这个阶段,CPU会对接收到的中断进行处理,比如设备驱动程序的执行、用户进程的管理等。

  6. 返回原程序继续执行。中断处理完毕后,CPU会返回到原来被中断的地方,继续执行原来的程序。

文章来源:https://blog.csdn.net/llovewuzhengzi/article/details/135654097
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。