版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 實驗一:熟悉Linux系統(tǒng)實驗?zāi)康模鹤孕芯幹颇M程序,通過形象化的狀態(tài)顯示,使學(xué)生理解進(jìn)程的概念、進(jìn)程之間的狀態(tài)轉(zhuǎn)換及其所帶來的PCB內(nèi)容 、組織的變化,理解進(jìn)程與其PCB間的一一對應(yīng)關(guān)系。實驗要求:設(shè)計并實現(xiàn)一個模擬進(jìn)程狀態(tài)轉(zhuǎn)換及其相應(yīng)PCB組織結(jié)構(gòu)變化的程序;獨(dú)立設(shè)計、編寫、調(diào)試程序;程序界面應(yīng)能反映出在模擬條件下,進(jìn)程之間狀態(tài)轉(zhuǎn)換及其對應(yīng)的PCB組織的變化。進(jìn)程的狀態(tài)模型(三狀態(tài)、五狀態(tài)、七狀態(tài)或其它)可自行選擇運(yùn)行Running就緒Ready等待BlockedjDispatchkTimeoutlEventWaitmEventOccurs基本狀態(tài)間的轉(zhuǎn)換代碼書寫要規(guī)范,要適當(dāng)?shù)丶尤胱⑨?/p>
2、;鼓勵在實驗中加入新的觀點(diǎn)或想法,并加以實現(xiàn);認(rèn)真進(jìn)行預(yù)習(xí),完成預(yù)習(xí)報告;實驗完成后,要認(rèn)真總結(jié),完成實驗報告。程序流程圖:說明(1)上為運(yùn)行結(jié)果,x<y>:x為進(jìn)程號;y為進(jìn)程結(jié)束剩余時間片。 (2)程序中使用隊列數(shù)據(jù)結(jié)構(gòu),并以結(jié)構(gòu)體process(進(jìn)程)作為隊列元素。 (3) 程序自動進(jìn)行時間片分配,但每次運(yùn)行一個進(jìn)程前需要進(jìn)行阻塞判斷,由操作員手動輸入。 (4)程序在等待隊列中進(jìn)程小于4時,自動將阻塞隊列中的進(jìn)程釋放出來。 程序源代碼:#include<iostream>#include<queue>#include<windows.h>u
3、sing namespace std;struct process int id; int hp; process() process(int a,int b) id=a; hp=b; ; queue<process> re,bl,ru; int main() void show(queue<process> re,queue<process> ru,queue<process> bl); process p1(1,2),p2(2,1),p3(3,1),p4(4,3),p5(5,2),p6(6,1); re.push(p1); re.push(p
4、2); re.push(p3); bl.push(p4); bl.push(p5); bl.push(p6); process x;char ch;int n; cout<<"初始化中." Sleep(2000); cout<<"." Sleep(2000); cout<<"."<<endl<<endl; show(re,ru,bl); cout<<endl<<"開始執(zhí)行!"<<endl<<endl; whi
5、le(!re.empty() x=re.front(); re.pop(); ru.push(x); x=ru.front(); show(re,ru,bl); cout<<endl<<"是否阻塞?(y/n)"<<endl; ch=getchar(); getchar(); if(ch='y') x=ru.front(); ru.pop(); bl.push(x); else if(ch='n') x.hp-; ru.front().hp=x.hp; if(x.hp!=0) x=ru.front(); ru
6、.pop(); re.push(x); else ru.pop(); else cout<<"輸入有誤"<<endl; n=re.size(); while(n<4) if(bl.empty()break; x=bl.front(); bl.pop(); re.push(x); n+; return 0; void show(queue<process> re,queue<process> ru,queue<process> bl) cout<<"運(yùn)行任務(wù):" process
7、y; if(ru.empty()cout<<"空"<<endl; else y=ru.front(); ru.pop(); cout<<y.id<<"("<<y.hp<<")"<<endl; cout<<"隊列中的任務(wù):" if(!re.empty() while(!re.empty() y=re.front(); re.pop(); cout<<y.id<<"("<<y.hp<<") " else cout<<"空" cout<<endl<<"阻塞中的任務(wù):" if(!bl.empty() while(!bl.empty() y=bl.front(); bl.pop(); co
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版高性能鋼模板供應(yīng)商合作協(xié)議書3篇
- 2024版教練車使用權(quán)轉(zhuǎn)讓協(xié)議3篇
- 2025年度門窗行業(yè)綠色建筑標(biāo)準(zhǔn)制定合同4篇
- 2025年智慧停車系統(tǒng)車位使用權(quán)購買合同4篇
- 二零二五年度綠化苗木種植與生態(tài)修復(fù)項目合同4篇
- 二零二五年度民間借款擔(dān)保與債務(wù)重組服務(wù)合同4篇
- 4《珍珠鳥》說課稿2024-2025學(xué)年統(tǒng)編版語文五年級上冊
- 二零二五年度船舶修理碼頭場地租賃及維修服務(wù)協(xié)議4篇
- 二零二五年度重大合同廢止通知及后續(xù)責(zé)任劃分協(xié)議3篇
- 2025版二零二五年度民辦學(xué)校校企合作人才培養(yǎng)合同4篇
- 城市軌道交通的網(wǎng)絡(luò)安全與數(shù)據(jù)保護(hù)
- 英國足球文化課件
- 《行政職業(yè)能力測驗》2023年公務(wù)員考試新疆維吾爾新疆生產(chǎn)建設(shè)兵團(tuán)可克達(dá)拉市預(yù)測試題含解析
- 醫(yī)院投訴案例分析及處理要點(diǎn)
- 燙傷的安全知識講座
- 工程變更、工程量簽證、結(jié)算以及零星項目預(yù)算程序?qū)嵤┘?xì)則(試行)
- 練習(xí)20連加連減
- 五四制青島版數(shù)學(xué)五年級上冊期末測試題及答案(共3套)
- 員工內(nèi)部崗位調(diào)換申請表
- 商法題庫(含答案)
- 鋼結(jié)構(gòu)用高強(qiáng)度大六角頭螺栓連接副 編制說明
評論
0/150
提交評論