中断管理

中断小结

上下文 是否抢占 顶半部 中断 否 Softirq/tasklet 软中断 是 workqueue 进程 是 threaded_irq 进程 是 Tasklet:底半部,优先级比较高,处理函数中不能睡眠。 workqueue:底半部,处理函数可以睡眠,也可以执行比较长的应用。

◷ 2023-03-11 📁 中断管理 👤 laumy 🔥 387 热度 💬 0 评论

workqueue

API接口 初始化 函数 说明 DECLARE_WORK(n, f) 静态定义一个work,实际就是定义一个struct work_struct的全局变量。 DECLARE_DELAYED_WORK(_work, _func) 静态定义一个work,与上面的区别就是work可以在指定时间之后

◷ 2023-03-05 📁 中断管理 👤 laumy 🔥 1119 热度 💬 0 评论

软中断和tasklet

Linux的中断分为上下部机制,上半部在中断上下文中关闭了本地CPU中断响应,下半部是在中断线程中处理。在Linux系统没有引入中断线程化机制之前,就已经出现了一些下半部的机制,如

◷ 2023-03-05 📁 中断管理 👤 laumy 🔥 830 热度 💬 0 评论

Linux中断实现

interrupt controller初始化 设备树中对gic-v3的描述如下,其中interrupt-controller标识了该设备是一个中断控制器。 interrupt-controller@3400000 { compatible = "arm,gic-v3"; #interrupt-cells = <0x03>; #address-cells = …

◷ 2023-03-04 📁 中断管理 👤 laumy 🔥 478 热度 💬 0 评论

中断基本概念

在现代嵌入式系统中,处理器上会挂接很多个外设,CPU在执行任务的时候,可能会同时由多个中断发生,那么中断必要要进行响应处理并维护一个队列一一运行,这样自然会影响CPU的效率,为了让

◷ 2023-03-04 📁 中断管理 👤 laumy 🔥 422 热度 💬 0 评论

Arm64体系结构简介

ARM简介 ARM版本 典型处理器 主要特性 v1 26位地址空间 v2 增加乘法、乘加法、支持协处理指令等 v3 地址空间扩展到32位,增加SPSP和CPSR等 v4 ARM7TDMI/ARM920T 增加Thumb指令等 v5 ARM926EJ-S 增加Jazel

◷ 2023-03-04 📁 中断管理 👤 laumy 🔥 1111 热度 💬 0 评论