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

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

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


中断机制概述

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

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

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

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


5.2 中断处理机制

0x80,系统门的编号

思考:

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


5.3 中断下半部处理机制

软中断机制

小任务(tasklet)机制

思考:

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

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


5.4 时钟中断机制

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

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

相关推荐
HalvmånEver18 小时前
Linux:基于匿名管道创建出简易进程池(进程间通信五)
linux·运维·服务器·c++·进程池·管道pipe
BD_Marathon18 小时前
Spring——AOP工作流程
java·后端·spring
工程师老罗18 小时前
龙芯2k0300 U盘烧录Linux系统,从Ubuntu到PMON自动启动
linux·运维·ubuntu
后端小张18 小时前
【JAVA 进阶】Spring Boot 中 AOP 切面编程全解析:从基础到实战进阶
java·开发语言·人工智能·spring boot·后端·spring·spring cloud
华仔啊18 小时前
SpringBoot 如何用 @ControllerAdvice 统一处理异常?
java·后端
superman超哥18 小时前
Rust Cell与RefCell的使用场景与区别:内部可变性的精确选择
开发语言·后端·rust·refcell·rust cell·内部可变性·精确选择
Ronin30518 小时前
【Linux网络】基于Reactor反应堆模式的高并发服务器
linux·网络·reactor·epoll·非阻塞·et模式·高并发服务器
钱多多_qdd18 小时前
springboot注解(三)
java·spring boot·后端
hunter19901018 小时前
spring线程池例子
java·后端·spring
IT_陈寒18 小时前
Vite 5大性能优化实战:从3秒到300毫秒的构建速度跃迁
前端·人工智能·后端