2012年9月27日

orange's习题——第三章【中断和异常】

摘要: 一,简答题1,说说80386下“中断”和“异常”的概念?答案:对80386而言,中断是由异步的外部事件引起的,与正在执行的指令没有关系。异常则是由指令执行期间检测到的不正常或非法的条件引起的,它与正在执行的指令有直接关系。软中断指令“int n”和“into”也归于异常,这是因为执行这些指令产生异常事件。2,说说你对Fault,Trap,Abort的理解。答案:这三者是根据引起异常的程序是否可被恢复和恢复点的不同,把异常进一步细分的。 Fault是一种可被更正的异常,当一个fault发生时,处理器会把fault指令的源操作数恢复为指令开始之前的值,所保存断点cs及eip的值指向引起fault的 阅读全文

posted @ 2012-09-27 18:38 weiweishuo 阅读(332) 评论(0) 推荐(0) 编辑

关于“数据段向低扩展”——遇到一篇很佩服的帖子

摘要: 段描述符TYPE字段在ED=1时成为“向低扩展段”,至于什么是“向低扩展段”,杨季文老师这样说:“ED=0表示向高扩展,ED=1表示向低扩展...当段最大为1M时,在自然的向高扩展段内,从0~limit的偏移是合法有效的偏移,而从limit+1~1M-1的偏移是非法无效的偏移;在向低扩展段中,情形刚好相反,从0~limit的偏移是非法无效的偏移,而从limit+1~1M-1的偏移是合法有效的偏移。” 我看来看去没看懂,在网上查了好久也无收获,准备偃旗息鼓时竟遇到这么一篇帖子,作者探讨问题的态度让我佩服。原文粘下: 最近在研究保护模式,一个问题一直在困扰我,就是段的向下扩展,看雪里有一篇关于向. 阅读全文

posted @ 2012-09-27 18:00 weiweishuo 阅读(775) 评论(0) 推荐(0) 编辑

揭开硬件中断请求IRQ所有秘密(图解)

摘要: 实用:揭开硬件中断请求IRQ所有秘密(图解)http://www.sina.com.cn 2004年05月17日09:31 赛迪网--中国电脑教育报 文/蔡远翔 IRQ(Interrupt Request)的作用就是在我们所用的电脑中,执行硬件中断请求的动作,用来停止其相关硬件的工作状态。比如我们要打印一份文件,在打印结束时就需要由系统对打印机提出相应的中断请求,来以此结束这个打印的操作。 产生中断请求的设备或者事件被称为中断源,中断源可分为两类:一类是CPU内部中断,即执行软件中断指令INT或遇到软件陷阱而产生的中断,它们的中断类型号已由CPU规定好;另一类中断是由CPU以外的I/O设... 阅读全文

posted @ 2012-09-27 15:16 weiweishuo 阅读(2540) 评论(0) 推荐(0) 编辑

8259A编程

摘要: 一个外部中断请求信号通过中断请求线IRQ,传输到IMR(中断屏蔽寄存器),IMR根据所设定的中断屏蔽字(OCW1),决定是将其丢弃还是接受。如果可以接受,则8259A将IRR(中断请求暂存寄存器)中代表此IRQ的位置位,以表示此IRQ有中断请求信号,并同时向CPU的INTR(中断请求)管脚发送一个信号,但CPU这时可能正在执行一条指令,因此CPU不会立即响应,而当这CPU正忙着执行某条指令时,还有可能有其余的IRQ线送来中断请求,这些请求都会接受IMR的挑选,如果没有被屏蔽,那么这些请求也会被放到IRR中,也即IRR中代表它们的IRQ的相应位会被置1。当CPU执行完一条指令时后,会检查一下IN 阅读全文

posted @ 2012-09-27 15:05 weiweishuo 阅读(417) 评论(0) 推荐(0) 编辑

导航