1 / 71
文档名称:

操作系统.ppt

格式:ppt   大小:544KB   页数:71页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

操作系统.ppt

上传人:xxj16588 2016/8/29 文件大小:544 KB

下载得到文件列表

操作系统.ppt

相关文档

文档介绍

文档介绍:进程同步 进程同步的基本概念 信号量机制 信号量的应用 管程机制 P 1P 2P 3P 4 I 1I 2I 3I 4C 1C 2C 3C 4 进程同步的基本概念( 1) ? 1. 两种形式的制约关系在多道程序环境下,当程序并发执行时,可能存在以下两种形式的制约关系: ?间接制约关系: 竞争,互斥?直接制约关系: 合作,同步互斥是特殊的同步,进程竞争资源首先解决“互斥”问题打印 1、打印 2计算、打印¥ 5000 银行卡存折¥ 1000 ¥ 2000 6000 7000 ?原因:两个进程同时修改同一数据,没有对进程进行有效控制生产者-消费者问题 Var n, integer; 缓冲区的个数 Type item= …; var buffer:array[0,1, …,n-1] of item; in, out: 0,1, …, n-1; counter: 0,1, …,n; 可使用产品的个数 in,out 生产者-消费者问题 producer: repeat … produce an item in nextp; … while counter=n do no-op; buffer[in]:=nextp; in:=(in+1)mod n; counter:= counter+1; until false; consumer: repeat while counter=0 do no-op; nextc:=buffer[out]; out:=(out+1) mod n; counter:= counter-1; consumer the item in nextc; until false; 生产者-消费者问题 producer: repeat … produce an item in nextp; … while counter=n do no-op; buffer[in]:=nextp; in:=(in+1)mod n; counter:= counter+1; until false; consumer: repeat while counter=0 do no-op; nextc:=buffer[out]; out:=(out+1) mod n; counter:= counter-1; consumer the item in nextc; until false; register1:=counter; register1 :=register1+1; counter :=register1; register2:=counter; register2 :=register2-1; counter :=register2; 生产者-消费者问题 counter :=register1; …… register2:=counter; register2 :=register2-1; counter :=register2; 发生切换…… register1:=counter; register1 :=register1+1; Consumer 进程 Producer 进程设 counter 当前值为 5 进程同步的基本概念( 2) ? :在系统中每次只能一个进程进行访问的资源,如打印机、磁带机等。?引起不可再现性是因为临界资源没有互斥访问。?临界资源的访问控制是进程同步的基本问题。