實(shí)驗(yàn)三——進(jìn)程調(diào)度實(shí)驗(yàn)上機(jī)

實(shí)驗(yàn)三——進(jìn)程調(diào)度實(shí)驗(yàn)上機(jī)

ID:41702783

大?。?3.53 KB

頁數(shù):9頁

時(shí)間:2019-08-30

實(shí)驗(yàn)三——進(jìn)程調(diào)度實(shí)驗(yàn)上機(jī)_第1頁
實(shí)驗(yàn)三——進(jìn)程調(diào)度實(shí)驗(yàn)上機(jī)_第2頁
實(shí)驗(yàn)三——進(jìn)程調(diào)度實(shí)驗(yàn)上機(jī)_第3頁
實(shí)驗(yàn)三——進(jìn)程調(diào)度實(shí)驗(yàn)上機(jī)_第4頁
實(shí)驗(yàn)三——進(jìn)程調(diào)度實(shí)驗(yàn)上機(jī)_第5頁
資源描述:

《實(shí)驗(yàn)三——進(jìn)程調(diào)度實(shí)驗(yàn)上機(jī)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫

1、預(yù)習(xí)要求:1、事先編好程序;2、準(zhǔn)備好需要輸入的中間數(shù)據(jù);3、估計(jì)可能出現(xiàn)的問題;4、預(yù)計(jì)可能得到的運(yùn)行結(jié)果。實(shí)驗(yàn)三進(jìn)程調(diào)度實(shí)驗(yàn)實(shí)驗(yàn)冃的要求:川高級語言編寫和調(diào)試一個(gè)進(jìn)程調(diào)度程序,以加深對進(jìn)程的概念及進(jìn)程調(diào)度算法的理解。實(shí)驗(yàn)內(nèi)容:1、設(shè)計(jì)一個(gè)冇N個(gè)進(jìn)程共行的進(jìn)程調(diào)度程序。進(jìn)程調(diào)度算法:采用最高優(yōu)先數(shù)優(yōu)先的調(diào)度算法(即把處理機(jī)分配給優(yōu)先數(shù)最高的進(jìn)程)或先來先服務(wù)算法。每個(gè)進(jìn)程有一個(gè)進(jìn)程控制塊(PCB)表示。進(jìn)程控制塊可以包含如下信息:進(jìn)程名、優(yōu)先數(shù)(假設(shè)優(yōu)先數(shù)的值越人優(yōu)先級別越高)、到達(dá)時(shí)間、需要運(yùn)行時(shí)間、已用CP

2、U時(shí)間、進(jìn)程狀態(tài)等等。進(jìn)程的優(yōu)先數(shù)及需要的運(yùn)行時(shí)間可以事先人為地指定(也可以由隨機(jī)數(shù)產(chǎn)生)。進(jìn)程的到達(dá)時(shí)間為進(jìn)程輸入的時(shí)間。進(jìn)程的運(yùn)行時(shí)間以時(shí)間片為單位進(jìn)行計(jì)算。每個(gè)進(jìn)程的狀態(tài)可以是就緒W(Wait)、運(yùn)行R(Run)、或完成F(Finish)三種狀態(tài)ZO就緒進(jìn)程獲得CPU后都只能運(yùn)行一?個(gè)時(shí)間片。用已占用CPU時(shí)間加1來表示。如果運(yùn)行一個(gè)時(shí)間片后,進(jìn)程的已占用CPU吋間已達(dá)到所需耍的運(yùn)行吋間,則撤消該進(jìn)程,如果運(yùn)行一個(gè)時(shí)間片后進(jìn)程的已占用CPU時(shí)間還未達(dá)所需要的運(yùn)行時(shí)間,也就是進(jìn)程還需要繼續(xù)運(yùn)行,此時(shí)應(yīng)將進(jìn)程的

3、優(yōu)先數(shù)減1(即降低一級),然后把它插入就緒隊(duì)列等待CPUo每進(jìn)行一次調(diào)度程序都打印一次運(yùn)行進(jìn)程、就緒隊(duì)列、以及各個(gè)進(jìn)程的PCB,以便進(jìn)行檢查。垂復(fù)以上過程,直到所有進(jìn)程都完成為止。2、設(shè)計(jì)進(jìn)程,根據(jù)所設(shè)計(jì)的進(jìn)程,分析其調(diào)度順序,并列出甘特圖活??-FkroscftVteudC+...391押◎E么£占同學(xué)們自己寫3、實(shí)驗(yàn)總結(jié):同學(xué)們自己寫4.擴(kuò)展題:編寫并調(diào)試一個(gè)模擬的進(jìn)程調(diào)度程序,采用“倫轉(zhuǎn)法”調(diào)度算法對五個(gè)進(jìn)程進(jìn)行調(diào)度。輪轉(zhuǎn)法可以是簡單倫轉(zhuǎn)法、可變時(shí)間片輪轉(zhuǎn)法,或多隊(duì)列倫轉(zhuǎn)法。簡單輪轉(zhuǎn)法的基本思想是:所有就緒

4、進(jìn)程按FCFS排成一個(gè)隊(duì)列,總是把處理機(jī)分配給隊(duì)首的進(jìn)程,各進(jìn)程占用CPU的時(shí)間片相同。如果運(yùn)行進(jìn)程用完它的吋間片后述為完成,就把它送回到就緒隊(duì)列的末尾,把處理機(jī)重新分配給隊(duì)首的進(jìn)程。直至所有的進(jìn)程運(yùn)行完畢。最高冼先數(shù)算法最向單的調(diào)度算法就是先來先服務(wù),也可以稱為先進(jìn)先出(FirstInFirstOut)或嚴(yán)儕排隊(duì)方式?對于進(jìn)程調(diào)度劃法柴說,光*先服務(wù)調(diào)度算法就是從就緒隊(duì)列中選擇個(gè)址先進(jìn)入隊(duì)列的進(jìn)祝將CPU分配于它百其運(yùn)行.該進(jìn)程直運(yùn)行下去直到完成或由J某果件血被阻塞入放棄CPU.這樣,當(dāng)個(gè)進(jìn)程進(jìn)入就絡(luò)隊(duì)列時(shí),它

5、的PCB就fil入了該就絡(luò)隊(duì)列的未疋申隊(duì)智待分配cpu.般來說,先來先服務(wù)詞度算法劉r長仟務(wù)來說比較短仟務(wù)要好一些.FCFS算法不考慮作業(yè)運(yùn)行時(shí)間的長短.儀按作業(yè)進(jìn)入輸入井時(shí)何的先后進(jìn)行詞度?因此對所有的竹業(yè)是公平合理的V算法數(shù)據(jù)結(jié)構(gòu)每個(gè)進(jìn)程有個(gè)進(jìn)程控制塊(PCB)表示°進(jìn)程控制塊可以包含如卜?信息:進(jìn)程名、優(yōu)先數(shù)、進(jìn)程時(shí)間輪轉(zhuǎn)時(shí)間片、計(jì)數(shù)器、需要運(yùn)行時(shí)間、已用CPU時(shí)間、進(jìn)程狀態(tài)<?xì)皞€(gè)進(jìn)程的狀態(tài)可以是就緒W(Wait)、運(yùn)行R(Run)、或完成F(Finish)_:種狀態(tài)Z-。算法流程圖最髙優(yōu)先數(shù)調(diào)度耳法流和圖

6、測試數(shù)據(jù),每位同學(xué)自己設(shè)計(jì),自己輸入,以下數(shù)據(jù)僅供參考。最高優(yōu)先數(shù)進(jìn)程調(diào)度算法模擬測試熾島優(yōu)兒敵進(jìn)稱訓(xùn)戰(zhàn)諒法松擬測試的詢?nèi)霐?shù)據(jù)的及兒結(jié)果如F:進(jìn)程名優(yōu)先級運(yùn)行時(shí)間a12b21c11d33e44附件:進(jìn)程調(diào)度源程序(jingchendiaodu.cpp):#include"stdio.h"#include#include#dcfincgctpch(typc)(type*)malloc(sizeof(type))#defineNULL0structpcb{/*定義進(jìn)程控制塊PCB

7、*/charname[10];charstate;intsuper;intntime;intrtime;structpcb*link;}*ready=NULL,*p;typedefstructpcbPCB;voidsort()/*建立對進(jìn)程進(jìn)行優(yōu)先級排列函數(shù)*/{PCB*first,*second;intinsert=();if((ready==NULL)ll((p->super)>(ready->super)))/*優(yōu)先級最大者,插入隊(duì)首*/{p?>link=ready;ready=p;)else/*進(jìn)程比較優(yōu)

8、先級,插入適當(dāng)?shù)奈恢弥?/first=ready;sccond=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=sccond;first->link=p;second=NULL;insert=l;}else/*插入進(jìn)程

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時(shí)可能會顯示錯(cuò)亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時(shí)聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。