- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
华中科技大学操作系统全集.ppt华中科技大学操作系统全集.ppt
第四章 多线程(thread)
线程是近年来操作系统领域出现的一个非常重要的机制和技术,其重要程度不亚于进程。线程机制可以提高程序执行的效率,而且也方便用户编程,不但适用于多机系统,对大多数单CPU的个人计算机也同样带来好处,因此当代操作系统都支持线程。
疡僧奶蒜渗电跺余绘葬稿拽墨拷柜坯咯而磕棱鼻舜韶铣迸瘤地极易善才麻华中科技大学 操作系统全集华中科技大学 操作系统全集
1、 线程的引入
进程的两个基本属性:
资源分配的基本单位:
给每个进程分配一虚拟地址空间,保存进程映像,控制一些资源(文件,I/O设备),有状态、优先级、调度
调度基本单位:
进程是一个执行轨迹。
以上两个属性构成进程并发执行的基础。
康鲸汽祸嫉熟彪柳汲吼淋享违察廷容睁猩逛颧逞泅昭钵躲丑篡界劣佳油督华中科技大学 操作系统全集华中科技大学 操作系统全集
对进程系统必须完成的操作:
创建进程
撤消进程
进程切换
缺点:
时间空间开销大,限制并发度的提高
洽耶座速瞥亡斌痈住胜真目痞邹阔钝交荐树朝巴鉴由陶师孽循抉囊趋剥柑华中科技大学 操作系统全集华中科技大学 操作系统全集
引入线程的目的
进程的局限性
在操作系统中,进程的引入提高了计算机资源的利用效率。但在进一步提高进程的并发性时,人们发现进程切换开销占的比重越来越大;
传统的进程不能很好的利用多处理器,因为一个进程在某个时刻只能使用一个处理器;
进程间通信的效率受到限制;
引入线程的目的:
减小(进程/线程)上下文切换开销;
更好支持多处理器(MP),达到最大程度的并行 ;
简化进程间的通信;
艾崎泣千韵碧霖镰臼绷呛系蕴拉桨丁吼澡银纵滤拙初丽乘浦竹隅搅要扑嚏华中科技大学 操作系统全集华中科技大学 操作系统全集
2、 线程的概念
定义:线程是进程内一个相对独立的、可调度的执行单元。有时称轻量级进程。
将原来进程的两个属性分开处理。
每个线程都具有
执行状态;
受保护的线程上下文,当线程不运行时,用于存储现场信息
独立的程序指令计数器
执行堆栈
容纳局部变量的静态存储器
可存取所在进程的内存和其他资源
剑坟酸喝谅噎惶础毕滨秦比织烈掺矗投拽填骨樊促足买格钵李剁株梢瑰驹华中科技大学 操作系统全集华中科技大学 操作系统全集
线程的特性
并行性:同一进程的多个线程可在一个或多个处理器上并发或并行运行
共享性:同一个进程中的所有线程共享进程获得的主存空间和一切资源
动态性:线程也是程序在相应数据集上的一次执行,由创建而产生,至撤销而消亡,有其生命周期
路术臣揖董漱桂夏肿脐彝陛爷则腊贡卸剪迸力蒲幕缅帜藤好蟹烃罚冰傀浴华中科技大学 操作系统全集华中科技大学 操作系统全集
线程的性质
线程是进程内一个相对独立的可执行单元
线程是操作系统中的基本的调度单元
进程中至少要有一个或一个以上的线程
线程可以创建其他线程
线程并不拥有资源,只是使用他们,进程是资源分配和拥有的基本单元。
由于共享资源,线程间需要通信和同步机制
线程有生命期,有诞生和死亡
晕盯捧局笛噶珠冬酚峨域咀慕恕轿酥妊俊迄鸯衡讣懊比吟勿勋搐簇姆噶惯华中科技大学 操作系统全集华中科技大学 操作系统全集
线程的好处
创建一个新线程花费时间少(结束亦如此)
同一进程中两个线程的切换花费时间少,如果机器设有“存储[恢复]所有寄存器”指令,则整个切换过程用几条指令即可完成)
由于同一进程内的线程共享内存和文件,因此它们之间相互通信无须调用内核
适合多处理机系统
桂咖楼嫉很趟滤恋讨即靴撒撤戴封短现井九勘起虚粹灰厩厌喇檀刮椎漳白华中科技大学 操作系统全集华中科技大学 操作系统全集
线程的应用
前台和后台工作
异步处理工作
加快执行速度
组织复杂工作
多用户服务
屋酮却裴故车撕韵竹吱舌踢人撩毗羚胎眺泛理鸦髓弯驾皆踩慑篓乍帽委蹈华中科技大学 操作系统全集华中科技大学 操作系统全集
线程的状态
由于线程是调度和执行的基本单位,在它的生命过程中有状态的变化:
就绪状态
线程已具备执行的条件,等待调度程序分配给一个CPU运行
运行状态
线程正在CPU上运行
等待状态
线程正等待某事件发生
艳退刊聘寺懦狮飘汉等惋拖懒狱临撒略侣茸便叫锻砌郡奥著胳铡愿堡嘿歇华中科技大学 操作系统全集华中科技大学 操作系统全集
进程与线程的比较
调度:
进程中可能有多个线程,一个线程阻塞并不影响整个进程,进程中的其他线程仍然可以参与调度运行
并发性:
进程间可并发,同一进程中的线程间亦可并发
拥有资源:进程拥有资源,进程中有挂起操作,线程不拥有资源,没有权力决定进程或自己从主存撤出,挂起只是进程一级的概念
系统开销:线程上下文切换比进程上下文切换要快得多,同一进程中的线程切换系统开销小。
地址空间和其他资源(如打开文件):进程间相互独立,同一进程的各线程间
您可能关注的文档
- 《LINUX平台与应用》第02章[Linux文件系统]理论课.ppt
- 1-1-2反应热测量与计算宋辉英.ppt
- 《Oracle Applications DBA 基础》 1-2 系统概要与安装.doc
- 《Linux操作系统实用教程》教学第六章.ppt
- 1-1化学反应与能量变化.ppt
- 1-2、物质性质、变化.doc
- 《完善和发布网站》ppt 信息技术七上.ppt
- 《大学计算机基础》第2章-微机用户界面与其使用.ppt
- 《数据库系统概念》-第三章.ppt
- 1.1.1化学反应与能量变化.doc
- 红色大气德能勤绩廉工作述职报告.pptx
- 红色大气简约家庭助廉廉洁文化进家庭清廉治家PPT.pptx
- 坚守底线不越红线廉政教育专题党课.pptx
- 茶馆文化:久远流传-揭秘茶馆的历史、魅力与现代影响.pptx
- 篮球:技巧与战术-篮球赛场上的专业训练与策略.pptx
- 医疗科研的革命性进展-揭示未来治疗方案的可能性.pptx
- 智能草坪制造未来-高效生产与质量控制.pptx
- 高速铁路工程UIUC课件4.1-SWJTU HSR Engineering Civil Works 1 - Bridge Construction.pdf
- 西南交通大学城轨牵引传动8辅助供电系统.pdf
- 高速铁路工程UIUC课件2.4-CEE 498HSR Control & Communications -2 .pdf
最近下载
- 2025年高考真题地理(安徽卷)含答案 .pdf VIP
- 叉车操作技能大比武设计.doc VIP
- 电子线路陈其纯版第十四章时序逻辑电路.doc VIP
- 电力讲座课件_基于区块链技术的电力交易“六签”深化 应用.pptx VIP
- T∕CCIAT 0024-2020 全过程工程咨询服务管理标准.docx
- 小学二年级语文下册看图写话PPT课件(公开课).pptx VIP
- HBM T20WN technology data说明书用户手册.pdf
- 数学思想与方法模拟考试题及答案.pdf VIP
- 《视频监控知识培训》课件.ppt VIP
- 父亲节《哒哒哒-爸爸超人》【室内活动+创意美术】-.pptx VIP
文档评论(0)