- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 第2章 进程管理 * 多线程进程例子-2 网页浏览器进程: 一个显示文字、图象等的线程 一个接收网络数据的线程 LAN中的文件服务器:对在一段时间内需要处理的几个文件请求, 为每一个请求创建一个线程 * 第2章 进程管理 * 通常: 一个由几个独立部分组成的应用 ,这几个部分不需要顺序执行,则每个部分可以以线程方式实现 当一个线程因I/O阻塞时,可以切换到同一应用的另一个线程 多线程进程例子-3 * 第2章 进程管理 * 线程与进程的比较 调度 并发 拥有资源 系统开销 * 第2章 进程管理 * 2.6.2 线程的实现 用户级线程 这种线程的创建、撤消、和切换,都不用系统调用来实现。内核并不知道用户级线程的存在。 内核支持线程 是依赖于内核的,即无论是用户进程中的线程,还是系统进程中的线程,它们的创建、撤消、切换都由内核实现。 组合方式 * 第2章 进程管理 * 用户级线程-1 由应用程序完成所有线程的管理 通过线程库(在用户空间)实现 核心不知道线程的存在 线程切换不需要核心态特权 调度是应用特定的 例如:POSIX标准的 P-threads,Mach C-threads,Solaris 2 UI-threads * 第2章 进程管理 * 用户级线程-2 * 第2章 进程管理 * 用户级线程-3 线程库 是一组管理线程的函数,它提供一个线程运行管理系统(运行系统) 创建、撤消线程 在线程之间传递消息和数据 调度线程执行 保护和恢复线程上下文 * 第2章 进程管理 * 用户级线程-3 优点: 线程切换不调用核心,快速 调度是应用程序特定的:可以选择最好的算法 可运行在任何操作系统上(只需要线程库),可以在一个不支持线程的OS上实现 缺点: 大多数系统调用是阻塞的,因此进程阻塞时,进程中所有线程将被阻塞 核心只将处理器分配给进程,同一进程中的两个线程不能同时运行于两个处理器上 * 第2章 进程管理 * 核心级线程-1 所有线程管理由核心完成 没有线程库,但核心提供API 核心维护进程和线程的上下文 线程之间的切换需要核心支持 以线程为基础进行调度 例子:Windows 2000/XP, Solaris 2, Tru64 UNIX * 第2章 进程管理 * 核心级线程-2 * 第2章 进程管理 * 核心级线程-3 优点: 对多处理器,核心可以同时调度同一进程的多个线程 阻塞是在线程一级完成 缺点: 在同一进程内的线程切换调用内核,导致速度下降 * 第2章 进程管理 * 用户级和核心级线程比较 运行系统作为中间系统 * 第2章 进程管理 * 组合方式 线程创建在用户空间完成 大量线程调度和同步在用户空间完成 程序员可以调整KLT的数量 可以取两者中最好的 例子:Solaris * 第2章 进程管理 * 2.6.3 线程模型 多对一 一对一 多对多 * 第2章 进程管理 * 多对一-1 多个 用户级线程 映射到单个 内核线程 可用于不支持内核级线程的操作系统中 并不能增加并发性 例:Solaris 2线程库 * 第2章 进程管理 * 多对一-2 * 第2章 进程管理 * 一对一-1 每个 用户级线程 映射到一个 内核线程 例如 - Windows 95/98/NT/2000 - OS/2 必须对系统支持 的线程数限制: * 第2章 进程管理 * 1、共享存储器系统 1)基于共享数据结构的通信方式 2)基于共享存储区的通信方式 * 第2章 进程管理 * 1)基于共享数据结构的通信方式 各进程公用某些数据结构交换信息 如生产者-消费者问题中的有界缓冲区 低效,不透明,适于少量通信。 * 第2章 进程管理 * 2)基于共享存储区的通信方式 系统中设共享存储区。 通信过程: (1)向系统申请一个或多个分区,并指定该分区的关键字,若系统已经给其它进程分配了这样的分区,则将该分区的描述符返回给申请者。 (2)获得分区后连接到本进程上,即可读/写. 特点:高效,速度快。 * 第2章 进程管理 * 2 消息传递系统 信息单位:消息(报文) 目前的主要通信方式 分为直接通信方式、间接通信方式 实现: 一组通信命令(原语) 具有透明性:隐藏了通信的实现细节,例如同步的实现,简化了通信程序编制的复杂性。 * 第2章 进程管理 * 3 管道通信-1 管道:连接一个读进程和一个写进程之间通信的共享文件(称pipe文件)。 功能:大量的数据发收。 向管道提供输入的进程(称写进程),以字符流的形式将大量数据送入管道, 而接受管道输出的进程(读进程)可从管道中接收数据。 注意: (1)互斥 (2)同步 (3)对方是否存在 * 第2章 进程管理 * 3管道通信-2 发送进程
您可能关注的文档
- 安徽师范大学美术学院美术史课件第六章 威尼斯尼德兰画派和德国文艺复兴等.ppt
- 安徽师范大学美术学院美术史课件第七章 17世纪欧洲美术:巴洛克.ppt
- 安徽师范大学美术学院美术史课件第三章 古希腊罗马时期的美术.ppt
- 安徽师范大学美术学院美术史课件第四章 中世纪美术.ppt
- 安徽师范大学美术学院美术史课件第五章 文艺复兴的美术.ppt
- 安徽师范大学数计学院《计算机组成原理》教学课件:第二章 计算机的逻辑部件.ppt
- 安徽师范大学数计学院《计算机组成原理》教学课件:第六章 中央处理部件.ppt
- 安徽师范大学数计学院《计算机组成原理》教学课件:第三章 运算方法和运算部件.ppt
- 安徽师范大学数计学院《计算机组成原理》教学课件:第四章 主存储器与存储体系.ppt
- 安徽师范大学外国美术史课件第六章 威尼斯、尼德兰画派和德国文艺复兴等.ppt
- 2025北京航空工业集团综合所高层次人才及博士招聘20人笔试参考题库附答案.docx
- 2025安徽亳州市利辛县巡察信息中心遴选5人备考题库附答案.docx
- 2025宁波鄞州区东柳街道编外招聘1人备考题库附答案.docx
- 2025云南楚雄市机关事业单位选调63人备考题库附答案.docx
- 2025北京中国社会科学调查中心招聘劳动合同制人员1人备考题库附答案.docx
- 2025宁波市市场监督管理局局属事业单位宁波市标准化研究院招聘高层次人才1人备考题库附答案.docx
- 2025河南郑州铁路职业技术学院招聘合同制工作人员48人笔试历年题库附答案解析.docx
- 2025云南玉溪市红塔区文化和旅游局招聘办公辅助人员1人备考题库附答案.docx
- 2025山东日照市岚山区卫生健康系统事业单位招聘20人备考题库附答案.docx
- 2025四川九州电子科技股份有限公司招聘车载电子事业部-PQE岗笔试参考题库附答案.docx
原创力文档


文档评论(0)