操作系统教程——Linux实例分析 教学课件 作者 孟庆昌 第1-8章 第2章 进程管理.pptVIP

操作系统教程——Linux实例分析 教学课件 作者 孟庆昌 第1-8章 第2章 进程管理.ppt

  1. 1、本文档共167页,可阅读全部内容。
  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章 进程管理 2.1 进程概念 2.2 线程 2.3 进程管理 2.4 进程间通信 2.5 经典进程同步问题 2.6 管程 2.7 进程通信 2.8 Linux进程管理 习题 2.1 进 程 概 念 2.1.1 程序的顺序执行 顺序程序活动有三个主要特点: (1) 程序所规定的动作在机器上严格地按顺序执行。 (2) 只有程序本身的动作才能改变程序的运行环境。 (3) 程序的执行结果与程序运行的速度无关。 图2-1列出了几个典型的顺序程序的示意图。 其中图(a)最简单, 一条条指令顺次做下去; 图(b)表示程序代码中出现循环的情况; 图(c)表示A程序在执行过程中调用B程序, B运行完, 返回A, 继续执行A的情况。 2.1.2 程序的并发执行和资源共享 多道程序 设计是指两个或更多个程序同时在系统中存在并且运行。 这时的工作环境与单道程序(仅一个)的运行条件相比, 大不相同。首先, 每个用户程序都需要一定的资源, 如内存、 设备、 CPU时间等, 因此系统中的软、 硬件资源不再是单个程序独占, 而是由几道程序所共享。 这样, 共享资源的状态就由多道程序的活动共同决定, 从而打破了单道程序“闭关自守”的局面。 采用多道程序技术来执行同样的作业A和B, 就能大大改进系统性能, 如图2-3所示。 作业A先运行, 它运行一秒后等待输入, 此时让B运行; B运行一秒后等待输入, 此时恰好A输入完, 可以运行了……就这样在CPU上交替地运行A和B。 在这种理想的情况下, CPU不空转, 其使用率升至百分之百, 并且吞吐量也随之增加了。 2.1.3 程序并发执行的特性 资源共享和程序的并发执行使得系统的工作情况变得非常复杂, 带来一系列新的问题, 特别表现在各种程序活动的相互依赖和制约关系方面。 我们分析一下图2-4中几个程序并发执行的情况。 通过上述三个例子的分析, 可以得出并发程序的三个主要特征: (1) 没有封闭性。 有共享公共变量时, 其执行结果不可再现, 就是说, 结果与相关的并发程序的相对速度有关。 (2) 程序与计算不再一一对应。 “程序”是指令的有序集合, 是“静态”的概念。 (3) 并发程序在执行期间可以互相制约。 2.1.4 进程概念的引入和描述 “进程”是操作系统的最基本、 最重要的概念之一。 引进这个概念对于理解、 描述和设计操作系统都具有极其重要的意义。 但是迄今为止, 对这个概念还没有形成统一的定义, 都是从不同的角度来描述它的各个基本特征。 下面列举出比较能反映进程实质的几种定义: (1) 进程(或任务)是可以和别的计算并发执行的计算。 (2) 进程是程序的一次执行, 是在给定内存区域中的一组指令序列的执行过程。 (3) 所谓进程, 简单说来就是一个程序在给定活动空间和初始条件下, 在一个处理机上的执行过程。 (4) 进程可定义为一个数据结构和能在其上进行操作的一个程序。 (5) 进程是程序在一个数据集合上运行的过程, 它是系统进行资源分配和调度的一个独立单位。 进程和程序是两个不同的概念, 但又有密切的联系。 它们之间的主要区别是: (1) 程序是静态概念, 本身可以作为一种软件资源长期保存着; 而进程则是程序的一次执行过程, 它是动态概念, 有一定的生命期, 是动态地产生和消亡的。 (2) 进程是一个能独立运行的单位, 能与其他进程并发执行, 进程是作为资源申请和调度单位存在的; 而通常的程序段是不能作为一个独立运行的单位的。 (3) 程序和进程无一一对应关系。 一个程序可由多个进程共用; 另一方面, 一个进程在其活动中又可顺序地执行若干个程序。 (4) 各个进程在并发执行过程中会产生相互制约关系, 造成各自前进速度的不可预测性。 而程序本身是静态的, 不存在这种异步特征。 表2-1列出了进程和程序之间的主要区别。 2.1.5 进程的状态及其变迁 进程是一个程序的执行过程, 有着走走停停的活动规律。 进程的动态性质是由其状

您可能关注的文档

文档评论(0)

开心农场 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档