- 1
- 0
- 约1.71万字
- 约 5页
- 2018-12-13 发布于天津
- 举报
!#$%下互斥机制及其分析.PDF
·5! · 计算机应用研究) !4 年
!#$% 下互斥机制及其分析
李) 晋,葛敬国
(中国科学院计算机网络信息中心,北京 ’* )
摘) 要:详细介绍了在+,-./ 环境下,特别是内核态下可能遇到的各种互斥场景,依据代码执行路径对其进行
了分类。在此基础上,比较了各种互斥问题的解决方案的使用环境、优缺点以及使用时要注意的问题。
关键词:中断屏蔽;原子操作;互斥;自旋锁;信号量
中图法分类号:01(’%2 *) ) ) 文献标识码:3) ) ) 文章编号:’’$ (%4(!4 )*$ 5!$ (
3-6789:9 ; =..67 ?/@7.9,;- =:@A6-,9B ,- +,-./
+C D,- ,E? D,-F$F.;
(!#$ %’( )’*(+ ,-. (#/0- !’-’( ,!10-’2’ 34/5’#6 . 740’-4’2 ,8’09 0-: ’* ,!10-/ )
!#$%’$ :0A,9 6G,@7: H:9@G,I:9 A: B.:/ 9,.6,;- .-H:G A: +,-./ :-J,G;-B:- ,:9K:@,6778 ,- L:G-:7 9K6@: ,6-H @7699,,:9
A:B I8 @;H:$:/:@.,-F K6AM C 679; 9A;N9 A: .96F: ,N:6L-:99 6-H 9G:-FA ; :6@A 9;7.,;-M
()* +,%-# :=69L C-:GG.K ;3;B,@ OK:G6,;- ;=.:/ ;PK,-7;@L ;P:B6KA;G:
) ) 从出现操作系统以来,互斥就是一个重要且必须解决的问 的互斥机制,在 P=1 (P8BB:G,@67 =.7,$1G;@:99,-F ,对称多处
题。硬件、操作系统和高级语言为解决这个问题提供了一系列 理)系统同样起作用,所以用户空间的互斥问题是很简单的
的支持,高级语言通常只提供进程级的互斥机制,但是要对硬 (关于信号量将在第! 章介绍)。本文重点说明内核态下的互
件进行编程或做操作系统级别的底层工作时,单一的互斥机制 斥,下文出现的互斥如果不特别说明均指内核互斥。
是不够的。因为程序中存在大量非进程级的互斥场景,加大了 如图’ 所示,代码执行路径分为:
问题的复杂度。操作系统提供很多互斥机制,然而对不同的互 (’)进程通过系统调用进入内核的代码路径,我们称它为
斥场景选择合适的互斥机制是至关重要的。互斥方法的作用 进程代码路径。本文所说的进程代码路径指的仅仅是在内核
范围太小,达不到上锁目标,太大会影响系统效率。本文的目 中执行的代码路径。每一个尚未完成系统调用的进程都对应
的就是分析互斥场景、互斥机制的功能与效果及其对系统性能 着一条内核代码路径;每一个内核线程也相当于一条进程代码
的影响,并介绍如何选择最佳的互斥机制。 路径。这种路径中有进程上下文。
(! )异常处理代码,它是由于当前进程的执行而引起的。
!) 互斥场景
对于正在内核中运行的进程来说,它们唯一会引起的异常是
“缺页”处理程序。它没有进程上下文。
2 ) 代码执行路径和临界区
! !
(( )中断处理程序(包括各种软中断)。中断是一个完全
对某一代码段3 来说,在程序中可能得到多次的执行,
您可能关注的文档
- 编号2018ZZ(XZS66)1.doc
- 联合公告(I)有关认购人建议认购本公司之新股份之最新消.PDF
- 股票代码300487股票简称蓝晓科技上市地点.PDF
- 节能控制管理领域小试牛刀.PDF
- 荣县宣传杂志社.doc
- 西峡县行政审批服务中心电子政务设备和网络建设项目.doc
- 西峡县行政审批服务中心电子政务设备和网络建设项目采购内.doc
- 评估咨询报告目录.PDF
- 试点楼院整治提升项目.PDF
- 软件质量的概念.ppt
- 2026年区块链存证技术在数字遗产保护中的创新实践[001].docx
- 2026年大豆深加工行业产品创新对市场的影响报告.docx
- 山西省三晋卓越联盟2024-2025学年高一上学期12月月考英语试题含解析英语ZQ.docx
- 2026年区块链技术在供应链金融中的创新应用场景探索[001].docx
- 2026年服务业旅游购物行业创新趋势分析报告.docx
- 陕西省榆林市府谷县部分学校2024-2025学年高一上学期12月月考试题化学含答案高一月考化学.docx
- 2026年区块链技术在数字遗产保护中的创新应用.docx
- 26春新版三年级数学下册周长解决问题专项.docx
- 2026年化学传感器行业技术创新报告.docx
- 大数据与会计教案 (1).docx
原创力文档

文档评论(0)