第2章处理器管理1718.pptVIP

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章处理器管理1718

2、线程的概念 线程是进程中的一个实体,是被系统独立调度和运行的基本单位。 1、线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器、一组寄存器和栈)但是它可以与同属于一个进程的其他线程共享进程所拥有的全部资源。 2、一个线程可以创建和撤销另一个线程,同一进程中的多个线程之间可以并发运行。 3、线程之间也会相互制约,使其在运行中呈现异步性。 因此,线程同样具有就绪、运行、等待三种基本状态。 3、线程与进程的比较 线程具有许多传统进程的特征,所以又称为轻型进程。传统的进程称为重型进程,相当于只有一个线程的任务。 在引入线程的操作系统中,通常一个进程拥有若干个线程,至少也有一个线程。 线程与进程有如下4个方面不同: (1)调度 在原有的系统中,进程既是资源分配和拥有的基本单位,又是独立调度和运行的基位。 在引入线程后,把线程作为是独立调度和运行的基本单位,而进程只作为资源分配和拥有的基本单位,把传统进程的两个属性分开,线程便能轻装前进,从而显著提高系统的并发程度。 此时,在同一进程中,线程的切换不会引起进程的切换,而由一个进程中的线程到另一个进程中的线程时,将会同时引起进程的切换。 (2)并发 在引入线程的系统中,不仅进程之间可以并发运行,而且在一个进程中的多个线程之间,也可以并发运行,使系统真有更好的并发性,从而能更有效地使用系统资源和提高吞吐量。 (3)拥有资源 不论是传统的操作系统,还是引入线程的操作系统,进程都是资源分配和拥有的基本单位,而线程基本上不拥有系统资源(只有一些运行时必不可少的资源),但是,线程可以访问所属进程的所有资源。 (4)系统开销 系统在创建(或撤销)进程时,都要为之分配(或回收)大量的资源,如主存空间、I/O设备等。所以,在进程切换时,要进行复杂的现场保护和新环境的设置。 因而,不管是进程的创建、撤销,还是是切换,对于进程的操作所付出的系统开销都远大于对于线程操作所付出的系统开销。 4. 线程的类型 (1)系统级线程 系统级线程是依赖于系统控制的,即无论是用户进程中的线程,还是系统进程中的线程,它们的创建、撤销与切换都是由系统控制实现的。 在系统中保留了一张线程控制块,系统根据该线程控制块来感知线程的存在,并对线程进行控制。 (2)用户级线程 用户级线程是由用户控制的,对于用户级线程的创建、撤销与切换,都与系统控制无关,完全由用户自己管理。 简单来说就是系统并不知道有用户级线程的存在,在系统中各种控制仍然是基于进程的。 2.8.2 超线程技术 1.超线程的概念 超线程技术就是利用特殊的硬件指令,在一个实体处理器中放人两个逻辑处理单元,从而模拟成两个工作环境,让单个处理器能使用线程级的并行计算,同时处理多项任务,提升处理器资源的利用率。简单说,超线程技术就是把一个处理器当成多个处理器使用的技术。 2.超线程的工作 对支持多处理器功能的应用程序而言,超线程处理器被视为两个分离的逻辑处理器。 应用程序无须修正就可以使用这两个逻辑处理器。同时,每个逻辑处理器都可以独立响应中断。第一个逻辑处理器可追踪一个软件线程,而第二个逻辑处理器则可以同时追踪另一个软件线程。 由于两个线程共同使用同样的运行资源,因此不会产生一个线程运行而另一个线程闲置的状况。这种方式可以大大提升每个实体处理器中运行资源的使用率。 第2章 处理器管理 主讲:周文强 课程:操作系统 本章内容 2.7 进程死锁 2.8 处理器管理新技术 2.9 Windows操作系统的进程管理 2.7 进程死锁 死锁问题是Dijkstra于1965年在研究银行家算法(该问题原来是为了研究银行家如何将一定的资金安全地借给若干顾客的问题)时首先提出来的,后来Havender等人又进一步认识这一现象并将其发展。实际上,死锁是一个具有普遍性的现象,在各个领域乃至日常生活中也屡见不鲜。研究死锁问题是保证操作系统正确、可靠运行必须考虑的课题。 并行进程的执行虽然改善了系统资源的利用率,提高了系统的处理能力,但并行执行的风险增大了,因为并发进程执行的结果与时间有关,且对临界资源的管理或操作不当(如在生产者与消费者问题中的P操作的次序颠倒时等)就

文档评论(0)

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

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

1亿VIP精品文档

相关文档