首页 > 其他分享 >11.4外围设备的中断请求

11.4外围设备的中断请求

时间:2023-02-15 20:36:11浏览次数:48  
标签:主程序 处理 11.4 中断请求 中断 外围设备 CPU

      IRQ是用来暂停当前正在运行的程序,并跳转到其他程序运行的必要机制。该机制称为中断处理。中断处理在硬件控制中担当着重要角色。因为如果没有中断处理,就有可能出现无法顺畅进行的情况。

     从中断处理开始到请求中断的程序(中断处理程序)运行结束之前,被中断的程序(主程序)的处理是停止的。这种情况就类似于在处理文档的过程中有电话打进来,电话就相当于中断处理。假如没有中断功能的话,就必须等到文档处理完毕才可以接听电话。这样就太不方便了。由此可见,中断处理有着很大的价值。就像接听完电话后返回到原来的文档作业一样,中断处理程序运行结束后,处理也会返回到主程序中继续(图 11-6 )。

 

       实施中断请求的是连接外围设备的I/O控制器,负责实施中断处理程序的是CPU。为了进行区分,外围设备的中断请求会使用不同于I/O端口的其他编号,该编号称为中断编号。

      假如同时有多个外围设备进行中断请求的话,CPU也会为难。为此,我们可以在I/O控制器和CPU中间加入名为中断器的IC来进行缓冲图11-7。

 

       CPU接收到来自中断控制器的中断请求后,会把当前正在运行的主程序中断,并切换到中断处理程序。中断处理程序的第一步处理,就是把 CPU 所有寄存器的数值保存到内存的栈中。在中断处理程序中

完成外围设备的输入输出后,把栈中保存的数值还原到 CPU寄存器中,然后再继续进行对主程序的处理。假如 CPU 寄存器的数值没有还原的话,就会影响到主程序的运行,甚至还有可能会使程序意外停止或者发生运行异常。这是因为主程序在运行过程中,出于某些原因用到 CPU 寄存器。而这时如果突然插人别的程序,主程序必然会受到影响。因此,在中断请求完毕后,各寄存器的数值必须要还原到中断前的状态。只要寄存器的值保持不变,主程序就可以像没有发生任何事情一样继续处理(图 11-8 )。

 

标签:主程序,处理,11.4,中断请求,中断,外围设备,CPU
From: https://www.cnblogs.com/24koi/p/17124538.html

相关文章

  • 11.4 外围设备的中断请求
    IRQ是用来暂停当前正在运行的程序,并跳转到其他程序运行的必要机制。该机制称为中断处理。如果没有中断处理,就有可能出现处理无法顺畅进行的情况。从中断处理开始到请求中断......
  • 11.4外围设备的中断请求
    IRQ是用来暂停当前正在运行的程序,并跳转到其他程序运行的必要机制。该机制称为中断处理。中断处理在硬件控制中担当着重要角色。因为如果没有中断处理,就有可能出现处理无法......
  • 11.4外围设备的中断请求
    让我们再来看一下图11-4。在“I/O范围”下面有一个“IRQ”项目,对应的值是0x00000006(06)。IRQ(IterruptRequest)是中断请求的意思。那么,IQ主要是用来做什么的呢?I......
  • 用 Java?试试国产轻量的 Solon v1.11.4(带视频)
    一个更现代感的Java应用开发框架:更快、更小、更自由。没有Spring,没有Servlet,没有JavaEE;独立的轻量生态。主框架仅0.1MB。@ControllerpublicclassApp{publ......
  • 9.第三章第5节: 2021.11.4 技术架构选型 没用
                   ......
  • KVM/QEMU(virt-manager)使用iso镜像安装macOS bigsur 11.4
    参考:https://blog.csdn.net/u012332816/article/details/1221868991.背景本人没有mac电脑,但是需要在macOS上做一些事情,原来我在VMWareWorkstations和VirtualBox......
  • 10.31-11.4 周末总结
    目录一、ATM项目二、编程思想1.面向过程2.面向对象三、对象与类四、类与对象的创建1.类的语法结构2.类的定义与调用1.定义类2.查看名称空间的方法1__dict__方法2点号运算......
  • 【10.29-11.4】博客精彩回顾
    一、优秀文章推荐1.​​vue中引入高德地图Loca数据可视化​​2.​​SpringBoot自定义注解+异步+观察者模式实现业务日志保存​​​3.​​【原子样式实践】一次搞定微信开发......
  • 11.1 LAMP架构介绍 11.2 MySQL、MariaDB介绍 11.3/11.4/11.5 MySQL安装
     11.1LAMP架构介绍LAMP是Linux+Apache(httpd)+MySQL+PHP的简称•Linux:操作系统•Apache(httpd):WEB服务器软件,提供WEB服务•MySQL:关系型数据库用于存储数据(字符串)•......
  • 11.4 Bug的常见类型-思路不清导致的部题
     lst=[{'rating':[9.7,2062397],'id':'1292052','type':['犯罪','剧情'],'title':'肖申克的救赎','actors':['蒂姆·罗宾斯','摩根·弗里曼']},{'rating':[9.6,15......