文章目录

  • 源码位置
  • preempt_count
    • 使用的地方
  • saved_preempt_count

源码位置

arch/x86/include/asm/preempt.h
在include/asm-generic/preempt.h 这个文件中也有一份,
怎么确定用的是哪个文件?
/include/linux/preempt.h 文件是正宗,最终引用到asm/preempt.h 文件。

#define preempt_count_add(val) __preempt_count_add(val)

preempt_count

目前大多数关于Linux开发的书都是以2.6版本作为基础,而且都是15、16年以前,或者更老。所以在读相关书籍的时候一定要根据最新的代码,找到相应模块的代码进行查看,要不会落后于开发。导致认知上的差异。如果造成第一印象的错误,可能会产生误。

下面这个改动就是一个例子:2013年的改动,preempt_count已经从thread结构中,提到了per-cpu的一个变量。因为如果线程上发生了不可抢占,其实也就意味着CPU不能切换线程。可以将preempt_count 放到一个CPU级别的变量里,达到相同的作用,与效果。

commit

Kernel: x86: preempt_count, per-cpu(每个CPU一份的变量)相关推荐

  1. 活久见 kernel:NMI watchdog: BUG: soft lockup - CPU#8 stuck for 28s! [xsoftdd/12:0]

    1. 引入 在一台linux机器上工作,没敲入任何命令,但命令行里突然出现 "kernel:NMI watchdog: BUG: soft lockup - CPU#8 stuck for ...

  2. 系统自己弹出诸如 kernel:NMI watchdog: BUG: soft lockup - CPU#2 stuck for 26s [mysqld:2875]

    系统在没有人使用的情况下自己弹出诸如以下关于内核的报错 [root@bkce tmp]# Message from syslogd@bkce at Oct 13 14:25:00 - kernel:N ...

  3. 报错 kernel:NMI watchdog: BUG: soft lockup - CPU#1 stuck for 22s! [insmod:55902]处理

    运行之前说的tcrypt.c的修改程序(只跑摘要算法md5,sha1) insmod tcrypt.ko sec=2 mode=400 报错 kernel:NMI watchdog: BUG: sof ...

  4. CPU扫盲-CPU如何执行指令以及流水线技术

      在CPU扫盲-CPU与指令集中阐述了CPU与指令集之间的关系,并在CPU扫盲-自研指令集中以创造者的身份深入讲解了指令集,这篇文章则是针对CPU的专场,以x86架构下的CPU为例具体分析一下CPU ...

  5. oracle cpu分配,CPU 分配 - Oracle VM Server for SPARC 2.0 管理指南

    CPU 分配 CPU 分配机制针对 CPU 资源使用以下约束和提示: 整体核心约束.此约束指定基于指定的 CPU 核心数将虚拟 CPU 分配给域.系统必须能够分配指定数目的核心,还必须能够将这些分配了 ...

  6. 从Java视角理解CPU缓存(CPU Cache)

    http://coderplay.iteye.com/blog/1485760 众所周知, CPU是计算机的大脑, 它负责执行程序的指令; 内存负责存数据, 包括程序自身数据. 同样大家都知道, 内存 ...

  7. keras用cpu加速_在训练某些网络时,Keras(Tensorflow后端)在GPU上比在CPU上慢CPU

    我很难理解GPU和CPU速度与小尺寸网络(CPU有时更快)相似的原因,而GPU更快更大尺寸的网络.问题底部的代码在i7-6700k上以103.7s运行,但是当使用tensorflow-gpu时,代码运 ...

  8. Linux下区分物理CPU、逻辑CPU和CPU核数

    Linux下区分物理CPU.逻辑CPU和CPU核数 ㈠ 概念 ① 物理CPU 实际Server中插槽上的CPU个数物理cpu数量,可以数不重复的 physical id 有几个 ② 逻辑CPU Lin ...

  9. 台式计算机单核与双核,什么是单核cpu、双核cpu 单核cpu和双核cpu的区别是什么...

    在买电脑的时候,我们经常会发愁,究竟是买单核cpu好,还是买双核cpu比较好,尤其是面对售货员把单核cpu电脑和双核cpu电脑都可以夸的天花乱坠的时候,我们更糊涂了,究竟买哪种好呢?针对这种情况,小编 ...

最新文章

  1. Struts2中五个重要的常量
  2. 用_beginthreadex不用 CreateThread
  3. 记录 之 不同的Normalization方式
  4. LiveVideoStack秋季招聘(编辑、会务运营、项目经理)
  5. (14)H5新增表单属性
  6. 年回报60%!孙正义如何经营“沉迷AI”的愿景基金?
  7. oracle浅析导致数据库性能问题的常见原因
  8. 使用TortoiseSVN碰到的几个问题(2)-冲突解决, 图标重载
  9. cognos报表导出excel_17个新增功能点,让报表更惊艳!
  10. 大型网站的架构设计问题--大型高并发高负载网站的系统架构
  11. 谷歌浏览器屏蔽广告插件
  12. 从零开始学习 cookie 8月28日
  13. 硬盘三大种类( SSD ; HHD ; HDD )
  14. html基础教学ppt,HTML5基础培训ppt课件
  15. SAP采购申请中数量/单价/价格单位/总价的填写图示
  16. 企业数据治理之主数据管理
  17. NVP6124I北京冠宇铭通 芯片
  18. xss基本概念和原理介绍
  19. 关于FileSystemWatcher类
  20. Android 学习(一)

热门文章

  1. 服务器 域名 ftp文件传输方法 URL http协定 file协定 端口
  2. 人生百味-1:人际关系的分支语句--10个switch,1个if else
  3. js实现按权重取随机分布(生成多项分布算法)
  4. FPGA开发之SRIO接口
  5. uefi启动linux过程_UEFI的两种启动模式
  6. linux jlink软件安装,jlink 在LINUX下安装
  7. 计算机毕业设计ssm师生交流平台cb59e系统+程序+源码+lw+远程部署
  8. 使用Java与QuantLib 进行雪球结构产品的评价
  9. 国管住房公积金业务可网上办理
  10. 闪烁之光为什么闪退_《光遇》闪退原因及解决办法介绍