有一南北向的单行车道,在车道A、B两端以外一段距离处有减速标志和自动计数系统,A、B两处设有信号灯,信号灯的管理要求如下:绿灯行,红灯停,A、B两端红绿灯同时变换,一方红变绿时另一方绿变红。绿灯保持到同一方向进入的车辆全部驶入AB段;当AB之间无车辆行驶时,允许到达A端(或B端)的车辆驶入AB段,但只准某一方的车辆进入;一方最后一辆车进入AB段后,双向亮红灯让车辆全部通过(假设2分钟),然后让已在等待的任何一方车辆驶入。试用PV操作管理AB路段车辆的行驶。

欢迎免费使用小程序搜题/刷题/查看解析,提升学历,成考自考报名,论文代写、论文查重请加客服微信skr-web

有一南北向的单行车道,在车道A、B两端以外一段距离处有减速标志和自动计数系统,A、B两处设有信号灯,信号灯的管理要求如下:绿灯行,红灯停,A、B两端红绿灯同时变换,一方红变绿时另一方绿变红。绿灯保持到同一方向进入的车辆全部驶入AB段;当AB之间无车辆行驶时,允许到达A端(或B端)的车辆驶入AB段,但只准某一方的车辆进入;一方最后一辆车进入AB段后,双向亮红灯让车辆全部通过(假设2分钟),然后让已在等待的任何一方车辆驶入。试用PV操作管理AB路段车辆的行驶。

分析:本题可参考读者写者问题,相当于两组读者使用一个共享文件的互斥问题:对共享资源AB路段设一个信号s,对A、B两端的共享计数器cA和cB应设两个信号量sA和SB,所设计的程序段如下: BEGIN s,sa,ab: semaphore; ca,cb:integer: s:=; sa:=; sb:=: Cobegin Process carai: {(I=, 2,......} Beginsa):ca:ca+1:ifca= then)(sa):使信号灯A端绿,B端红车辆从A端驶入AB段p(sa):ca=ca-1ifca= then begin两端都壳红灯2分钟v(s) end end Process carbj: =1, 2,...... Begin(sb)cbcb+1:ifcb= then:v(s使信号灯B端绿,A端红;车辆从B端驶入AB段p(sb);cb:cb-1:ifch=0 then begin瑞都壳红灯2分钟}v(s)nd: end coendend

访客
邮箱
网址

通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作


  • 自动写文案
  • 自动写小说
  • 马上扫码让Ai帮你完成工作
通用的占位符缩略图

人工智能机器人,扫码免费帮你完成工作

  • 自动写论文
  • 自动写软件
  • 我不是人,但是我比人更聪明,我是强大的Ai
Top