- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
操作系统第四章线程
第四章 线程4.1 进程和线程进程的特点资源所有权-一个进程包括一个存放进程映像的虚拟地址空间调度/执行-一个进程沿着轨迹执行,可能和其他进程交替线程的引入(1)系统必须完成的操作:创建进程进程切换撤消进程缺点: 时间空间开销大,限制并发度的提高线程的引入(2) 进程的引入提高了计算机资源的利用效率。但在进一步提高进程的并发性时,人们发现进程切换开销占的比重越来越大,同时进程间通信的效率也受到限制。线程的引入正是为了简化进程间的通信,以更小的开销来提高进程内的并发程度某些操作系统独立处理进程的两个特点:调度和分派:基本单位通常称为线程或轻量级进程资源分配和保护:独立单位通常称为进程传统:单线程;现在:多线程---每个进程内允许包含多个并发执行的实体(控制流)。4.1.1多线程OS在单个进程内支持多个并发执行路径的能力DOS系统支持单进程单线程方法UNIX系统支持多用户进程,但只是单线程Java运行环境是单进程多线程 线程和进程的区别进程是资源分配和抢占CPU的单位;所有线程共享该进程的状态和资源,驻留在同一块地址空间,可以访问到相同数据线程是进程内部最小的调度单位;一个进程可产生多个线程,并发执行;线程不拥有系统资源,共享内存,线程通信和切换开销小。 多线程环境下的进程进程是操作系统中进行除处理器外的资源分配和保护的基本单位有独立的虚拟地址空间,用来容纳进程映像(如与进程关联的程序与数据)各种资源实施保护:如受保护地访问处理器、文件、外部设备及其他进程(进程间通信)。多线程环境下的线程线程是进程中能够独立执行的实体是处理器调度和分派的基本单位线程是进程的组成部分多线程环境,每个线程都有独立的栈,独立的控制块包含寄存器值、优先级和其他线程相关的状态信息多线程环境下的线程每个线程的相关元素:线程执行状态在未运行时保存的线程上下文一个执行栈用于每个线程局部变量的静态存储空间与进程内的其他线程共享的进程内存和资源的访问线程组成线程标识符:线程状态信息:运行态、阻塞态、就绪态线程上下文:可把线程看成是进程中一个独立的程序计数器在操作;内核栈:内核态下工作时,保存参数,函数调用时的返回地址等;私有存储区:用于存放线程局部变量及用户栈。线程的优点创建新线程比创建一个新的进程要快许多终止一个线程比终止进程时间少同一进程内线程间切换比进程间切换时间少线程提高了不同的执行程序间通信的效率多处理器系统中使用线程的例子1、前台和后台工作:前台接受,后台执行,响应速度快多处理器系统中使用线程的例子2、异步处理---自动保存,周期性备份3、执行速度---多个线程同时执行4、模块化程序结构---涉及多种活动或I/O操作****************************************************挂起进程,其中所有线程都会同时挂起进程终止会导致进程中所有线程终止线程并发执行,涉及到同步互斥(第五章) 4.1.2线程的功能特性线程状态: ①运行态、 ② 就绪态、③阻塞态基本操作派生:派生新进程同时派生新线程;线程也可在同一个进程中派生新线程阻塞:当线程等待一个事件时解除阻塞:当等待的事件发生, 移入就绪队列结束:线程执行完毕,释放其寄存器上下文和栈4.1.2线程的功能特性线程同步一个进程中的所有线程共享地址空间和其他资源一个线程对资源的修改都会影响同一个进程中其他线程的环境需同步各线程,互不干涉,保护数据结构4.2 线程分类可分为两类用户级线程(User Level Thread,ULT)内核级线程 (Kernel Level Thread,KLT)内核支持的线程 或轻量级线程Solaris既支持用户级线程,又支持内核级线程---混合式线程 4.2 线程分类用户级所有线程管理由应用程序完成线程库:例程包,用于创建和销毁线程的代码,线程间通信的代码,调度线程执行的代码,保存和恢复上下文的代码内核不知道线程的存在,线程切换不需核心态特权用户级线程 内核不知道线程的活动,但仍然管理进程的活动当线程调用系统调用时,整个进程阻塞但对线程库来说,线程仍然是运行状态 即线程状态是与进程状态独立的c)?d)?b)?优点:线程切换不需内核态特权,节省了两次状态转换开销调度算法可以为应用程序量身定做不需要对底层内核进行修改。线程库是一组供所有应用程序共享的函数缺点:系统调用时会引起阻塞;同一进程的多线程不能应用于多处理器内核级线程线程管理由内核完成应用程序部分没有进行线程管理的代码(线程库),只有一个接口 内核为进程和线程维护上下文信息调度基于线程完成如:Windows NT内核级线程优点内核可以调度同一进程的多个线程到多个处理器一个线程阻塞,调度另一个内核例程自身也是可以使用多线程缺点同一进程间的线程间切换,需要状态切换,导致速度下降混合方法线程创建
您可能关注的文档
- 提高三区清水池入口流量监测的准确性.ppt
- 摩擦磨损原理2固体表面接触.ppt
- 操作系统---进程控制.ppt
- 操作系统原理复习课件.pptx
- 操作系统合工大刘晓平02.ppt
- 提高原油采收率原理(EOR)第二章.ppt
- 支气管镜指南.ppt
- 政治必修二第一单元第一课人民民主专政本质是人民当家作主1.ppt
- 持续交付与DevOps.pptx
- 政治生活第二单元第四课第二框权力的行使需要监督.ppt
- 景洪市公安局2026年警务辅助人员招聘备考题库完整参考答案详解.docx
- 招商银行东莞分行2026年社会招聘备考题库及一套参考答案详解.docx
- 成都市新都区2025年12月公开招聘街道社区消防站消防员的备考题库完整答案详解.docx
- 深圳大学附属华南医院2026年1月公开选聘事业单位工作人员备考题库及完整答案详解一套.docx
- 榆林市第二十六幼儿园2026年招聘备考题库完整参考答案详解.docx
- 深圳法院2025年下半年劳动合同制审判辅助人员招录备考题库及参考答案详解1套.docx
- 沈阳理工大学2026年面向优秀退役运动员招聘体育教师备考题库及1套参考答案详解.docx
- 通知备考题库湛江市坡头区官渡镇人民政府2026年公开招聘编外人员备考题库有答案详解.docx
- 枞阳县投资发展有限公司2025年公开选聘工作人员备考题库及参考答案详解一套.docx
- 柳州市柳江区第二中学2026年春学期招聘聘用制英语教师1名、道法教师1名备考题库及完整答案详解1套.docx
最近下载
- 组织分布研究实例.pptx VIP
- 专项资金项目验收专项审计报告参考模板.docx VIP
- 投资注资入股协议书.docx VIP
- 中铁建现场安全标准化指导手册(房建分册).docx
- T_CWAN 0026-2021 T_CEEIA 507-2021 MIG_MAG焊枪电缆技术要求.docx VIP
- 时事政治必考试题库及(2025年)附完整答案详解(各地真题).docx VIP
- 07J501-1图集参考标准文件.pdf VIP
- 华东交通大学材料力学期末模拟试题二.docx VIP
- 森林火灾扑救技术规程.docx VIP
- 道路运输企业和城市客运企业安全生产重大事故隐患判定标准(试行).docx VIP
原创力文档


文档评论(0)