停车场与记录型信号量_第1页
停车场与记录型信号量_第2页
停车场与记录型信号量_第3页
停车场与记录型信号量_第4页
停车场与记录型信号量_第5页
已阅读5页,还剩14页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、记录型信号量记录型信号量信号量机制信号量机制进程同步机制:协调进程间执行次序进程同步机制:协调进程间执行次序信号量机制:使用信号量及有关的信号量机制:使用信号量及有关的P、V操作原语来实操作原语来实现进程的互斥与同步。是一种卓有成效的进程同步机制现进程的互斥与同步。是一种卓有成效的进程同步机制信号量:信号量:semaphore,控制进程的执行,控制进程的执行1 1、整型信号量机制、整型信号量机制2 2、记录型信号量机制、记录型信号量机制3 3、信号量集机制、信号量集机制记录型信号量记录型信号量l 数据结构:数据结构: type semaphore=record value: integer;

2、L: list of process; end 初值为资源信号初值为资源信号量的数目。量的数目。链表链表L用于链接所用于链接所有等待的进程。有等待的进程。等待等待系统系统资源资源进程进程信号量信号量整型变量整型变量场景模拟场景模拟L2. signal操作操作3. S.value值的含义值的含义1. wait操作操作wait操作和操作和signal操作操作wait操作:操作:Procedure wait(S) var S: semaphore; begin S.value:=S.value( )1; if S.value( )0 then block(S.L) ; end signal操作:操作

3、:Procedure signal(S) var S: semaphore; begin S.value:=S.value( )1; if S.value( )0 then wakeup(S.L) ; end wait操作:申请一个单位资源操作:申请一个单位资源signal操作:释放一个单位资源操作:释放一个单位资源Procedure wait(S) var S: semaphore; begin S.value:=S.value( )1; if S.value( )0 block(S.L) ; end 问题问题1. wait操作操作S.value=S.value:=S.value= S.va

4、lue=S.value=S.value=L等待等待wait操作操作3S.value-1= 210-1-2Procedure wait(S) var S: semaphore; begin S.value:=S.value( )1; if S.value( )0 block(S.L) ; end wait操作操作Procedure signal(S) var S: semaphore; begin S.value:=S.value( )1; if S.value( )0 then wakeup(S.L) ; end +问题问题2.signal操作操作S.value= S.value:=S.val

5、ue=S.value=S.value=S.value=L等待等待signal操作操作-2S.value+1=-1 0123Procedure signal(S) var S: semaphore; begin S.value:=S.value(+ )1; if S.value( 0:系统中可利用的资源数量系统中可利用的资源数量S.value数值含义数值含义S.value=0L等待 S.value=0:资源恰好分配完毕资源恰好分配完毕S.value数值含义数值含义S.value= -1L等待等待S.value= -2L等待等待S.value=0,则该进程,则该进程 ;若若S0,则该进程,则该进程 。3.每执行一次每执行一次signal操作,信号量的数值操作,信号量的数值S加加1。若若 ,则该进程继续执行;,则该进程继续执行;否则,从对应的否则,从对应的 队列中移出一个进程队列中移出一个进程并并 状态赋予该进程。状态赋予该进程。4.信号量的物理意义是当信号量值大于零时表示;当信号量信号量的物理意义是当信号量值大于零时表示;当信号量值小于零时,其绝对值为。值小于零时,其绝对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论