作業系統幾個PV操作演算法模型

2022-02-12 22:26:07 字數 1180 閱讀 3448

考前抱佛腳t-t這幾題感覺比那幾個典型的好理解多了。。看著課本上那幾道例題越看越懵。。是我有問題還是書上寫著有問題。。下面三個是偶自己寫的不懂對不對。。。假裝自己寫的都對吧xd來不及了

問題描述:假設某宿舍樓有一共用浴室,學校頒布規定:當有乙個女生正在使用浴室,則其他女生可以進入,但是男生不行,反之亦然。在每個浴室門上有乙個滑動指示符號,表示當前處於以下三種可能狀態之一:

(1)空 (2)有女生 (3)有男生

semaphore mutex = 1,mutex_man = 1,mutex_woman = 1;

int man_count = 0,woman_count = 0;

void boy()

v(mutex_man);

/* 跟其他男孩子搶著進浴室 */

洗白白ing

/* 2.洗完澡走人 */

p(mutex);

if(man_count==0)

v(mutex);

/* 洗完澡走人 */

}void girl()

v(mutex_woman);

/* 跟其他女孩子搶著進浴室 */

洗白白ing

/* 2.洗完澡走人 */

p(mutex);

if(woman_count==0)

v(mutex);

/* 洗完澡走人 */

}

問題描述:有乙隻鐵籠子,每次只能放入乙隻動物,獵手向籠子裡放入老虎,農民向籠子裡放入;動物園等待取籠子裡的老虎,飯店等待取籠子裡的豬。現請用wait和signal操作寫出能同步執行的程式。

有一閱覽室,共有100個座位。讀者進入時必須先在一種登記表上登記,該錶為每一座位列乙個表目,包括座號和讀者姓名。讀者離開時要登出掉登記內容。

semaphore mutex = 1;

semaphore s = 100;

void readers()

}

作業系統 PV操作

1.pv原語的含義 p操作和v操作是不可中斷的程式段,稱為原語。pv原語及訊號量的概念都是由荷蘭科學家e.w.dijkstra提出的,其基本思路是用一種新的變數型別 semaphore 來記錄當前可用資源的數量。訊號量sem是一整數,sem大於等於零時代表可供併發程序使用的資源實體數,但sem小於零...

作業系統 PV操作

分析 進入書店p sn 與離開書店v sn 操作對應題目中的 該書店最多允許n個購書者進入 因為假如進入書店的人數超過了最大的限制,p操作會被阻塞,知道v操作執行後釋放空間。接下來分析購書與收費的流程,現實生活中購書付款是顧客提出繳費的要求後,收銀員才能進行收費。所以收銀員預設是處於待機狀態即阻塞狀...

作業系統之PV操作

在計算機作業系統中,pv操作是程序管理中的難點。首先應弄清pv操作的含義 pv操作由p操作原語和v操作原語組成 原語是不可中斷的過程 對訊號量進行操作,具體定義如下 p s 將訊號量s的值減1,即s s 1 如果s 0,則該程序繼續執行 否則該程序置為等待狀態,排入等待佇列。v s 將訊號量s的值加...