Linux内核分析与应用5-中断

本系列是对 陈莉君 老师 Linux 内核分析与应用 的学习与记录。讲的非常之好,推荐观看

留此记录,蜻蜓点水,可作抛砖引玉


中断机制概述

中断是CPU对系统发生的某个事件作出的一种反应, 当中断发生时,CPU暂停正在执行的程序,保留现场后,自动转去执行相应事件的处理程序,处理完成后,返回断点,继续执行被打断的程序.

中断是操作系统的脉搏,是并发处理的基础.

中断的引入,是为了支持CPU和设备之间的并行操作.

中断看似简单,但工程性非常强


5.2 中断处理机制

0x80,系统门的编号

思考:

"中断返回"除了返回现场外,从源代码角度分析内核还做了什么?


5.3 中断下半部处理机制

软中断机制

小任务(tasklet)机制

思考:

  1. 为什么要有中断下半部分处理机制?而且有好几种机制?

  2. 中断下半部分处理机制中,你认为是否还有改进的余地?


5.4 时钟中断机制

在考察了如基树树,哈希表等多种数据结构后, hrtimer使用了红黑树(rbtree). 树最左边的节点是最快到期的时间

在内核中,除了被广泛使用的双向链表,红黑树使用场景也非常多.

相关推荐
zhoujungis13 小时前
登录态 1 小时就掉?Django + Vue 双 Token 认证实战 | 尘世栈帧
后端
重生之小比特13 小时前
【Linux系统】17 库制作与原理(上)
linux·运维·服务器
武子康14 小时前
同一台 ESP32,GSM 能消回声,VoIP 为什么不行?
人工智能·后端·agent
wzg201614 小时前
ubuntu 离线安装 docker-compose
linux·ubuntu·docker
用户693717500138414 小时前
AI 能写代码,但工程架构还是应该由人来定
前端·后端
lqbzlll14 小时前
Spring Boot 开启虚拟线程后接口反而变慢了?4 个排查方向和对应修法
java·spring boot·后端
行走的陀螺仪14 小时前
Claude Code 从入门到实战(三):Hooks、Skills、SubAgents 高级扩展
linux·编辑器·vim
回家路上绕了弯14 小时前
让 AI 成为团队的共同能力
后端
Brilliantwxx14 小时前
【STM32】 内部 Flash 的 HAL 库函数详解与自定义封装实战
linux·服务器·网络
70后写java的老码农14 小时前
一个 starter 通吃 9 家主流大模型:Spring Boot 3.x + Spring AI 1.x 极简落地
后端