Linux内核产生并发的原因


Posted in 面试题 onNovember 08, 2016
Linux内核产生并发的原因主要是中断和睡眠再调度。
一 :中断,由于中断执行是异步的,而且是在非抢占式内核中打断当前运行内核代码的唯一方法,所以中断是可以和其它内核代码并发执行的。因此如果中断操作和被中断的内核代码访问同样的内核数据,就会发生竞争。
二 :睡眠和再调度, 处于进程上下文(下面会进行讲述)的内核任务可以睡眠(睡眠意味放弃处理器),这时调度程序会调度其它程序去执行(首先执行调度任务队列中的内核任务,然后执行软中断等,最后从运行队列中选择一个高优先级的用户进程运行)。显然这里也会造成内核并发访问,当睡眠的内核任务和新投入运行的内核任务访问同一共享数据时,就发生了竞争。

Tags in this post...

面试题 相关文章推荐
C/C++程序员常见面试题二
Nov 19 面试题
定义一结构体变量,用其表示点坐标,并输入两点坐标,求两点之间的距离
Aug 17 面试题
简述数组与指针的区别
Jan 02 面试题
西安众合通用.net笔试题
Mar 18 面试题
请解释流与文件有什么不同
Jul 29 面试题
STP的判定过程
Oct 01 面试题
什么是静态路由,其特点是什么?什么是动态路由,其特点是什么?
Jul 26 面试题
LINUX下线程,GDI类的解释
Apr 17 面试题
软件测试工程师笔试题带答案
Mar 27 面试题
remote接口和home接口主要作用
May 15 面试题
介绍JAVA 中的Collection FrameWork(及如何写自己的数据结构)
Oct 31 面试题
Unix里面如何在后台运行程序
Oct 14 面试题
Linux如何为某个操作添加别名
Feb 05 #面试题
Linux如何压缩可执行文件
Mar 27 #面试题
进程的查看和调度分别使用什么命令
Mar 25 #面试题
Linux内核的同步机制是什么?主要有哪几种内核锁
Jul 11 #面试题
简述安装Slackware Linux系统的过程
May 08 #面试题
介绍一下Linux内核的排队自旋锁
Aug 27 #面试题
Windows和Linux动态库应用异同
Jul 28 #面试题
You might like
php数组函数序列 之array_count_values() 统计数组中所有值出现的次数函数
2011/10/29 PHP
php定时删除文件夹下文件(清理缓存文件)
2013/01/23 PHP
浅析Yii2 gridview实现批量删除教程
2016/04/22 PHP
html下载本地
2006/06/19 Javascript
jquery $(document).ready() 与window.onload的区别
2009/12/28 Javascript
使用Mootools动态添加Css样式表代码,兼容各浏览器
2011/12/12 Javascript
javascript 系统文件夹文件操作及参数介绍
2013/01/08 Javascript
原生js拖拽(第一课 未兼容)拖拽思路
2013/03/29 Javascript
jQuery中unwrap()方法用法实例
2015/01/16 Javascript
深入浅析JavaScript中数据共享和数据传递
2016/04/25 Javascript
浅谈js的url解析函数封装
2016/06/28 Javascript
JS实现类似51job上的地区选择效果示例
2016/11/17 Javascript
Ajax和Comet技术总结
2017/02/19 Javascript
原生JS实现导航下拉菜单效果
2020/11/25 Javascript
bootstrap中日历范围选择插件daterangepicker的使用详解
2018/04/17 Javascript
JS求1到任意数之间的所有质数的方法详解
2019/05/20 Javascript
Vue.js中Line第三方登录api的实现代码
2020/06/29 Javascript
python高手之路python处理excel文件(方法汇总)
2016/01/07 Python
pandas.dataframe按行索引表达式选取方法
2018/10/30 Python
python绘图模块matplotlib示例详解
2019/07/26 Python
使用Python给头像戴上圣诞帽的图像操作过程解析
2019/09/20 Python
Django1.11配合uni-app发起微信支付的实现
2019/10/12 Python
python线程信号量semaphore使用解析
2019/11/30 Python
pytorch+lstm实现的pos示例
2020/01/14 Python
如何使用pandas读取txt文件中指定的列(有无标题)
2020/03/05 Python
python 使用多线程创建一个Buffer缓存器的实现思路
2020/07/02 Python
html5中valid、invalid、required的定义
2014/02/21 HTML / CSS
护理职业应聘自荐书
2013/09/29 职场文书
外科实习自我鉴定
2013/10/06 职场文书
应届毕业生就业自荐信
2013/10/26 职场文书
办理暂住证介绍信
2014/01/11 职场文书
采购类个人求职的自我评价
2014/02/18 职场文书
化学专业大学生职业生涯规划范文
2014/09/13 职场文书
国际商务专业毕业生自我鉴定2014
2014/09/27 职场文书
小学课改工作总结
2015/08/13 职场文书
2016教师党员学习心得体会
2016/01/21 职场文书