- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
操作系统OS9精品.ppt
4.1 并发活动--进程的引人 操作系统的特性是并发与共享 资源的竞争 程序间的合作与协同 要解决这些问题,程序已经不能描述程序在内存中运行的状态,必须引人新的概念--进程。 二、程序顺序执行的特点 1.顺序性 处理机严格按照程序所规定的顺序执行,即每个操作必须在下一个操作开始之前结束。 2.封闭性 程序一旦开始执行,其计算结果不受外界的影响。 3.可再现性 程序执行的结果只与初始条件有关,与其它无关。 4.1.2 程序的并发执行 例:在系统中有n个作业,每个作业都有三个处理步骤,输入数据、处理、输出,即Ii,Ci,Pi (i=1,2,3,...,n)。 4.1 并发活动--进程的引人4.1.2 程序的并发执行 程序并发执行 (定义) 若干个程序段同时在系统中运行,若这些程序的执行在时间上存在重迭,则称为程序并发执行。 4.1.2 程序的并发执行 程序并发执行的描述 cobegin S1; S2; S3; ...; SN; coend; co是concurrent的头两个字符。 这是Dijkstra提出的。 4.1.2 程序的并发执行 4.1.3 并发执行实行--誊抄一、顺序执行的誊抄 算法1: 输入:f 输出:g { while (f 不为空) { input ; output ; } } 由这个程序完成誊抄工作是不会出错的。 4.1.3 并发执行实行--誊抄二、两个程序并发执行完成誊抄 算法:2 { cobegin while (不为结束符) /* 输入程序段 */ { input; /* 读入数据 */ send; } /* 数据送缓冲区 */ while(buffer不为空) /* 输出程序段 */ { receive; /* 缓冲区中取数据 */ output; } /* 输出 */ coend } 4.1.3 并发执行实行--誊抄二、两个程序并发执行完成誊抄 程序并发执行时情况 1、输出程序运行的速度比输入程序快时,某些输出可能会重复; 2、输入程序执行的速度比输出程序快时,有些数据会丢失; 4.1.3 并发执行实行--誊抄 三、三个并发执行程序的誊抄 4.1.3 并发执行实行--誊抄 三、三个并发执行程序的誊抄 4.1.4 与时间有关的错误 假定f系列中有记录 f=(R1,R2,...,Rn) g=() 在誊抄完成后: f=(R1,R2,...,Rn) g=(R1,R2,...,Rn) 算法中的: copy≡ t=s put ≡ put(t,g) get ≡ get(s,f) 4.1.4 与时间有关的错误 若程序错写成: while(誊抄未完成){ cobegin copy; put; get; coend } 初始状态: f=(R1,R2,...,Rn) s=() t=() g=() 首先执行了get(s,f) f=(R1,R2,...,Rn) s=R1,t=(),g=() 4.1.4 与时间有关的错误 copy,put,get三个程序段并发执行, 就有六种组合: 1、copy;put;get 导致结果:g=(R1,R2) ? 2、copy;get;put 导致结果:g=(R1,R2) ? 3、put;copy;get 导致结果:g=(R1,R1) ? 4、put;get;copy 导致结果:g=(R1,R1) ? 5、get;copy;put 导致结果:g=(R1,R3) ? 6、get;put;copy 导致结果:g=(R1,R1) ? 这就是与时间有关的错误。 4.1.5 程序并发执行的特点 4.1.5 程序并发执行的特点 二、程序与计算不再一一对应 在程序顺序执行时,一个程序总是对应一个具体的计算,但在程序的并发执行时,可能有多用户共享同一个程序,但处理(计算)的对象却是不同的。 4.1.5 程序并发执行的特点 三、程序并发执行的相互制约 程序并发执行时 对系统资源的竞争 程序间有合作 合作与竞争产生一系列的矛盾,存在矛盾就会产生相互制约的关系。 回头来,我们再看看操作系统的第三个特性: 不确定性* 4.2 进程概念(process) 4.2.1 进程的定义 在多道程序设计的环境下,为了描述程序在计算机系统内的执行情况,必
文档评论(0)