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

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

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


中断机制概述

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

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

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

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


5.2 中断处理机制

0x80,系统门的编号

思考:

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


5.3 中断下半部处理机制

软中断机制

小任务(tasklet)机制

思考:

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

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


5.4 时钟中断机制

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

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

相关推荐
着迷不白8 分钟前
二、Linux命令3要素及系统结构+文件的增删改查
linux·运维·服务器
会编程的土豆9 分钟前
Go interface 底层的 itab 到底是什么
开发语言·后端·golang
candyTong10 分钟前
Claude Code 每次调用 API 时,上下文是怎么"拼"出来的?
javascript·后端·架构
java_cj11 分钟前
MySQL 执行原理深度剖析:查询成本计算与优化器内幕
数据库·后端·mysql
java_cj13 分钟前
数据库范式化设计与性能优化全攻略
数据库·后端·性能优化·架构·开源
zzzyyy53816 分钟前
System V IPC 全链路深度解析 —— 从信号量原子性到内核多态再到物理内存共享
linux·服务器
雪隐39 分钟前
AI股票小助手01-量化交易基础概念
人工智能·后端·python
alwaysrun40 分钟前
Rust之代数数据类型Enum
后端·rust·编程语言
前端市界41 分钟前
拒绝纸上谈兵!Docker 一键全线打通 DevOps 金三角实战
后端
不吃土豆的马铃薯42 分钟前
Socket 网络编程实战教程
linux·服务器·开发语言·网络·c++·算法