探究硬中断和软中断的原理和区别.docx
《探究硬中断和软中断的原理和区别.docx》由会员分享,可在线阅读,更多相关《探究硬中断和软中断的原理和区别.docx(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、探究硬中断和软中断的原理和区别MCU开发加油站导语:从本质上来讲,中断是一种电信号,当设备有某种事件发生时,它就会产生中断,通过总线把电信号发送给中断控制器。从本质上来讲,中断是一种电信号,当设备有某种事件发生时,它就会产生中断,通过总线把电信号发送给中断控制器。假如中断的线是激活的,中断控制器就把电信号发送给处理器的某个特定引脚。处理器于是立即停顿自己正在做的事,跳到中断处理程序的入口点,进展中断处理。硬中断由与系统相连的外设(比方网卡、硬盘)自动产生的。主要是用来通知操作系统系统外设状态的变化。比方当网卡收到数据包的时候,就会发出一个中断。我们通常所讲的中断指的是硬中断(hardirq)。
2、硬中断是由硬件产生的,比方,像磁盘,网卡,键盘,时钟等。每个设备或者设备集都有它自己的IRQ中断恳求。基于IRQ,CPU可以将相应的恳求分发到对应的硬件驱动上注:硬件驱动通常是内核中的一个子程序,而不是一个独立的进程。处理中断的驱动是需要运行在CPU上的,因此,当中断产生的时候,CPU会中断当前正在运行的任务,来处理中断。在有多核心的系统上,一个中断通常只能中断一颗CPU也有一种特殊的情况,就是在大型主机上是有硬件通道的,它可以在没有主CPU的支持下,可以同时处理多个中断。硬中断可以直接中断CPU。它会引起内核中相关的代码被触发。对于那些需要花费一些时间去处理的进程,中断代码本身可以以被其他的
3、硬中断中断。对于时钟中断,内核调度代码会将当前正在运行的进程挂起,进而让其他的进程来运行。它的存在是为了让调度代码或者称为调度器可以调度多任务。软中断为了知足实时系统的要求,中断处理应该是越快越好。linux为了实现这个特点,当中断发生的时候,硬中断处理那些短时间就可以完成的工作,而将那些处理事件比拟长的工作,放到中断之后来完成,也就是软中断(softirq)来完成。软中断的处理非常像硬中断。然而,它们仅仅是由当前正在运行的进程所产生的。通常,软中断是一些对I/O的恳求。这些恳求会调用内核中可以调度I/O发生的程序。对于某些设备,I/O恳求需要被立即处理,而磁盘I/O恳求通常可以排队并且可以稍
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 探究 中断 原理 区别
限制150内