硬件中断和软件中断的区别?

一、指代不同

1、硬件中断:指向量中断,即中断源的识别标志,可用来存放中断服务程序的入口地址或跳转到中断服务程序的入口地址。

2、软件中断:指软中断,是利用硬件中断的概念,用软件方式进行模拟,实现宏观上的异步执行效果。

二、中断方式不同

1、硬件中断:每个中断向量分配4个连续的字节单元,两个高字节单元存放入口的段地址CS,两个低字节单元存放入口的段内偏移量IP。

2、软件中断:上半部在屏蔽中断的上下文中运行,用于完成关键性的处理动作;而下半部则相对来说并不是非常紧急的,通常还是比较耗时的,因此由系统自行安排运行时机,不在中断服务上下文中执行。

硬件中断和软件中断的区别?_第1张图片
三、特点不同

1、硬件中断:在AVR或ARM微处理器中,中断向量的大小也是4个字节,但其中存放的不是中断程服务程序的入口地址,而是可执行的代码。

2、软件中断:是linux系统原“底半处理”的升级,在原有的基础上发展的新的处理方式,以适应多cpu 、多线程的软中断处理。

硬件中断时通过中断请求线输入信号来请求处理机;软件中断是处理机内部识别并进行处理的中断过程。硬件中断一般是由中断控制器提供中断码类型,处理机自动转向中断处理程序;软件中断完全有处理机内部形成中断处理程序的入口地址并转向中断处理程序的入口地址,并转向中断处理程序,不需要外部提供信息。

你可能感兴趣的:(计算机相关知识,android)