linux-中断

本文深入探讨了Linux驱动程序中中断的原理及其在不同场景的应用,包括外设处理速度与CPU协调、中断处理程序的特性限制、共享中断机制及其实现方式。详细解释了中断在设备与CPU间通信中的作用,以及如何在驱动程序中实现中断注册与处理。

为什么需要中断?
1 外设的处理速度一般慢于CPU。
2 CPU不能一直等待外部事件,所以设备必须有一种方法来通知CPU它的工作进度,这种方法就是中断。

在linux驱动程序中,为设备实现一个中断包含两个步骤:
1 向内核注册中断
2 实现中断处理函数

共享中断就是将不同的设备挂到同一个中断信号线上。linux对共享的支持主要是为PCI设备服务。

什么是中断处理程序,有何特别之处?
中断处理程序就是普通的C代码。特别之处在于中断处理程序是在中断上下文中运行的,它的行为受到某些限制:
1 不能向用户空间发送或接受数据
2 不能使用可能引起阻塞的函数
3 不能使用可能引起调度的函数

转载于:https://www.cnblogs.com/auleaf/archive/2011/09/17/2179971.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值