请教:关于 中断处理程序,中断服务例程

很难受 2019-02-15 11:06:22

这是书上I/O中断部分“单重中断和多重中断服务程序的流程”,我的疑问是:
1、保护现场包括 :a.保护程序断点;b.保存各寄存器内容。书上说a由中断隐指令完成,b由中断服务程序完成,即ab都属于保护现场,只是a在中断周期执行对吗?
我理解为:类似于“MAR,MDR功能属于主存,却制作在CPU里。“ 这种理解对吗?)

2、在图里,向量地址->PC这一步在关中断之后;在书上中断周期部分,第5步是”将向量地址形成部件的输出送至PC,记作向量地址->PC,为下一取指周期准备“,第6步才是关中断,这该如何解释?

3、书上先说:“中断处理可简单归为:中断请求、中断判优、中断响应、中断服务、中断返回5个阶段”,又说“中断服务程序分4部分:保护现场、中断服务(设备服务)、恢复现场、中断返回”。都包含“中断返回”?这其中包含关系是怎样的?
我知道:一个中断处理程序对应中断请求队列中若干中断服务例程。)

望高手不吝赐教。
...全文
435 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
很难受 2019-02-20
  • 打赏
  • 举报
回复
丢中断我就更不清楚了…… 结贴了吧,总结一下: 1、处理来自硬件的中断请求时,首先在指令周期的执行周期末进行检测,有请求且可以处理时就进入中断周期,开始做准备工作,保存断点,确定中断向量(中断处理程序入口地址),然后置为PC,之后就又是取指、执行了。中断周期这部分的准备工作比较少,由硬件完成,主要就是保存断点。 至于必要的保存寄存器等等,那个工作量多一些,又有线程的指令可以做,自然放在中断服务程序中,即软件完成 2、关中断和将PC置为中断处理程序入口地址,这都是在中断周期内由硬件完成的工作,所以先后顺序无所谓,都做了就行了。这里的关中断是为了中断处理程序执行时不被打断预设的。 3、中断返回指的是中断服务程序在末尾会结束返回,它也意味着整个中断请求的处理结束。所以说中断处理结束返回,也能被理解
很难受 2019-02-19
  • 打赏
  • 举报
回复
1、是不是就是这位说的那个意思?https://zhidao.baidu.com/question/441609451.html 2、没太看懂…… 我想问的是“向量地址送入PC”先发生,还是“关中断以防止CPU再次响应新的中断请求”先发生?是不是不一定? 3、中断返回的意思我知道, 我想问的是:中断返回定义上属于中断服务例程的一部分还是中断处理程序的一部分?是不是本来就没有确切的定义?(我怕考研会考到) 谢谢啦
kiol2001 2019-02-19
  • 打赏
  • 举报
回复
一直没搞明白,如何防止丢中断的
fly 100% 2019-02-19
  • 打赏
  • 举报
回复
1 a为纯c程序,b为汇编 2 非抢占式就是要确定一个中断后进入中断处理,完成后才能开启其他的中断伺候 3 都是指cpu 返回到保存的运行地址继续任务

6,125

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 硬件设计
社区管理员
  • 硬件设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧