



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、實 驗 報 告題目名稱C語言實現(xiàn)調(diào)度算法程序設(shè)計實驗報告-先來先服務(wù)FCFS院系 a班級 完成時間 指導老師 本次實驗成績主要原理及所參考的資料算法原理:設(shè)計程序模擬進程的先來先服務(wù)FCFS過程。假設(shè)有n個進程分別在T1, ,Tn時刻到達系統(tǒng),它們需要的服務(wù)時間分別為S1, ,Sn。分別采用先來先服務(wù)FCFS調(diào)度算法進行調(diào)度,計算每個進程的完成時間,周轉(zhuǎn)時間和帶權(quán)周轉(zhuǎn)時間,并且統(tǒng)計n個進程的平均周轉(zhuǎn)時間和平均帶權(quán)周轉(zhuǎn)時間。程序要求如下:1)進程個數(shù)n;每個進程的到達時間T1, ,Tn和服務(wù)時間S1, ,Sn。2)要求采用先來先服務(wù)FCFS調(diào)度進程運行,計算每個進程的周轉(zhuǎn)時間,帶權(quán)周轉(zhuǎn)時間,并且
2、計算所有進程的平均周轉(zhuǎn)時間,帶權(quán)平均周轉(zhuǎn)時間;3)輸出:要求模擬整個調(diào)度過程,輸出每個時刻的進程運行狀態(tài),如“時刻3:進程B開始運行”等等;4)輸出:要求輸出計算出來的每個進程的周轉(zhuǎn)時間,帶權(quán)周轉(zhuǎn)時間,所有進程的平均周轉(zhuǎn)時間,帶權(quán)平均周轉(zhuǎn)時間。主要參考書:計算機操作系統(tǒng)第三版 西安電子科技大學出版社 湯小丹主編主要算法具體實驗步驟實現(xiàn)提示:用C語言實現(xiàn)提示:1)程序中進程調(diào)度時間變量描述如下:static int MaxNum=100;int ArrivalTimeMaxNum;int ServiceTimeMaxNum;int FinishTimeMaxNum;int WholeTimeMa
3、xNum;double WeightWholeTimeMaxNum;double AverageWT_FCFS; double AverageWWT_FCFS;2)進程調(diào)度的實現(xiàn)過程如下: 變量初始化; 接收用戶輸入n,T1, ,Tn,S1, ,Sn; 按照選擇算法進行進程調(diào)度,計算進程的完成時間、周轉(zhuǎn)時間和帶權(quán)周轉(zhuǎn)時間; 計算所有進程的平均周轉(zhuǎn)時間和平均帶權(quán)周轉(zhuǎn)時間; 按格式輸出調(diào)度結(jié)果。實驗要求1. 程序流程圖P=HEAD ; i=0P=Q;P=P-NEXT;P=P-NEXT;Q-STARTTIME=TIMEQ-STATE=T 開始i+;輸出執(zhí)行進程信息結(jié)束P-STATE=F?Q-ARRI
4、VETIME TIME?i STARTTIME=ARRIVETIMEQ-STATE=T YNYNNY2. 程序源代碼#includestdio.h#includestdlib.htypedef struct PCB /定義進程控制塊 char name10; /進程名char state; /運行狀態(tài)int ArriveTime; /到達時間int StartTime; /進程開始時間int FinishTime; /進程結(jié)束時間int ServiceTime; /服務(wù)時間float WholeTime;/周轉(zhuǎn)時間float WeightWholeTime;/帶權(quán)周轉(zhuǎn)時間double Aver
5、ageWT_FCFS; /平均周轉(zhuǎn)時間double AverageWWT_FCFS;/帶權(quán)平均周轉(zhuǎn)時間struct PCB *next; /指向下個進程pcb;double x=0,y=0;int i;int time; /計時器int n; /進程個數(shù)pcb *head=NULL,*p,*q; /進程鏈表指針void run_FCFS(pcb *p1) /運行未完成的進程time = p1-ArriveTime time? p1-ArriveTime:time;p1-StartTime=time;printf(n時刻:%d, 當前開始運行作業(yè)%snn,time,p1-name);time+=
6、p1-ServiceTime;p1-state=T;p1-FinishTime=time;p1-WholeTime=p1-FinishTime-p1-ArriveTime;p1-WeightWholeTime=p1-WholeTime/p1-ServiceTime;x+=p1-WholeTime;y+=p1-WeightWholeTime;p1-AverageWT_FCFS=p1-WholeTime/n;p1-AverageWWT_FCFS=p1-WeightWholeTime/n;printf( 到達時間 開始時間 服務(wù)時間 完成時間 周轉(zhuǎn)時間 帶權(quán)周轉(zhuǎn)時間 n);printf(%6d %1
7、0d %10d %8d %10.1f %10.2f n ,p1-ArriveTime,p1-StartTime,p1-ServiceTime,p1-FinishTime,p1-WholeTime,p1-WeightWholeTime); printf(n平均周轉(zhuǎn)時間 平均帶權(quán)周轉(zhuǎn)時間 n);printf( %10.2f %10.2fn ,p1-AverageWT_FCFS,p1-AverageWWT_FCFS);void FCFS() /找到當前未完成的進程 int i; p=head; for(i=0;istate=F) q=p; /標記當前未完成的進程 run_FCFS(q); p=p-n
8、ext; void getInfo() /獲得進程信息并創(chuàng)建進程int num;printf(n進程個數(shù):);scanf(%d,&n);for(num=0;numname,&p-ArriveTime,&p-ServiceTime);if(head=NULL) head=p;q=p;time=p-ArriveTime;if(p-ArriveTime ArriveTime;q-next=p;p-StartTime=0;p-FinishTime=0;p-WholeTime=0;p-WeightWholeTime=0;p-next=NULL;p-state=F;q=p; void main()printf(先來先服務(wù)FCFS算
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 村民小組賬目管理辦法
- 利川項目資金管理辦法
- 景區(qū)檢測機構(gòu)管理辦法
- 內(nèi)部資金調(diào)撥管理辦法
- 數(shù)字鴻溝心理影響-第1篇-洞察及研究
- 工地常見安全隱患及整改措施
- 政府消防安全應(yīng)急預(yù)案
- 商業(yè)視角下的教育技術(shù)公平性的探索與實現(xiàn)
- 肝炎病毒感染與老年健康-洞察闡釋
- 邊緣計算中的數(shù)據(jù)安全與隱私保護機制-洞察闡釋
- 福建省泉州市泉州實驗中學2024屆八上數(shù)學期末聯(lián)考模擬試題含解析
- 抖音員工號申請在職證明參考模板
- 營養(yǎng)瓊脂培養(yǎng)基適用性驗證
- (完整)雙溪課程評量表
- 第四章-康復(fù)心理學-心理評估
- 中醫(yī)外治技術(shù)排版稿
- GB/T 41421-2022數(shù)字化試衣虛擬服裝用術(shù)語和定義
- GB/T 4074.21-2018繞組線試驗方法第21部分:耐高頻脈沖電壓性能
- 逆向工程技術(shù)-課件
- 基于PLC交流變頻調(diào)速系統(tǒng)的設(shè)計 畢業(yè)設(shè)計(論文)
- 齊魯醫(yī)學健康知識-遠離“三高”
評論
0/150
提交評論