计算机操作系统chap2进程管理.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二章 进程管理;本章要点;程序顺序执行时的特征;程序的并发执行及其特征;程序的并发执行及其特征;进程的特征 ;(2)并发性 这是指多个进程实体,同存于内存中,能在一段时间内同时运行。并发性是进程的第二个最重要特征。引人进程的目的也正是为了使其程序能并发执行,而程序是不能并发执行的。 (3)独立性 这是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位。凡未建立进程的程序,都不能作为一个独立的单位参加运行。 (4)异步性 这是指进程按各自独立的、不可预知的速度向前推进;或者说,进程按异步方式运行。正是这一特征,将导致程序执行的不可再现性。因此,在OS中必须采取某种措施来保证各程序之间能协调运行。 (5)结构特征 从结构上看,进程实体是由程序段、数据段及进程控制块三部分 组成。;问题思??:进程和程序的区别和联系?;进程的三种基本状态;注意: *可逆 :仅就绪??执行 *主动 :仅执行阻塞 *微观上:执行状态时,程序在运行 *宏观上:进程建立后直至撤消,程序都在运行。;1) 就绪(Ready)状态 一个刚被创建的进程,它的初始状态是就绪。 进程所请求的一次打印输出结束后,将使进程状态从等待态变为就绪态。 2) 执行状态 单CPU系统中,最多只有一个进程处于运行状态。 分配到必要的资源并获得处理机时的进程状态是执行状态。如:某进程已获得运行所需的其它资源(CPU除外),将处于就绪,当它获得CPU时,就将处于运行(执行)状态。 进程从执行状态进入就绪状态的原因可能是时间片用完。 3) 阻塞状态 进程管理中, 在等待的事件发生情况下,进程将从阻塞状态变为就绪状态。 ; 进程控制块PCB(Process Control Block);进程控制块中的信息;思考题;2.2 进程控制;引起创建进程的事件 ?用户登录 为每个该终端用户建立一进程。 ?作业调度 为每个作业创建一个进程。 ?提供服务 为用户程序请求的某个服务(如打印)创建进程。 ?应用请求 应用程序自己创建的进程。;创建进程(调用原语Create())的主要工作 ?向系统申请一个空闲的PCB。 ?分配资源,如内存。 ?给PCB的各数据项置初值(进程名,状态,CPU信息,程序计数器,栈指针,寄存器)——故调用创建原语的进程,必须提供PCB的有关参数。 ?把新的PCB插入就绪队列。;课 堂 练 习;课 堂 练 习;习 题 1;习 题 2;进程同步基本概念(1); 临界资源 一次仅允许一个进程使用的资源叫临界资源。 ?属于临界资源的物理设备,如输入机、打印机、磁带机等。 ?属于临界资源的软件资源,如多个进程共享的变量、数据、 队列等。 ;两个交往的并发进程,其中一个进程对另一个进程的影响常常是不可预期的,甚至是无法再现,因为两个并发进程执行的相对速度无法控制,所以一个进程的速率通常无法为另一个进程所知。如: 两个进程P1,P2共享变量counter(初值5): P1 P2 registerl=counter; register2=counter; registerl=registerl+1; register2=register2–1; Counter=register1 Counter=register2; 如果一个进程先执行,然后另一进程再执行,则counter的值仍为5。如改变执行次序,counter可能为4或6。 原因:两个进程共享了变量counter. 解决方法:把counter作为临界资源处理。 ; 程序上如何实现互斥使用临界资源呢?只要把进程中访问临界资源的那段代码分离出来(它被称为临界区),诸进程互斥地进入自己的临界区即可。 ;信号量机制;P、V操作;P原语操作的主要动作是: Semaphore减1; 若Semaphore 减1后仍=0,则进程继续执行。 若Semaphore 减1后0,则进程被阻塞在与该信号相对应的队列中,然后转进程调度。 V原语操作的主要动作是: Semaphore加1; 若Semaphore 加1后仍0,则进程继续执行。 若Semaphore 加1后=0,则从信号的等待队列中唤醒一等待进程,然后再返回原进程继续执行或转进程调度。;利用信号量实现前驱关系;例题;习题1;习题2;习题3;例题;例题;3、在公共汽车上,司机和售票员各行其职,司机负责开车和到站停车;售票员负责售票和开

文档评论(0)

151****0104 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档