操作系统第2章(3)(第四版).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
二、线程的实现机制    用户级线程 内核支持线程 两者结合方法 1.内核支持线程(KST)   通常的进程(系统、用户): 创建、 撤消,I/O操作,切换,利用系统调用进入内核,在内核的支持下实现的。 进程需要OS内核的支持,与内核紧密相关的。 内核支持线程KST(Kernel Supported Threads),也是在内核的支持下运行的,创建、撤消和切换等也是依靠内核,在内核空间实现的。内核空间为每一个内核支持线程设置了一个线程控制块,内核是根据该控制块而感知某线程的存在,并对其加以控制。 内核支持线程的优点和缺点 优点: 对多处理器,核心可以同时调度同一进程的多个线程。 阻塞是在线程一级完成。 核心例程是多线程的。 缺点: 在同一进程内的线程切换调用内核,导致速度下降。(用户的线程) 2.用户级线程(ULT)   仅存在于用户空间中。 由应用程序完成所有线程的管理;创建、撤消、同步与通信。 通过线程库(用户空间); 一组管理线程的过程; 核心不知道线程的存在。 线程切换不需要核心态特权。 调度是应用特定的。 调度仍是以进程为单位进行的。 用户级线程的优点和缺点 优点: 线程切换不调用核心,切换速度快。 调度是应用程序特定的:可以选择最好的算法。 ULT可运行在任何操作系统上(只需要线程库;作用于用户态)。 缺点: 大多数系统调用是阻塞的,因此核心阻塞进程,故进程中所有线程将被阻塞。 核心只将处理器分配给进程,同一进程中的两个线程不能同时运行于两个处理器上。(多用户应用程序不能利用多处理机技术)    3. ULT和KST结合方法 线程创建在用户空间完成。 大量线程调度和同步在用户空间完成。 程序员可以调整KST的数量。 例子:Solaris 三、线程的实现—何种形式的线程都要直接或间接使用内核 1.内核支持线程的实现 任务 数据 区 进程 创建 PTDA TCB #1 线程ID、优先级、线程运行的CPU状态等;存在于内核空间; 线程 进程 创建 分配 内核支持线程的创建、 撤消均与进程的相类似; 内核支持线程的调度和切换与进程的调度和切换十分相似; 2.用户级线程的实现   用户级线程是在用户空间实现的。所有的用户级线程都具有相同的结构,它们都运行在一个中间系统的上面。 实现的中间系统:运行时系统; 内核控制线程。    线程 线程 线程 用户空间 内 核 中间系统 1) 运行时系统(Runtime System)   所谓“运行时系统”,实质上是用于管理和控制线程的函数(过程)的集合。用这些函数使用户级线程与内核无关。 包括:创建、撤消、 线程同步和通信、调度函数等。函数驻留在用户空间,用户级线程与内核之间的接口。 线程 线程 线程 用户空间 内 核 中间系统 函 数 线程的切换无需进入内核,切换操作简单,切换速度非常快。 2) 内核控制线程--轻型进程LWP(Light Weight Process)   LWP的数据结构: 标识符、优先级、状态,栈、局部存储区等。 LWP可通过系统调用来获得内核提供的服务。 当一个用户级线程运行时,只要将它连接到一个LWP上,此时它便具有了内核支持线程的所有属性。 图 2-16 利用轻型进程作为中间系统 只看见LWP 线程小结: 1、线程基本概念 (线程是进程内一个可调度的实体。) 1)线程引入原因 为了简化进程间的通信,以小的开销来提高进程内的并发程度。 2)支持线程的OS中,线程是调度的单位;进程是资源分配的单位。 3)线程与进程的比较、线程的好处。 2、线程的实现机制 1)内核支持线程:存于内核、创、撤、转换OS控制; 调度以线程为单位;阻塞是在线程一级; 实现方式:创建时分配TCB; 2)用户级线程:存于用户态;应用程序负责创、撤、切换;切换速度快; 调度以进程为单位;阻塞是进程一级。 实现方式:中间系统

文档评论(0)

559997799 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档