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

正文內(nèi)容

操作系統(tǒng)課設(shè)報(bào)告-wenkub

2023-04-07 08:34:33 本頁面
 

【正文】 并刪除該進(jìn)程 } qnext=pnext。 while(pid!=progamp。 } if(pnext){ qnext=pnext。){ while(pid!=progamp。 pnext=block_endnext。amp。 p=ready_qnext。 } block_end=q。 插到就緒隊(duì)列尾部 ready_endnext=t。R39。 ready_end=p。 }}//進(jìn)程調(diào)入或調(diào)出就緒隊(duì)列函數(shù) void ready_or_block(pcb_link ready_q,pcb_link block_q,int prog,pcb pcb[]){ pcb_link p,q,ready_end,block_end,t。 while(p){ pblocktime=1。R39。 if(running_pstartblock0) running_pstartblock=1。 //就緒隊(duì)列中其他進(jìn)程priority+1 p=pnext。amp。 } p=pnext。 int prog,max。pcb[0]。i++) /* pcb[i].next=amp。) c=getchar()。 while(c==39。 printf(STATE )。iN。pcb[i].startblock)。 printf(STARTBLOCK )。iN。pcb[i].cputime)。 printf(CUPTIME )。iN。 printf(%8d,i)。 printf(ID )。 char c。 //進(jìn)程阻塞到恢復(fù)就緒時間 char state。 //進(jìn)程優(yōu)先權(quán) int cputime。2 設(shè)計(jì)要求(1)用C語言來實(shí)現(xiàn)對N個進(jìn)程采用動態(tài)優(yōu)先算法的進(jìn)程調(diào)度;(2)每個用來標(biāo)識進(jìn)程的進(jìn)程控制塊 PCB用結(jié)構(gòu)來描述,包括以下字段:l 進(jìn)程標(biāo)識符idl 進(jìn)程優(yōu)先數(shù)priority,并規(guī)定優(yōu)先數(shù)越大的進(jìn)程,其優(yōu)先權(quán)越高;l 進(jìn)程已占用的CPU時間cputime ;l 進(jìn)程還需占用的CPU時間alltime,當(dāng)進(jìn)程運(yùn)行完畢時,alltime變?yōu)?;l 進(jìn)程的阻塞時間startblock,表示當(dāng)進(jìn)程再運(yùn)行startblock個時間片后,進(jìn)程將進(jìn)入阻塞狀態(tài);l 進(jìn)程被阻塞的時間blocktime,表示已阻塞的進(jìn)程再等待blocktime個時間片后,將轉(zhuǎn)換成就緒態(tài)l 進(jìn)程狀態(tài)state;l 隊(duì)列指針next,用來將PCB排成隊(duì)列(3)優(yōu)先數(shù)改變的原則:l 進(jìn)程在就緒隊(duì)列中呆一個時間片,優(yōu)先數(shù)增加1l 進(jìn)程每運(yùn)行一個時間片,優(yōu)先數(shù)減3。通過實(shí)際操作系統(tǒng)的分析設(shè)計(jì)、編程調(diào)試,掌握系統(tǒng)軟件的分析方法和工程設(shè)計(jì)方法。在進(jìn)行了專業(yè)基礎(chǔ)課程和操作系統(tǒng)原理課程學(xué)習(xí)的基礎(chǔ)上,設(shè)計(jì)或分析一個實(shí)際的操作系統(tǒng)旨在加深對計(jì)算機(jī)硬件結(jié)構(gòu)和系統(tǒng)軟件的認(rèn)識,初步掌握操作系統(tǒng)組成模塊和應(yīng)用接口的使用方法,提高進(jìn)行工程設(shè)計(jì)和系統(tǒng)分析的能力,為畢業(yè)設(shè)計(jì)及以后的工程實(shí)踐打下良好的基礎(chǔ)。通過課程設(shè)計(jì), 加深對操作系統(tǒng)各資源管理模塊的理解,掌握操作系統(tǒng)的基本原理及功能, 具有初步分析實(shí)際操作系統(tǒng)、設(shè)計(jì)、構(gòu)造和開發(fā)現(xiàn)代操作系統(tǒng)的基本能力鞏固和加深對操作系統(tǒng)原理的理解,提高綜合運(yùn)用本課程所學(xué)知識的能力。能夠按要求編寫課程設(shè)計(jì)報(bào)告書,能正確闡述設(shè)計(jì)和實(shí)驗(yàn)結(jié)果、正確繪制系統(tǒng)和程序框圖。(4)假設(shè)在調(diào)度前,系統(tǒng)中有5個進(jìn)程,它們的初始狀態(tài)如下:ID01234PRIORITY93830290CPUTIME00000ALLTIME33634STARTBLOCK21111BLOCKTIME30000STATEREADYREADYREADYREADYREADY(5)為了清楚地觀察諸進(jìn)程的調(diào)度過程,程序應(yīng)將每個時間片內(nèi)的進(jìn)程的情況顯示出來,參照的具體格式如下:RUNNING PROG: iREADY_QUEUE:id1id2BLOCK_QUEUE:id3id4==================================ID 0 1 2 3 4PRIORITY P0 P1 P2 P3 P4CPUTIME C0 C1 C2 C3 C4ALLTIME A0 A1 A2 A3 A4STARTBLOCK T0 T1 T2 T3 T4BLOCKTIME B0 B1 B2 B3 B4STATE S0 S1 S2 S3 S43 使用動態(tài)優(yōu)先權(quán)的進(jìn)程調(diào)度算法的模擬(1) :NYNYNY開始創(chuàng)建N個進(jìn)程并初始化pcb[N]根據(jù)進(jìn)程狀態(tài)初始化阻塞隊(duì)列和就緒隊(duì)列在就緒隊(duì)列中找出優(yōu)先權(quán)最大的進(jìn)程運(yùn)行進(jìn)程運(yùn)行完畢即alltime=0刪除該進(jìn)程運(yùn)行一個時間片就緒隊(duì)列中其他進(jìn)程優(yōu)先數(shù)prority+1進(jìn)程運(yùn)行完畢優(yōu)先數(shù)priority3結(jié)束阻塞就緒轉(zhuǎn)換進(jìn)程調(diào)入就緒隊(duì)列或阻塞隊(duì)列 動態(tài)優(yōu)先權(quán)進(jìn)程調(diào)度流程圖(2) 實(shí)驗(yàn)效果圖:1): 初始化進(jìn)程狀態(tài)2): 運(yùn)行結(jié)果(3)實(shí)驗(yàn)關(guān)鍵代碼:define N 5 //默認(rèn)進(jìn)程數(shù) int count。 //占用cpu時間 int alltime。 //進(jìn)程狀態(tài) pcb* next。 pcb_link plink=(pcb_link)malloc(sizeof(pcb))。 //初始化進(jìn)程id for(i=0。 } printf(\n\n)。i++) scanf(%d,amp。 //初始化進(jìn)程占用cpu時間 for(i=0。 printf(\n)。i++) scanf(%d,amp。 //初始化進(jìn)程開始阻塞時間 for(i=0。 printf(\n)。i++) scanf(%d,amp。 //初始化進(jìn)程狀態(tài) for(i=0。 39。 pcb[i].state=c。pcb[i+1]。 就緒隊(duì)列 return plink。 max=prog=INT_MIN。 } return prog。progN){ //判斷是否有進(jìn)程運(yùn)行 p=ready_qnext。 } running_ppriority=3。 改變運(yùn)行進(jìn)程 if(running_palltime==0) 的信息和狀態(tài) running_pstate=39。 else running_pstate=39。 if(pblocktime==0) //判斷阻塞隊(duì)列中進(jìn)程狀態(tài)是否變成就緒狀態(tài) pstate=39。 ready_end=block_end=t=NULL。 //就緒隊(duì)列尾指針 q=block_q。){ t=p。 */ ready_end=t。 if(prog1amp。 if(pcb[prog].state==39。p){ q=p。 block_endnext=p。amp。 pnext=ready_endnext。amp。 */ } }}int main(void){ pcb pcb[N]。 //進(jìn)程計(jì)數(shù)器初始為0 block=(pcb_link)malloc(sizeof(pcb))。 while(countN){ program=maxPriority(ready)。 }}三 動態(tài)分區(qū)分配方式模擬1 設(shè)計(jì)目的了解動態(tài)分區(qū)分配方式中使用的數(shù)據(jù)結(jié)構(gòu)和分配算法并進(jìn)一步加深對動態(tài)分區(qū)存儲管理方式及其實(shí)現(xiàn)過程的理解。3 模擬算法的實(shí)現(xiàn)NY開始初始化空閑分區(qū)初始化各任務(wù)選擇分區(qū)模式,輸入F首次適應(yīng)算法分區(qū)最佳首次適應(yīng)算法分區(qū)初始化各任務(wù)結(jié)束: 動態(tài)分區(qū)分配流程圖 首次適應(yīng)算法首次適應(yīng)算法(Firstfit):當(dāng)要分配內(nèi)存空間時,就查表,在各空閑區(qū)中查找滿足大小要求的可用塊。ifree_block。 } if(i==free_block) printf(任務(wù)%d分配空間失敗\n,task_id)。 //空間塊空間增加 tsk[task_id].workplace=1。算法代碼如下://沒分配完一個分區(qū)或進(jìn)程釋放空間,對分區(qū)鏈表進(jìn)行排序void sort(space_link slink){ space_link tp,t,p,q。 slinknext=tnext。 while(t){ q=tp。 } else break。 插入有序鏈表 t=slinknext。 //分區(qū)塊id int size。 //任務(wù)id int size。 space_link sh。 for(i=0。 //初始分區(qū)塊大小 else free[i].size=free_spacesum。ifree_block1。 shnext=amp。 tsksize=size。 space_link space_head。 printf(親輸入分區(qū)方式,F(xiàn)用首次適應(yīng)算法分配,B用最佳適應(yīng)算法分配\n\n)。 printf(\n\n)。tsk[0],0,130)。tsk[1],1,60)。tsk[2],2,100)。 //釋放任務(wù)1空間 print(space_head)。 print(space_head)。 print(space_head)。 print(space_head)。 print(space_head)。 print(space_head)。B39。 sort(space_head)。 alloc(spa,tsk,1)。tsk[2],2,100)。 fre(spa,tsk,1)。tsk[3],3,200)。 fre(spa,tsk,2)。 sort(space_head)。 alloc(spa,tsk,4)。tsk[5],5,60)。 init_task(amp。 print(space_head)。 }}: 運(yùn)行結(jié)果四 請求調(diào)頁存儲管理方式模擬1 設(shè)計(jì)目的熟練掌握操作系統(tǒng)中請求調(diào)頁方式的存儲管理算法。3) 置換算法請分別采用OPT、FIFO和LRU;4) 作業(yè)中的指令順序按如下原則生成:l 50%的指令順序執(zhí)行;l 25%的指令跳轉(zhuǎn)到當(dāng)前地址前(目標(biāo)地址隨機(jī)生成);l 25%的指令跳轉(zhuǎn)到當(dāng)前地址后(目標(biāo)地址隨機(jī)生成);具體的實(shí)施方法是:① 在[0,319]的指令地址之間隨機(jī)選取一條起始執(zhí)行指令,其序號為m;② 順序執(zhí)行下一條指令,即序號為m+1的指令;③ 通過隨機(jī)數(shù)跳轉(zhuǎn)到前地址部分[0,m1]中的某條指令處,其序號為;④ 順序執(zhí)行下一條指令,其地址為+1的指令;⑤ 通過隨機(jī)數(shù)跳轉(zhuǎn)到后地址部分[+2,319]中的某條指令處,其序號為; ⑥ 順序執(zhí)行下一跳指令,即序號為+1的指令;⑦ 重復(fù)跳轉(zhuǎn)到前地址部分、順序執(zhí)行、跳轉(zhuǎn)到后地址部分、順序執(zhí)行的過程,直至執(zhí)行320條指令。j320。 } //隨機(jī)生成320條指令 m1=random_order(0,319)。 a[i][0]=p。 //指令計(jì)數(shù)器加1 if(m1+1320){ p=belong_page(m1+1)。 //指令所在頁號存入a[i][0] a[i][2]=m1+1。 //指令計(jì)數(shù)器加1 } while(count_order320){ if(m111){ m2=random_o
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1