本文主要是介绍中断处理程序与内核函数的区别在哪里,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在linux中,中断处理程序看起来就是普通的C函数,只不过这些函数必须按照特定的类型声明,以便内核能够以标准的方式传递处理程序的信息,在其他方面,他们与一般的函数看起来别无不同。那么终端处理程序与其他内核函数的区别主要是在哪里呢? 中断处理函数是被内核启用起来响应终端的,而他们运行与我们称之为中断上下文的特殊上下文中。中断处理程序是管理硬件的驱动程序的组成部分。中断处理程序通常会标记static,因为它从来不会被别的文件的代码中直接调用。中断是一种有设备使用的硬件资源异步地向处理器发送信号,中断就是由硬件来打断操作系统。
- 中断处理的时候应注意
1、ISR不能有返回值;
2、ISR不能传递参数;
3、ISR应该是短而高效的,在ISR中做浮点运算是不明智的;
4、ISR中不应该有重入和性能上的问题,因此不应该使用pintf()函数。
这篇关于中断处理程序与内核函数的区别在哪里的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!