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

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

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


中断机制概述

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

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

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

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


5.2 中断处理机制

0x80,系统门的编号

思考:

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


5.3 中断下半部处理机制

软中断机制

小任务(tasklet)机制

思考:

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

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


5.4 时钟中断机制

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

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

相关推荐
草莓熊Lotso19 小时前
Git 本地操作入门:版本控制基础、跨平台部署与仓库核心流程
开发语言·人工智能·经验分享·git·后端·架构·gitee
百锦再19 小时前
大话Rust的前生今世
开发语言·后端·rust·go·内存·时间·抽象
QT 小鲜肉20 小时前
【C++基础与提高】第十一章:面向对象编程进阶——继承与多态
java·linux·开发语言·c++·笔记·qt
序属秋秋秋20 小时前
《Linux系统编程之进程基础》【进程入门】
linux·运维·c语言·c++·进程·系统编程·fork
隐形喷火龙20 小时前
Springboot集成OnlyOffice
java·spring boot·后端
晨非辰20 小时前
【数据结构】排序详解:从快速排序分区逻辑,到携手冒泡排序的算法效率深度评测
运维·数据结构·c++·人工智能·后端·深度学习·排序算法
5pace20 小时前
【SSM|第一篇】MyBatisPlus
java·spring boot·后端·mybatis
橘子真甜~20 小时前
C/C++ Linux网络编程4 - 解决TCP服务器并发的方式
linux·运维·服务器
last demo20 小时前
Linux 逻辑卷管理
linux·运维·服务器
JosieBook21 小时前
【SpringBoot】37 核心功能 - 高级特性- Spring Boot 中的 自定义 Starter 完整教程
java·spring boot·后端