freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

進程同步典型例題(操作系統(tǒng))-閱讀頁

2025-06-22 23:06本頁面
  

【正文】 }}void Busman(){ while(1) { 關車門; signal(S1); 售票; wait(S2); 開車門; }}main(){ cobegin{ Driver()。 }}2. 桌子上有一只盤子,盤子中只能放一只水果。用PV操作實現(xiàn)他們之間的同步機制。semaphore S=1,S1=S2=0。 wait(S)。 }}void mother(){ while(1) { 準備橘子。 將橘子放在盤子內(nèi); signal(S2)。 從盤子里拿走蘋果; signal(S)。 }}void son(){ while(1) { wait(S2)。 吃橘子。 mother()。 son()。請用信號量為工具,對ab段實現(xiàn)正確管理以保證行駛安全。設置3個信號量SS2和Sab,分別用于從a點進入的車互斥訪問共享變量ab(用于記錄當前ab段上由a點進入車輛的數(shù)量),從b點進入的車互斥訪問共享變量ba(用于記錄當前ab段上由b點進入車輛的數(shù)量)和a、b點的車輛互斥進入ab段。semaphore S1=1,S2=1,Sab=1。void Pab(){ while(1) { wait(S1)。 ab=ab+1。 車輛從a點駛向b點。 ab=ab1。 signal(S1)。 if(ba==0) wait(Sab)。 signal(S2)。 wait(S2)。 if(ba==0) signal(Sab)。 }}main(){ cobegin{ Pab()。 }}4. 將只讀數(shù)據(jù)的進程稱為“讀者”進程,而寫或修改數(shù)據(jù)的進程稱為“寫者”進程。另外,要保證:一旦有“寫者”等待時,新到達的“讀者”必須等待,直到該“寫者”完成數(shù)據(jù)訪問為止。(第二類讀者寫者問題,信號量解決方法)【答案】為了使寫者優(yōu)先,可在原來的讀優(yōu)先算法的基礎上增加一個互斥信號量s,初值為1,使得當至少有一個寫者準備訪問共享對象時,它可以使后續(xù)的讀者進程等待;整型變量writecount,初值為0,用來對寫者進行計數(shù);互斥信號量wmutex,初值為1,用來實現(xiàn)多個寫者對writecount進行互斥訪問。wait(rmutex)。readcount++。signal(s)。wait(rmutex)。if(readcount==0)signal(mutex)。} }Process writer(){ while(1) {wait(wmutex)。writecount++。wait(mutex)。signal(mutex)。writecount。signal(wmutex)。 writer()。若一個橋墩只能站一個人,過河的人只能沿著橋向前走而不能向后退。但不允許河對岸的兩個人同時過,以防止出現(xiàn)死鎖?!敬鸢浮啃盘柫縮:互斥使用橋,初值為1信號量scount1:對方向1上過河人計數(shù)器count1的互斥使用,初值為1信號量scount2:對方向2上過河人計數(shù)器count2的互斥使用,初值為1信號量scount:代表橋上過河人的計數(shù)信號量,初值為橋墩個數(shù)N變量count1:方向1上過河人計數(shù)器變量count2:方向2上過河人計數(shù)器Semaphore s, scount1, scount2, scount。s=1。 scount2=1。count1=0。void direct1(int i){wait(scount1)。count1++。wait(scount)。wait(scount1)。if(count1==0) signal(s)。}void direct2(int i){wait(scount2)。count2++。wait(scount)。wait(scount2)。if(count2==0) signal(s)。}main(){ cobegin{ direct1(1)。 direct2(1)。 }}有一個倉庫,可以存放A和B兩種產(chǎn)品,但要求:(1)每次只能存入一種產(chǎn)品(A或B);(2)N<A產(chǎn)品數(shù)量-B產(chǎn)品數(shù)量<M。試用同步算法描述產(chǎn)品A與產(chǎn)品B的入庫過程。初始時,sa為M一1,sb為N一1。當往庫中存放入一個B產(chǎn)品時,則允許存入A產(chǎn)品的數(shù)量也增加1。process puta(){ while(1) { 取一個產(chǎn)品; wait(sa)。 將產(chǎn)品入庫; signal(mutex)。} }process putb(){ while(1) { 取一個產(chǎn)品; wait(sb)。 將產(chǎn)品入庫; signal(mutex)。 } }main(){ cobegin{ puta()。}}
點擊復制文檔內(nèi)容
教學教案相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1