介绍一下Linux内核的排队自旋锁


Posted in 面试题 onJanuary 04, 2014
排队自旋锁(FIFO Ticket Spinlock)是 Linux 内核 2.6.25 版本引入的一种新型自旋锁,它通过保存执行线程申请锁的顺序信息解决了传统自旋锁的“不公平”问题。排队自旋锁的代码由 Linux 内核开发者 Nick Piggin 实现,目前只针对 x86 体系结构(包括 IA32 和 x86_64),相信很快就会被移植到其它平台。

自旋锁(Spinlock)是在Linux 内核中广泛运用的底层同步机制。它是一种工作于多处理器环境的特殊的锁,在单处理环境中自旋锁的操作被替换为空操作。当某个处理器上的内核执行线程申请自旋锁时,如果锁可用,则获得锁,然后执行临界区操作,最后释放锁;如果锁已被占用,线程并不会转入睡眠状态,而是忙等待该锁,一旦锁被释放,则第一个感知此信息的线程将获得锁。

传统的自旋锁本质上用一个整数来表示,值为1代表锁未被占用。这种无序竞争导致执行线程无法保证何时能取到锁,某些线程可能需要等待很长时间。随着计算机处理器个数的不断增长,这种“不公平”问题将会日益严重。

Tags in this post...

面试题 相关文章推荐
PHP如何与mysql建立链接
May 05 面试题
C有"按引用传递"吗
Sep 06 面试题
C语言笔试集
Jul 24 面试题
一家外企的面试题目(C/C++面试题,C语言面试题)
Mar 24 面试题
编写类String 的构造函数、析构函数和赋值函数
Sep 09 面试题
Oracle的内存结构(Memory structures)
Jun 10 面试题
WINDOWS域的具体实现方式是什么
Feb 20 面试题
西安启天科技有限公司网络工程师面试题笔试题
Jun 12 面试题
某公司C#程序员面试题笔试题
May 26 面试题
介绍一下write命令
Aug 10 面试题
EJB与JAVA BEAN的区别
Aug 29 面试题
Servlet都有哪些方法?主要作用是什么?
Mar 04 面试题
Windows和Linux动态库应用异同
Apr 17 #面试题
linux面试题参考答案(9)
Jan 07 #面试题
linux面试题参考答案(8)
Apr 19 #面试题
linux面试题参考答案(7)
Oct 29 #面试题
linux面试题参考答案(6)
Jun 23 #面试题
linux面试题参考答案(5)
Nov 05 #面试题
linux面试题参考答案(4)
Sep 21 #面试题
You might like
php用户注册时常用的检验函数实例总结
2014/12/22 PHP
php 5.6版本中编写一个PHP扩展的简单示例
2015/01/20 PHP
PHP中文字符串截断无乱码解决方法
2016/10/10 PHP
PHP ADODB实现事务处理功能示例
2018/05/25 PHP
PHP 模拟登陆功能实例详解
2019/09/10 PHP
Prototype1.5 rc2版指南最后一篇之Position
2007/01/10 Javascript
javascript 处理HTML元素必须避免使用的一种方法
2009/07/30 Javascript
asp.net+js 实现无刷新上传解析csv文件的代码
2010/05/17 Javascript
基于Jquery的仿Windows Aero弹出窗(漂亮的关闭按钮)
2010/09/28 Javascript
在标题栏显示新消息提示,很多公司项目中用到这个方法
2011/11/04 Javascript
javascript中的if语句使用介绍
2013/11/20 Javascript
javascript 寻找错误方法整理
2014/06/15 Javascript
jquery实现的蓝色二级导航条效果代码
2015/08/24 Javascript
深入浅析JavaScript的API设计原则
2016/06/14 Javascript
利用Webpack实现小程序多项目管理的方法
2019/02/25 Javascript
Vue运用transition实现过渡动画
2019/05/06 Javascript
vue视图不更新情况详解
2019/05/16 Javascript
介绍Python的@property装饰器的用法
2015/04/28 Python
Django中数据库的数据关系:一对一,一对多,多对多
2018/10/21 Python
对python 多线程中的守护线程与join的用法详解
2019/02/18 Python
python多线程实现代码(模拟银行服务操作流程)
2020/01/13 Python
西班牙鞋子和箱包在线销售网站:zapatos.es
2020/02/17 全球购物
Expedia瑞典官网:预订度假屋、酒店、汽车租赁、机票等
2021/01/23 全球购物
童装店创业计划书
2014/01/09 职场文书
物流管理专业求职信
2014/05/29 职场文书
运动会演讲稿50字
2014/08/25 职场文书
内科护士节演讲稿
2014/09/11 职场文书
工作疏忽、懈怠的检讨书
2014/09/11 职场文书
纪念九一八爱国演讲稿600字
2014/09/14 职场文书
暑期社会实践个人总结
2015/03/06 职场文书
2015年车间主任工作总结
2015/05/21 职场文书
逃出克隆岛观后感
2015/06/09 职场文书
换届选举主持词
2015/07/03 职场文书
幼儿教师师德培训心得体会
2016/01/09 职场文书
银行客户经理培训心得体会
2016/01/09 职场文书
《孙子兵法》:欲成大事者,需读懂这些致胜策略
2019/08/23 职场文书