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

正文內(nèi)容

操作系統(tǒng)算法設(shè)計-操作系統(tǒng)課程設(shè)計(編輯修改稿)

2025-07-13 06:18 本頁面
 

【文章內(nèi)容簡介】 r,pnum,systime)。 } //簡單輪轉(zhuǎn)法調(diào)度算法 .c include include include define MAX 24 23 struct pcb//建立進(jìn)程控制塊 { char pname[10]。 int reachtime。 int needtime。 int usecputime。 char status。 }。 typedef struct pcb PCB。 void inputpcb (PCB pcb[],int *n)//用戶輸入進(jìn)程信息 { int i。 int num。 printf(\n 請輸入進(jìn)程個數(shù) )。 scanf(%d,amp。num)。 for(i=0。inum。i++) { printf(\n 請輸入第 %d 個進(jìn)程的名稱 :,i+1)。 scanf(%s,amp。pcb[i].pname)。 printf(\n 請輸入第 %d 個進(jìn)程的提交時間 :,i+1)。 scanf(%d,amp。pcb[i].reachtime)。 printf(\n 請輸入第 %d 個進(jìn)程的運行時間 :,i+1)。 scanf(%d,amp。pcb[i].needtime)。 pcb[i].usecputime=0。 pcb[i].status=39。r39。 } *n=num。 } void fcfspcb(PCB pcb[],int n)//對用戶輸入的進(jìn)程按 FCFS 排序 { int i,j。 PCB pcbtemp。 for(i=0。in1。i++) { for(j=i+1。jn。j++) 24 { if(pcb[i].reachtimepcb[j].reachtime) { pcbtemp=pcb[i]。 pcb[i]=pcb[j]。 pcb[j]=pcbtemp。 } } } } void printpcb(PCB pcb[],int n)//輸出用戶輸入的進(jìn)程 { int i。 printf(\n 進(jìn)程名 到達(dá)時間 需要運行 時間 )。 for(i=0。in。i++) { printf(\n %s %d %d,pcb[i].pname,pcb[i].reachtime,pcb[i].needtime)。 } printf(\n)。 } void printrpcb(PCB pcb[],int n)//輸出就緒隊列中的進(jìn)程 { int i。 printf(\n 進(jìn)程名 到達(dá)時間 需要運行時間 已用 CPU 時間 進(jìn)程狀態(tài) )。 for(i=0。in。i++) { if(pcb[i].status==39。r39。) printf(\n %s %d %d %d %c,pcb[i].pname,pcb[i].reachtime,pcb[i].needtime,pcb[i].usecputime,pcb[i].status)。 } printf(\n)。 25 } void printRpcb(PCB pcb[],int n)//輸出正在運行的進(jìn)程 { int i。 printf(\n 進(jìn)程名 到達(dá)時間 需要運行時間 已用 CPU 時間 進(jìn)程狀態(tài) )。 for(i=0。in。i++) { if(pcb[i].status==39。R39。) printf(\n %s %d %d %d %c,pcb[i].pname,pcb[i].reachtime,pcb[i].needtime,pcb[i].usecputime,pcb[i].status)。 } printf(\n)。 } void printFpcb(PCB pcb[],int n)//輸出已完成的進(jìn)程 { int i。 printf(\n 進(jìn)程名 到達(dá)時間 需要運行時間 已用 CPU 時間 進(jìn)程狀態(tài) )。 for(i=0。in。i++) { if(pcb[i].status==39。F39。) printf(\n %s %d %d %d %c,pcb[i].pname,pcb[i].reachtime,pcb[i].needtime,pcb[i].usecputime,pcb[i].status)。 } printf(\n)。 } void simTSC(PCB pcb[],int n) { int i=0。 int j。 PCB pcbtemp。 printf(\n 按先來先服務(wù)排序,就緒隊列中的進(jìn)程 :)。 26 fcfspcb(pcb,n)。 getch()。 while(pcb[i].needtimepcb[i].usecputimeamp。amp。in) { pcb[i].status=39。R39。 printf(\n 按簡單時間片輪轉(zhuǎn)發(fā)對進(jìn)程進(jìn)行調(diào)度,正在運行的進(jìn)程為 :)。 pcb[i].needtime++。 printRpcb(pcb,n)。 getch()。 if(pcb[i].needtime==pcb[i].usecputime) { pcb[i].status=39。F39。 printf(\n 此 時 刻 , 進(jìn) 程 %s 已 經(jīng) 完 成 , 進(jìn) 程 %s 被撤銷 !\n,pcb[i].pname,pcb[i].pname)。 getch()。 i++。 } else { pcb[i].status=39。r39。 pcbtemp=pcb[i]。 for(j=i。jn1。j++) { pcb[j]=pcb[j+1]。 } pcb[j]=pcbtemp。 } printf(\n 本次調(diào)度完成 !準(zhǔn)備進(jìn)行下一次調(diào)度 .\n)。 getch()。 printf(\n 就緒隊列中的進(jìn)程為 :)。 printrpcb(pcb,n)。 getch()。 } printf(\n 就緒隊列中已經(jīng)沒有進(jìn)程,致辭,所有的進(jìn)程已經(jīng)完成 )。 getch()。 27 printf(\n 完成信息如下 :)。 printFpcb(pcb,n)。 getch()。 printf(\n\n 進(jìn)程調(diào)度完畢 !請按任意鍵退出 !)。 } void main() { PCB pcbr[MAX]。 int pnum=0。 printf(\t\t\t\t 進(jìn)程調(diào)度模擬演示程序 )。 inputpcb(pcbr,amp。pnum)。 printf(\n 用戶輸入的原始程序信息為 :)。 printpcb(pcbr,pnum)。 simTSC(pcbr,pnum)。 } //多級反饋隊列調(diào)度算法 .c include include include define MAX 24 struct pcb//建立進(jìn)程控制塊 { char pname[10]。 int priority。 int reachtime。 int needtime。 int usecputime。 char status。 }。 typedef struct pcb PCB。 void inputpcb(PCB pcb[],int *n)//用戶輸入進(jìn)程信息 { int i。 28 int num。 printf(\n 請輸入進(jìn)程個數(shù) )。 scanf(%d,amp。num)。 for(i=0。inum。i++) { printf(\n 請輸入第 %d 個進(jìn)程的名稱 :,i+1)。 scanf(%s,pcb[i].pname)。 printf(\n 請輸入第 %d 個進(jìn)程的優(yōu)先級 :,i+1)。 scanf(%d,amp。pcb[i].priority)。 printf(\n 進(jìn)程的默認(rèn)到達(dá)時間為 O.\n)。 printf(\n 請輸入第 %d 個進(jìn)程的運行時間 :,i+1)。 scanf(%d,amp。pcb[i].needtime)。 pcb[i].reachtime=0。 pcb[i].usecputime=0。 pcb[i].status=39。r39。 } *n=num。 } void paixupcb(PCB pcb[],int n)//對用戶輸入的進(jìn)程按優(yōu)先級排序 { int i,j。 PCB pcbtemp。 for(i=0。in1。i++) { for(j=i+1。jn。j++) { if(pcb[i].prioritypcb[j].priority) { pcbtemp=pcb[i]。 pcb[i]=pcb[j]。 pcb[j]=pcbtemp。 } } } } 29 void printpcb(PCB pcb[],int n)//輸出就緒隊列中的進(jìn)程 { int i。 printf(\n 進(jìn)程名 優(yōu)先級 到達(dá)時間 需要運行時間 已用 CPU 時間 進(jìn)程狀態(tài) )。 for(i=0。in。i++) { if(pcb[i].status!=39。F39。) printf(\n %s %d %d %d %d %c,pcb[i].pname,pcb[i].priority,pcb[i].reachtime,pcb[i].needtime,pcb[i].usecputime,pcb[i].status)。 } printf(\n)。 } void printRpcb(PCB pcb[],int n)//輸出正在運行的進(jìn)程 { int i。 printf(\n 進(jìn)程名 優(yōu)先級 到達(dá)時間 需要運行時間 已用 CPU 時間 進(jìn)程狀態(tài) )。 for(i=0。in。i++) { if(pcb[i].status==39。R39。) printf(\n %s %d %d %d %d %c,pcb[i].pname,pcb[i].priority,pcb[i].reachtime,pcb[i].needtime,pcb[i].usecputime,pcb[i].status)。 } printf(\n)。 } void printFpcb(PCB pcb[],int n)//輸出已完成的進(jìn)程 { int i。 printf(\n 進(jìn)程名 優(yōu)先級 到達(dá) 時間 需要運行時間 已用 CPU 時間 進(jìn)程狀態(tài) )。 for(i=0。in。i++) { if(pcb[i].status==39。F39。) 30 printf(\n %s %d %d %d %d %c,pcb[i].pname,pcb[i].priority,pcb[i].reachtime,pcb[i].needtime,pcb[i].usecputime,pcb[i].status)。 } printf(\n)。 } void staPRI(PCB pcb[],int n,int times)//靜態(tài)優(yōu)先級算法 { int i=0。 printf(\n 當(dāng)前的系統(tǒng)時間為 :%d\n,times)。 getch()。 printf(\n 按優(yōu)先級排序,到達(dá)就緒隊列中的進(jìn)程為: )。 paixupcb(pcb,n)。 getch()。 for(i=0。in。i++) { while(pcb[i].needtimepcb[i].usecputime) {
點擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1