赞
踩
Linux中断知识汇总:
目录
异常:因为内部或者外部的一些事件,导致处理器停下正在处理的工作,转而去处理这些发生的事件。
当正常的程序执行流程发生暂时的停止时,称之为异常,例如处理一个外部的中断请求。从这句话中可以知道异常包括中断(单片机中的中断)+和运行模式的切换“中断”+资源访问“中断”。
中断:中断是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回原被暂停的程序继续运行。
Ps:其实中断的描述和异常的描述非常接近(甚至可以说是完全一样)因为中断就是异常的一种表现形式啊!
以ARM为例,异常包括:复位、未定义、软中断、预取指令终止、数据中止、中断、快速中断等。
中断是异常的一种。
简单来说,就是异常包含中断,异常的范围比中断要更大一些。例如复位、未定义、软中断、指令预取、数据中止等等都属于异常。
当异常(包括中断)发生的时候,处理器挂起正常执行的程序,重新设置PC为一个特殊的内存地址(这个地址叫做异常向量表),并开始加载,异常向量表每个入口包含一个指向 specific routine (包括中断)的分支指令。
异常向量表中的内容包括:
- 复位、
- 未定义、
- 软中断、
- 预取指令终止、
- 数据中止、
- 中断、
- 快速中断
中断向量表:把系统中所有的中断类型码(中断号)及其对应的中断处理函数按一定的规律存放在一个区域内,这个存储区域就叫中断向量表。
异常向量表:异常向量表就是把所有异常类型码及其对应的异常向量(入口函数)按一定的规律存在一个区域内,这个存储区域就叫做异常向量表。
中断向量表:把系统中所有的中断类型码(中断号)及其对应的中断向量(中断处理函数)按一定的规律存放在一个区域内,这个存储区域就叫中断向量表。
中断向量表包含在异常向量表中。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。