当前位置: 首页 > news >正文

软中断在bottom-half中调用

https://www.bilibili.com/read/cv20785285/

简介

软中断可以在两个位置得到机会执行:

  1. 硬中断返回前 irq_exit

  1. 中断下半部 Bottom-half Enable后

情景分析

情景1

spin_unlock_bh

    __raw_spin_unlock_bh

         __local_bh_enable_ip     打开Bottom-half,并让softirq有机会执行

spin_lock_bh

    __raw_spin_lock_bh

        __local_bh_disable_ip(__RET_IP__,  SOFTIRQ_LOCK_OFFSET)     关闭Bottom-half

             preempt_count_add

【软定时timerlist】与【进程上下文】存在临界区资源,

SMP可以使用spin_lock_bh与spin_unlock_bh取代spin_lock_irqsave与spin_lock_irqrestore。可提高中断及时响应,过度使用spin_lock_irqsave会导致丢中断。

http://www.lryc.cn/news/371.html

相关文章:

  • GEE遥感云大数据在林业中的应用
  • Apollo架构篇 - 客户端架构
  • JVM调优最全面的成长 :参数详解+垃圾算法+示例展示+类文件到源码+面试问题
  • linux驱动常用函数
  • Flowable进阶学习(九)数据对象DataObject、租户Tenant、接收任务ReceiveTask
  • C语言实现五子棋(n子棋)
  • OpenStack云平台搭建(2) | 安装Keystone
  • 基于javaFX的固定资产管理系统
  • 板子登录和挂载问题记录
  • 二、Linux文件 - Open函数讲解实战
  • 源码分析Spring解决循环依赖的过程
  • LabVIEW中加载.NET 2.0,3.0和3.5程序集
  • Fluent Python 笔记 第 2 章 序列构成的数组
  • 句子扩充法
  • Java并发编程概述
  • Java常见数据结构的排序与遍历(包括数组,List,Map)
  • 数据结构|绪论
  • 内网渗透(十二)之内网信息收集-内网端口扫描和发现
  • RabbitMq相关面试题
  • 树莓派开机自启动Python脚本或者应用程序
  • 全国青少年编程等级考试scratch四级真题2022年9月(含题库答题软件账号)
  • NodeJS与npm版本不一致时降级npm的方法
  • 《C++ Primer Plus》第16章:string类和标准模板库(8)
  • Linux安装达梦8数据库
  • [数据库]初识数据库
  • Redis的缓存雪崩、击穿、穿透和解决方案
  • 52000000
  • 内网资源探测
  • Java后端内部面试题(前一部分)
  • 关于如何抄引擎源码