ImageVerifierCode 换一换
格式:PPT , 页数:29 ,大小:4.50MB ,
文档编号:3403937      下载积分:22 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-3403937.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(三亚风情)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(第2单元进程与进程管理课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

第2单元进程与进程管理课件.ppt

1、第2单元 进程与进程管理第4节 进程之间的同步与互斥并发进程之间关系:l 同步与互斥l 互发消息互斥与同步资源共享 在操作系统中,当多个并发进程使用同一个资在操作系统中,当多个并发进程使用同一个资源。而这个资源又不能同时使用,进程间的这种相源。而这个资源又不能同时使用,进程间的这种相互制约关系称为互制约关系称为互斥互斥 合作合作 并发进程在一些关键点上可能需要互相等待与互并发进程在一些关键点上可能需要互相等待与互通消息,通消息,这种关系称为这种关系称为进程进程同步同步 例1:两个进程A、B共享一台打印机 例2:两个进程共享一个变量x 设:x代表某航班机座号,p1和p2两个售票进程,售票 工作是

2、对变量x加1。这两个进程在一个处理机C上并发执行 r1:=x;r1:=r1+1;x:=r1;P1与P2并发执行,两种可能的执行次序:A情形(希望这样)p1:r1:=x;r1:=r1+1;x:=r1;p2:r2:=x;r2:=r2+1;x:=r2;设x的初值为10,两种情况下的执行结果:情况A:x=10+2 情况B:x=10+1 B情形 p1:r1:=x;r1:=r1+1;x:=r1;p2:r2:=x;r2:=r2+1;x:=r2;与时间有关的错误:不同的时间执行结果不同互斥临界区是进程中对临界资源使用的程序段,称为相对于该临界资源的临界区。临界资源一次仅允许一个进程使用的资源称为临界资源。硬件

3、:如输入机、打印机、磁带机等 软件:如公用变量、数据、表格、队列等 x:=x+1;csa 进程P1进程P2 x:=x+1;csb 只要p1和p2不同时进入各自的临界区,就可以互斥使用同一临界资源例题 在下面的叙述中,正确的是()。A.临界资源是非共享资源 B.临界资源是任意共享资源C.临界资源是互斥共享资源 D.临界资源是同时共享资源 对进程间互斥地使用临界资源,进程可以()A.互斥地进入临界区 B.互斥地进入各自的临界区C.互斥地进入同一临界区 D.互斥地进入各自的同类资源的临界区互斥使用资源办法 锁 信号量用变量w代表某种资源的状态(0表示可用,1表示不可用),w称为“锁”。锁42上锁原语

4、算法 lock 输入:锁变量w 输出:无 test:if(w为1)goto test;else w=1;*上锁*开锁原语算法 unlock 输入:锁变量w 输出:无 w=0;*开锁*50 x代表某航班机座号,pa和pb两个售票进程,售票工作是对变量x加1。设:mutex为锁p()p()lock(mutex);lock(mutex);x:=x+1;x:=x+1;unlock(mutex);unlock(mutex);程序 task1 main()p1()p2()int w=0;*互斥锁*cobegin lock(w);lock(w);p1();csa;csb;p2();unlock(w);unl

5、ock(w);coend 代表并发执行上锁开锁临界区临界区46上锁原语进入临界区csa 进程 pa开锁原语上锁原语进入临界区csb 进程 pb开锁原语一个临界资源可以对应多个临界区。一个临界资源可以对应多个临界区。互斥地使用临界资源是通过互斥地进入临界区实现的。互斥地使用临界资源是通过互斥地进入临界区实现的。对不?进程进程A、B共享变量共享变量x,需要互斥执行;进程,需要互斥执行;进程B、C共享变量共享变量y,B、C也需要互斥执行,因此,进程也需要互斥执行,因此,进程A、C必须互斥执行必须互斥执行。1W 进入临界区csa 0W进程AW=1?=0 1W 进入临界区csb 0W进程BW=1?=0进

6、程得不到锁,应该由运行状态转为等待状态进程进入临界区的准则 空闲让进 忙则等待 有限等待 让权等待43信号灯的整型变量s。变量值 0 时,表示绿灯,代表有资源可用;变量值 0当一进程因在记当一进程因在记录型信号量录型信号量S上执上执行行V(S)操作而导致操作而导致唤醒另一进程后,唤醒另一进程后,S的值为(的值为()。)。A.0 B.0 C.0 D.0main()int mutex=1;*互斥信号灯*cobegin pa();pb();coend pa()pb()p(mutex);p(mutex);csa;csb;v(mutex);v(mutex);两个并发进程,互斥信号灯的值仅取1、0和1三个

7、值。mutex=1 表示没有进程进入临界区;mutex=0 表示有一个进程进入临界区;mutex=1 表示一个进程进入临界区,另一个进程等待进入。x代表某航班机座号,pa和pb两个售票进程,售票工作是对变量x加1。设:mutex为互斥信号灯,初值为1。p()p()p(mutex);p(mutex);x:=x+1;x:=x+1;v(mutex);v(mutex);同步 生产者消费者问题 合作进程54 计算进程 cp和打印进程 iop公用一个单缓冲,为了完成正确的计算与打印,试用信号灯的p、v操作实现这两个进程的同步。iop cp两个进程的任务 计算进程cp经过计算,将计算结果送入buf;打印进程

8、iop把buf中的数据取出打印。57main()int sa=0;*表示buf中有无信息 *int sb=1;*表示buf中有无空位置*cobegin cp();iop();coendcp()iop()while(计算未完成)while(打印工作未完成)得到一个计算结果;p(sa);p(sb);从缓冲区中取一数;将数送到缓冲区中;v(sb);v(sa);从打印机上输出;iop cp59 生产者与消费者的同步关系 生产者:当有界缓冲区中无空位置时,要等待;向有界缓冲区放入物品后,要发消息。消费者:当有界缓冲区中无物品时,要等待;从有界缓冲区取出物品后,要发消息。c1p1 c2c3ckp2p3pm

9、62程序描述main()int sa=0;*满缓冲区的数目*int sb=n;*空缓冲区的数目*int mutex=1;*对有界缓冲区进行操作的互斥信号灯*cobegin p1();p2();pm();c1();c2();ck();coendpi()cj()while(生产未完成)while(还要继续消费)p(sa);生产一个产品;p(mutex);p(sb);从有界缓冲区中取产品;p(mutex);v(empty);送一个产品到有界缓冲 v(sb);v(mutex);消费一个产品;v(sa);生产者消费者问题是一个既有同步又有互斥的问题。生产者消费者问题是一个既有同步又有互斥的问题。例子 若

10、信号量S初值为2,当前值为1,则表示有()个进程在与S相关的队列上等待。A0 B1C2D3 一种资源的数量是8,这个资源对应的信号量的当前值是2,说明:()A.有2个进程等待这个资源B.有2个资源可以使用C.有6个进程等待这个资源D.有6个资源可以使用信号量的物理意义是当信号量值大于零时表示信号量的物理意义是当信号量值大于零时表示 可分配资源的个数可分配资源的个数;当信;当信号量值小于零时,其绝对值为号量值小于零时,其绝对值为 等待使用该资源的进程的个数等待使用该资源的进程的个数。51进程流图 p3 s fp5p1p2p4p6p9p10p8 f sp5p6p7 s f53pbpcpa f smain()int sb=0;*表示pb进程能否开始执行*int sc=0;*表示pc进程能否开始执行*cobegin pa();pb();pc();coend pa()pb()pc()p(sb);p(sc);v(sb);v(sc);你可以用以上的算法解决你的你可以用以上的算法解决你的程序之间的同步与互斥的关系程序之间的同步与互斥的关系

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|