网站大量收购闲置独家精品文档,联系QQ:2885784924

操作系统第四章 并发处理.pptx

  1. 1、本文档共91页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 并发处理4.1并发活动——进程的引入假设某个作业job由输入I,计算C,打印P三个操作组成。单道批处理系统中,作业序列的处理过程如下:job2job1I1C1P1I2C2P2t为了提高资源利用率和系统吞吐量,引入多道批处理系统。2、多道批处理系统中,作业序列的处理过程如下:I3C3P3I2C2P2I1C1P1t从图中可以看出:①有的程序段的执行是有先后次序的,如C1,I2先于C2;②有的程序段可以并发执行,如P1,C2,I3; 可以用伪代码描述并发执行的程序段,由Dijkstra提出,Cobegin(Concomitant begin) S1;S2; ……;Sn;Coend表示S1,S2,……Sn可以并发执行。例如:也可以用先后次序图(以后也称进程流图)表示,它是一个有向无环图。S0;Cobegin S1;S2; ……;Sn;CoendSn+1; 表示先执行S0,再并发执行S1,S2,……Sn;当S1,S2,……Sn全部执行完毕后,再执行Sn+1。S0S1S2Sn……Sn+14.1.5并发执行程序的特点1.间断性 如果Ci-1完成后,若Ii未完成,则Ci也无法处理,导致计算程序段暂停。2.失去程序的封闭性 程序在并发执行时,是多个程序共享系统中的各种资源,因而这些资源的状态将由多个程序来改变,致使程序的运行失去封闭性。3.不可再现性 当初始条件相同时,程序多次执行,其结果必然重复出现,称为可再现性。例如:有一公共变量x,r1,r2为2个寄存器。假设CPU分时执行p1,p2。方式一执行:P1:r1=x; r1++; x=r1;P2:r2=x; r2++; x=r2;结果:x=x+2有两个程序段:P1:r1=x; r1++; x=r1;P2:r2=x; r2++; x=r2;例如:有一公共变量x,r1,r2为2个寄存器。假设CPU分时执行p1,p2。 方式二执行:P1:r1=x;P2:r2=x; r2++; x=r2; P1:r1++; x=r1;结果:x=x+1有两个程序段:P1:r1=x; r1++; x=r1;P2:r2=x; r2++; x=r2; 可见,并发执行的程序可能发生不可再现性。 为了描述并发执行程序的活动规律因而引进新的概念——进程。4.2进程的概念进程20世纪60年代初期提出,可翻译为process,task,action等。定义1:进程时一个具有独立功能的程序关于某个数据集合的一次运行活动。定义2:从核心看来,进程是分了类的,根据一组规则操纵的数据结构。进程与程序的关系:进程和程序的区别程序是静止的,进程是动态的(有生命周期的)进程是能独立运行的单位,能与其它进程并发执行。进程是资源分配的基本单位,也是CPU调度的基本单位。进程与程序的联系进程=程序(程序段、数据段、栈段)+进程控制块(PCB)程序是构成进程的组成部分之一,一个进程存在的目的就是执行其所对应的程序。4.2.2进程的类型1.系统进程 它们运行OS的程序,也称守护进程(Daemon进程)。系统启动时创建,运行时CPU处于核心态。2.用户进程 这类进程运行用户程序,直接为用户 服务。进程的特征:并发性:可以与其它进程在宏观上同时先前推进。动态性:进程是执行中的程序。独立性:进行是资源分配和调度的基本单位。交互性:进程在运行时可能会与其它进程发生直接或间接的相互作业。异步性:每个进程都可以相对独立,不可预知的速度向前推进。结构性:每个进程都对应1个进程控制块。4.2.3进程的状态进程的基本状态就绪状态(Ready):获得了除CPU以外的所有资源,一旦获得CPU控制权,就可以立即运行。运行状态(Running):当就绪进程由OS的进程调度程序调度,得到CPU控制权,占用CPU运行的状态。等待状态(Wait):若某一进程正在等待某一事件的发生而暂时停止,这时,即使获得CPU控制权也无法执行。或阻塞状态(Block)、睡眠状态(Sleep)。二、进程状态变迁图1、进程的三态模型:运行时间片到被抢占I/O请求中断请求服务等进程调度等待就绪I/O请求完成等进程队列模型:就绪队列创建OS调度CPU时间片用完事件1发生等待事件1事件2发生等待事件2…… ……事件n发生等待事件n 因等待的原因不同可以分为若干个等待队列,这样发现和唤醒等待的进程较为方便。二、进程状态变迁图2、进程的五态模型:终止结束运行时间片到被抢占I/O请求中断请求服务等进程调度等待创建就绪接纳I/O请求完成等创建态(Create):进程刚刚建立(如建立PCB),完成初始化,但未分配内存等资源。终止态(Terminated):正常结束或异常结束。13.在进程基本状态转换图中,增加换出(将进程换出至辅存)和换入(将进程从辅存换入至主存)两个操作,试画出进程状态转换图。二、进程状态变迁图3、

文档评论(0)

文档精品 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:6203200221000001

1亿VIP精品文档

相关文档