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

正文內(nèi)容

讀者寫者問題-操作系統(tǒng)實驗報告-wenkub

2023-04-14 00:32:53 本頁面
 

【正文】 函數(shù): ? 當(dāng)有寫者在占用 buffer 時,讀者應(yīng)該等待, 直到寫者不再使用該 buffer。 ? 當(dāng)有其他讀者在占用 buffer 時,讀者可對 buffer 進(jìn)行讀取操作。 ? 當(dāng)有其他寫者占用 buffer 時,該寫者應(yīng)該等待,直到占用buffer 的寫者退出為止。 ? 可根據(jù)用戶輸入創(chuàng)建讀者或?qū)懻哌M(jìn)程 (線程 )。//讀進(jìn)程號 int write_id=0。}。 void RFwakeup()。 struct wqueue{//寫者等待隊列 int writers[200]。 = 0。i++){ [i] = 0。 if(rcount == 0){//當(dāng)前沒有讀進(jìn)程在讀 可能有寫進(jìn)程在寫 可能CPU 空閑 if(w==1) {//如果 CPU 空閑,讀者拿到 CPU w。){ sign = 0。 } else{ [++]=read_id。 for(i = 0。){ printf(\n)。 [++]=read_id。i++){ if(temp[i] == 39。 } printf(%c,temp[i])。//將寫者進(jìn)程加入等待隊列 wcount++。//將寫者進(jìn)程加入等待隊列 wcount++。 scanf(%s,temp)。 m = 。 printf(寫者已經(jīng)寫完 \n)。i++){//index 為當(dāng)前讀者隊列中的等待進(jìn)程數(shù) if([i]!=0){ reader_wait=true。j 300。 break。 。 printf(等待的寫者 %d正在寫 \n 請輸入要寫入 的內(nèi)容 ,[i])。 break。 if(sign == 0){ printf(緩沖區(qū)空 等待寫者 \n)。i=。 [i]=0。 int j = 0。 if(rcount == 0){//當(dāng)前無讀進(jìn)程,是寫者在寫 》停止運行寫進(jìn)程 bool writer_wait=false。//temp 中已經(jīng)有內(nèi)容 要置 1 for(i=0。 w = 0。 break。 printf(等待的讀者 %d正在讀 \n,[i])。\039。 }//if printf(%c,temp[j])。 }//if else{//rcount != 0 讀者正在讀, stop 讀 此時若有等待必為寫者 rcount=0。i=。 [i]=0。 printf( 1創(chuàng)建讀者進(jìn)程 \n 2創(chuàng)建寫者進(jìn)程 \n 3結(jié)束當(dāng)前執(zhí)行的進(jìn)程 \n 4退出程序 \n)。 printf( )。139。239。339。439。 } void menu2(){ char i。 printf(*******************************************\n)。 switch(i){ case 39。 case 39。 case 39。 case 39。 } }while(true)。choice)。amp。 } } } 實驗流程圖: N Y 開始 讀者優(yōu)先 寫者優(yōu)先 讀操作 寫操作 是否有讀者在讀 進(jìn)行讀操作 Y CPU 是否空閑 緩沖區(qū)是否為空 有寫者 讀者入隊 N Y 入讀者等待隊列 調(diào)用讀者優(yōu)先喚醒 讀操作 N 是否有讀者在讀 有讀者 寫者入隊 Y N Cpu 是否空閑 進(jìn)行寫操作 有寫者,寫操作入隊 Y N
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1