Linux内核产生并发的原因


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

Tags in this post...

面试题 相关文章推荐
JSF面试题:Jsf中的核心类用那些?有什么作用?LiftCycle六大生命周期是什么?
Jul 17 面试题
Java TransactionAPI (JTA) 主要包含几部分
Dec 07 面试题
金讯Java笔试题目
Jun 18 面试题
上海奥佳笔试题面试题
Nov 16 面试题
什么是事务?为什么需要事务?
Jan 09 面试题
北京一家公司的.net开发工程师笔试题
Apr 17 面试题
傲盾软件面试题
Aug 17 面试题
介绍一下linux的文件权限
Feb 15 面试题
linux系统都有哪些运行级别
Mar 26 面试题
what is the difference between ext2 and ext3
Nov 03 面试题
介绍一下RMI的基本概念
Dec 17 面试题
几道Java和数据库的面试题
May 30 面试题
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实现的博客欢迎提示功能(很特别哦)
2014/06/05 PHP
PHP Ajax JavaScript Json获取天气信息实现代码
2016/08/17 PHP
php 魔术常量详解及实例代码
2016/12/04 PHP
php使用str_replace替换多维数组的实现方法分析
2017/06/15 PHP
针对PHP开发安全问题的相关总结
2019/03/22 PHP
获取css样式表内样式的js函数currentStyle(IE),defaultView(FF)
2011/02/14 Javascript
javascript 常用功能总结
2012/03/18 Javascript
FF火狐下获取一个元素同类型的相邻元素实现代码
2012/12/15 Javascript
验证码按回车不变解决方法
2013/03/29 Javascript
JavaScript 判断用户输入的邮箱及手机格式是否正确
2013/12/08 Javascript
node.js中的console.timeEnd方法使用说明
2014/12/09 Javascript
JS+html5制作简单音乐播放器
2020/09/13 Javascript
QQ跳转支付宝并自动领红包脚本(最新)
2018/06/22 Javascript
解决$store.getters调用不执行的问题
2019/11/08 Javascript
JavaScript设计模式之门面模式原理与实现方法分析
2020/03/09 Javascript
js实现九宫格布局效果
2020/05/28 Javascript
vue 扩展现有组件的操作
2020/08/14 Javascript
python高效过滤出文件夹下指定文件名结尾的文件实例
2018/10/21 Python
python 找出list中最大或者最小几个数的索引方法
2018/10/30 Python
Python性能分析工具Profile使用实例
2019/11/19 Python
利用PyCharm操作Github(仓库新建、更新,代码回滚)
2019/12/18 Python
Python模块_PyLibTiff读取tif文件的实例
2020/01/13 Python
python GUI库图形界面开发之PyQt5滑块条控件QSlider详细使用方法与实例
2020/02/28 Python
Python Django form 组件动态从数据库取choices数据实例
2020/05/19 Python
Django实现前台上传并显示图片功能
2020/05/29 Python
python怎么判断模块安装完成
2020/06/19 Python
Ibood荷兰:互联网每日最佳在线优惠
2019/02/28 全球购物
Keds加拿大官网:购买帆布运动鞋和皮鞋
2019/09/26 全球购物
C/C++程序员常见面试题一
2012/12/08 面试题
施工安全标语
2014/06/07 职场文书
保密工作整改报告
2014/11/06 职场文书
自荐信格式范文
2015/03/04 职场文书
谁动了我的奶酪读书笔记
2015/06/30 职场文书
思品教学工作总结
2015/08/10 职场文书
详解PHP用mb_string处理windows中文字符
2021/05/26 PHP
如何使用SQL Server语句创建表
2022/04/12 SQL Server