版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、昆明理工大學(xué)信息工程與自動(dòng)化學(xué)院學(xué)生實(shí)驗(yàn)報(bào)告( 2010 2011 學(xué)年 第 二 學(xué)期 )課程名稱(chēng):操作系統(tǒng) 開(kāi)課實(shí)驗(yàn)室:計(jì)算機(jī)中心204 2010年04月20日專(zhuān)業(yè)、年級(jí)、班學(xué)號(hào)姓名成績(jī)實(shí)驗(yàn)項(xiàng)目名稱(chēng)進(jìn)程管理指導(dǎo)教師教師評(píng)語(yǔ) 教師簽名: 年 月 日注:報(bào)告內(nèi)容按實(shí)驗(yàn)須知中七點(diǎn)要求進(jìn)行。一、實(shí)驗(yàn)?zāi)康模哼\(yùn)用優(yōu)先權(quán)法和輪轉(zhuǎn)法來(lái)模擬進(jìn)程的控制,掌握進(jìn)程的狀態(tài)轉(zhuǎn)換、進(jìn)程的整個(gè)控制工作。二、實(shí)驗(yàn)原理及基本技術(shù)路線圖(方框原理圖): 實(shí)驗(yàn)原理:用C語(yǔ)言或C+語(yǔ)言開(kāi)發(fā)。需要定義PCB的數(shù)據(jù)結(jié)構(gòu),用鏈表的形式管理進(jìn)程,采用多級(jí)反饋隊(duì)列調(diào)度的算法模擬進(jìn)程的控制。要求有創(chuàng)建、撤銷(xiāo)、調(diào)度、阻塞、喚醒進(jìn)程等功能。輸出當(dāng)
2、前隊(duì)列信息基本技術(shù)路線圖:開(kāi)始輸入進(jìn)程數(shù)n輸入進(jìn)程信息設(shè)置3個(gè)優(yōu)先級(jí)隊(duì)列將不同優(yōu)先級(jí)的進(jìn)程依次插入不同隊(duì)列ChnCh=y或n不打印Ch=y調(diào)用run函數(shù),沒(méi)運(yùn)行過(guò)一次,將優(yōu)先級(jí)降低,插入下一隊(duì)列中,若所需時(shí)間為0,則釋放空間否結(jié)束是結(jié)束若三個(gè)優(yōu)先級(jí)隊(duì)列為空三、所用儀器、材料(設(shè)備名稱(chēng)、型號(hào)、規(guī)格等):VC+ 6.0。四、實(shí)驗(yàn)方法、步驟:源程序:#include stdio.h #include #include #define getpch(type) (type*)malloc(sizeof(type) #define NULL 0 struct pcb /* 定義進(jìn)程控制塊PCB */ c
3、har name10; char state; int super; int ntime; int rtime; int retime;int jsuper;/靜態(tài)優(yōu)先級(jí)struct pcb *link; *ready=NULL,*p; typedef struct pcb PCB; sort() /* 建立對(duì)進(jìn)程進(jìn)行優(yōu)先級(jí)排列函數(shù)*/ PCB *first, *second; int insert=0; if(ready=NULL)|(p-super)(ready-super) /*優(yōu)先級(jí)最大者,插入隊(duì)首*/ p-link=ready; ready=p; else /* 進(jìn)程比較優(yōu)先級(jí),插入
4、適當(dāng)?shù)奈恢弥?/ first=ready; second=first-link; while(second!=NULL) if(p-super)(second-super) /*若插入進(jìn)程比當(dāng)前進(jìn)程優(yōu)先數(shù)大,*/ /*插入到當(dāng)前進(jìn)程前面*/ p-link=second; first-link=p; second=NULL; insert=1; else /* 插入進(jìn)程優(yōu)先數(shù)最低,則插入到隊(duì)尾*/ first=first-link; second=second-link; if(insert=0) first-link=p; input() /* 建立進(jìn)程控制塊函數(shù)*/ int i,num=5;
5、 /有5個(gè)進(jìn)程for(i=0;iname); printf(n 輸入進(jìn)程靜態(tài)優(yōu)先數(shù):); scanf(%d,&p-jsuper);p-retime=i;printf(n 輸入進(jìn)程運(yùn)行時(shí)間:); scanf(%d,&p-ntime); p-super=(p-jsuper-(p-ntime+p-retime)+10;/使優(yōu)先級(jí)不為負(fù)數(shù)printf(n); p-rtime=0;p-state=w; p-link=NULL; sort(); /* 調(diào)用sort函數(shù)*/ int space() int l=0; PCB* pr=ready; while(pr!=NULL) l+; pr=pr-link;
6、 return(l); disp(PCB * pr) /*建立進(jìn)程顯示函數(shù),用于顯示當(dāng)前進(jìn)程*/ printf(n進(jìn)程名t狀態(tài)t動(dòng)態(tài)優(yōu)先級(jí)t靜態(tài)優(yōu)先級(jí)tNeedtimetRuntimetRStimen); /不好打印 就只能將就了 哈printf(|%st,pr-name); printf(|%ct,pr-state); printf(|%dtt,pr-super);printf(|%dtt,pr-jsuper); printf(|%dtt,pr-ntime); printf(|%dt,pr-rtime);printf(|%d,pr-retime); printf(n); check() /*
7、 建立進(jìn)程查看函數(shù) */ PCB* pr; printf(n * 當(dāng)前正在運(yùn)行的進(jìn)程是:%s,p-name); /*顯示當(dāng)前運(yùn)行進(jìn)程*/ disp(p); pr=ready; printf(n *當(dāng)前就緒隊(duì)列狀態(tài)為:n); /*顯示就緒隊(duì)列狀態(tài)*/ while(pr!=NULL) disp(pr); pr=pr-link; destroy() /*建立進(jìn)程撤消函數(shù)(進(jìn)程運(yùn)行結(jié)束,撤消進(jìn)程)*/ printf(n 進(jìn)程 %s 已完成.n,p-name); free(p); running() /* 建立進(jìn)程就緒函數(shù)(進(jìn)程運(yùn)行時(shí)間到,置就緒狀態(tài)*/ (p-rtime)+; if(p-rtime=p
8、-ntime) destroy(); /* 調(diào)用destroy函數(shù)*/ else (p-super)-; p-state=w; sort(); /*調(diào)用sort函數(shù)*/ main() /*主函數(shù)*/ int len,h=0; char ch; input(); len=space(); while(len!=0)&(ready!=NULL) ch=getchar(); h+; printf(n The execute number:%d n,h); p=ready; ready=p-link; p-link=NULL; p-state=R; check(); running(); printf(n 按任一鍵繼續(xù).); ch=getchar(); printf(nn 進(jìn)程已經(jīng)完成.n); ch=getchar(); 五、實(shí)驗(yàn)過(guò)程原始記錄:六、實(shí)驗(yàn)總結(jié): 操作系統(tǒng)是計(jì)算機(jī)系統(tǒng)中必不可少的系統(tǒng)軟件,它是計(jì)算機(jī)系統(tǒng)中各種資源的管理
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 康復(fù)治療技術(shù)模擬考試題與答案
- 機(jī)械租賃發(fā)票合同范例
- 合伙加盟合同范例
- 2025年運(yùn)城貨運(yùn)資格證考試題答案
- 河北省邯鄲市八年級(jí)語(yǔ)文上冊(cè) 第五單元 第18課 蘇州園林教學(xué)實(shí)錄 新人教版
- 2025年海西駕校考試貨運(yùn)從業(yè)資格證考試
- 2025年河南貨運(yùn)從業(yè)資格證考試模擬考試題及答案解析
- 水產(chǎn)種苗供應(yīng)合同范例
- 個(gè)人出售小產(chǎn)權(quán)房合同范例
- 2023九年級(jí)數(shù)學(xué)上冊(cè) 第二十一章 一元二次方程21.2 解一元二次方程21.2.1 配方法第2課時(shí) 配方法教學(xué)實(shí)錄(新版)新人教版
- 中國(guó)飲食文化智慧樹(shù)知到期末考試答案2024年
- 《電力勘測(cè)設(shè)計(jì)企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化實(shí)施規(guī)范》
- 第五單元《京腔昆韻》-欣賞 ☆姹紫嫣紅 課件- 2023-2024學(xué)年人音版初中音樂(lè)八年級(jí)下冊(cè)
- 國(guó)家糧食和物資儲(chǔ)備局招聘考試試題及答案
- 宿舍零食盒子項(xiàng)目策劃
- 糖尿病治療研究進(jìn)展
- 工業(yè)互聯(lián)網(wǎng)標(biāo)準(zhǔn)體系(版本3.0)
- 山東省菏澤市10校2023-2024學(xué)年高二上學(xué)期期末聯(lián)考地理試題(含答案解析)
- 初一數(shù)學(xué)期中考試分析
- 松果體區(qū)腫瘤護(hù)理
- 招聘司機(jī)方案
評(píng)論
0/150
提交評(píng)論