![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux中断管理
麦兜weixinluo
这个作者很懒,什么都没留下…
展开
-
Linux 中断管理之ARM GIC V3 硬件中断号映射
Linux 中断管理之ARM GIC V3 初始化 中已经介绍了ARM GIC V3的初始化,函数gic_init_bases()在进行GIC V3初始化的时候会调用irq_domain_create_tree()函数来注册一个irq domain,irq domain用于硬件中断号的映射。Linux内核引入了irq domain的管理框架,irq domain框架可以支持多个中断控...原创 2020-03-19 21:14:33 · 1625 阅读 · 0 评论 -
Linux 中断管理之ARM GIC V3 初始化
1.ARM GIC V3中断控制器介绍GIC(Generic Interrupt Controller)是一个通用的中断控制器,用来接收硬件中断信号,并经过一定处理后,分发给对应的CPU进行处理。GIC V3是其中一个版本,支持的中断类型如下表: 中断类型 中断号 描述 SGI (Software Generated Interrupt) 0-15 ...原创 2020-03-14 11:10:18 · 3214 阅读 · 0 评论 -
linux中断管理之工作队列(三)——取消一个work
Linux中,驱动程序在关闭设备节点,出现错误,或者要挂起时,需要取消一个已经被调度的work。cancel_work_sync()函数取消一个已经调度的work,该函数的工作流程图如下:线程池中的delayed_work,不能通过cancel_work_sync()函数取消 调用者必须确保在cancel_work_sync()函数返回之前,work最后一次进入的工作队列不会被销毁 获...原创 2020-03-05 21:08:45 · 4045 阅读 · 0 评论 -
linux中断管理之工作队列(二)——工作调度
Table of Contents1将一个work加入系统workqueue1将一个work加入系统workqueueLinux系统中,schedule_work()函数将一个work放入系统workqueue中,schedule_work()函数的工作流程图如下: ...原创 2020-03-01 17:09:57 · 1178 阅读 · 0 评论 -
linux中断管理之工作队列(一)——工作队列初始化
工作队列机制(workqueue)是linux中断中一种最常用的下半部机制,相比tasklet而言,具有更高的实时性.工作队列有两种,带有WQ_UNBOUND标志位的工作队列绑定在每个CPU上,不带WQ_UNBOUND标志的工作队列放在内存节点中. linux内核中有几个和工作队列机制相关的重要数据结构.他们分别是:struct workqueue_struct,struct pool_workq...原创 2020-02-25 09:09:37 · 400 阅读 · 0 评论