linux 中断自学笔记

什么是中断:

        中断是某些硬件用来与cpu异步通信的一种方式,类似的还有异常.(中断与异常的根本区别还有待继续研究,将在新的文章中解释)


中断的本质:

        发往中断控制器的一个电信号,而后由中断控制器发往cpu。最后由cpu来调用之前注册的中断控制器。


中断类型:

      快速中断(SA_INTERRUPT):在中断处理程序中禁止所有的中断

      共享中断(SA_SHIRQ):多个中断处理程序共享同一个中断线,在中断来临时,会调用注册在这个中断线上的每一个中断处理程序。


中断上下文:

    中断处理程序或下半部时,内核处在中断上下文中,不与任何的进程有关系,current没有意义(仅表示被中断的进程)。而且在中断上下文中,是不可以睡眠的。因为没有进程的表述,所以一旦睡眠,调度程序没有办法激活。

   存在一个中断栈,大小一页,为中断上下文。


request_irq()函数可能会睡眠,因为其中包括对proc的文件操作。


  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值