Linux操作系统基础知识之五:中断和异常-阿里云开发者社区

开发者社区> 周兆熊> 正文

Linux操作系统基础知识之五:中断和异常

简介: Q1.        什么是中断?什么是异常?二者有何不同? A: 1)        中断控制是为克服对I/O接口采用程序查询控制服务方式所带来的处理器低效率而产生的,它的主要优点是只有在I/O接口需要服务时才能得到处理器的响应,而不需要处...
+关注继续查看
Q1.        什么是中断?什么是异常?二者有何不同?

A:

1)        中断控制是为克服对I/O接口采用程序查询控制服务方式所带来的处理器低效率而产生的,它的主要优点是只有在I/O接口需要服务时才能得到处理器的响应,而不需要处理器不断地进行查询;因此,最初的中断全部是对外部设备而言的,称为外部中断(或硬件中断);

2)        异常也叫做内部中断,它是为解决机器运行时所出现的某些随机事件及编程的方便而出现的;

3)        256种中断分为外部可屏蔽中断(INTR)和外部非屏蔽中断(NMI),所有I/O设备产生的中断请求(IRQ)均引起可屏蔽中断,而紧急事件(如硬件故障)引起的故障则产生非屏蔽中断;

4)        异常又分为故障(fault)和陷阱(trap),它们的共同特点是既不使用中断控制器,又不能被屏蔽(异常其实是CPU发出的终端信号)。

 

Q2.        什么是中断向量?Linux是如何分配中断向量的?

A:

1)        为使处理器可以容易地识别每种中断源,将256种向量中断从0到255进行编号,即赋以一个中断类型码n,把这个8位的无符号整数叫做向量,即中断向量;

2)        Linux对256个中断向量的分配如下:

A.      编号为0~31的向量对应于异常和非屏蔽中断;

B.       编号为32~47的向量(即由I/O设备引起的中断)分配给可屏蔽中断;

C.       剩余的、编号为48~255的向量用来标识软中断;Linux只用其中的一个(即128或0x80向量)来实现系统调用。

 

Q3.        什么是中断描述符表?什么是门描述符?

A:

1)        在实地址模式下,CPU将内存中从0开始的1KB空间作为一个中断向量表,表中每个表项占4个字节;但在保护模式,由4个字节的表项构成的中断向量表满足不了要求;因此在保护模式下,中断向量表中的表项由8个字节组成,中断向量表也改称为中断描述符表(IDT);

2)        IDT中的每个表项叫做一个门描述符(gate descriptor)。

 

Q4.        门描述符有哪些类型?它们有什么不同?

A:门描述符中类型码占3位,表示门描述符的类型,主要分为以下几类:

1)        中断门(interrupt gate):其类型码为110,包含了一个中断或异常处理程序所在段的选择符和段内偏移量;

2)        陷阱门(trap gate):其类型码为111;

3)       系统门(system gate):是Linux内核特别设置的,用来让用户态的进程访问陷阱门。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
关于《RedHat Linux用户基础》和《RedHat Enterprise Linux系统管理》
这两本书的课后习题书本并没有提供答案,好在红帽官方提供了答案的PDF文件,如果需要的可以去官方下载,地址是http://www.redhat.com.cn/training/academy/,在最下面的红帽学院官方指定教材的下面的两个链接就是。
1242 0
一对一直播系统开发,源码是系统搭建的基础
因为一对一直播系统很受用户欢迎,所以网上有很多源码,但是这些源码的质量参差不齐,在平台选择源码时一定要注意。
61 0
Qt-数据显示管理系统-1基础开发
看到了刘大师的作品,自己一直也想做一个,奈何懒得要死呀。最近有点动力了,就赶紧写点。这里不能向留大师那样有条理的写出来,只能是说个大致的方向,想到哪里写哪里。
54 0
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
11860 0
带你读《传感器系统:基础及应用》之一:工程中的传感器系统
本书包括传感器相关的数学、物理、电路等基础理论,介绍了相关的性能指标、性能选择以及集成到工程系统所需的软硬件,讲述了先进的传感器技术、分析建模、实际应用和设计研究实例。全书共12章,前面7章是传感器的基础知识,第8~11章分别讨论了不同种类传感器的结构及实际应用,第12章涉及先进的传感器技术。 本书可以作为高等学校测控技术与仪器、自动化、机电一体化、电气工程等专业高年级本科生和研究生教材,也可供相关科研和工程技术人员学习参考。
1125 0
+关注
周兆熊
硕士研究生毕业于南京邮电大学计算机应用技术专业,曾在中兴通讯从事软件开发工作,现就职于重庆某物联网技术公司,任高级嵌入式软件开发工程师。著有《C程序员从校园到职场》一书,同时也是《信息通信技术百科全书》的编者之一及CSDN博客专家。QQ(微信):245924426。
357
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载