操作系统,独木桥问题,PV操作
生活随笔
收集整理的這篇文章主要介紹了
操作系统,独木桥问题,PV操作
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
問題
獨木橋問題1:東西向汽車過獨木橋,為了保證安全,只要橋上無車,車過橋,待一方的汽車全部過完后,另一方的汽車才允許過橋。請用信號量和PV操作來寫出汽車過獨木橋問題的同步算法。
思路
首先對于東西兩側(cè)的車輛而言,橋是一個互斥資源,而對東西兩側(cè)各自而言,每輛車上橋是同步關系,東西兩側(cè)的車輛在搶到這互斥資源后只有最后一輛車通過了獨木橋才釋放。
semaphore wait,mutex1,mutex2;mutex1=1;//東側(cè)車輛的互斥信號量mutex2=1;//西側(cè)車輛的互斥信號量wait=1;//互斥信號量,表示獨木橋的數(shù)量int count1,count2;count1=0;//東側(cè)車輛數(shù)count2=0;//西側(cè)車輛數(shù) cobeginprocess P 東(){P(mutex1);//封鎖,防止多個進程同時改變count的值,導致修改被覆蓋count1++;if(count1==1)//第一輛車上橋P(wait);V(mutex1);/*過獨木橋*/P(mutex1);//與上面count++同理count1--;if(count1==0)//東側(cè)車輛全部下橋V(wait);V(mutex1);}process P 西(){P(mutex2);count2++;if(count2==1)//第一輛車上橋P(wait);V(mutex2);/*過獨木橋*/P(mutex2);count2--;if(count2==0)//西側(cè)車輛全部下橋V(wait);V(mutex2);} coend總結
以上是生活随笔為你收集整理的操作系统,独木桥问题,PV操作的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 加载磊科336usb无线网卡驱动到s3c
- 下一篇: RJ11