操作系統(tǒng)全體報告-實驗八_第1頁
操作系統(tǒng)全體報告-實驗八_第2頁
操作系統(tǒng)全體報告-實驗八_第3頁
操作系統(tǒng)全體報告-實驗八_第4頁
操作系統(tǒng)全體報告-實驗八_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

請在以上示例實驗程序中補充SCAN,C-SCAN,LOOK磁盤移臂調度算法的模擬程序。輸入不同的磁盤柱面請求序列,觀察和分析其調度效果和性能,并將其與FCFS和SSTF磁盤柱面請求序列,以便能動態(tài)的觀測各種調度算法的性能擬算法的編程技巧,鍛煉研究分析試驗數(shù)據(jù)的能力。CPU:I5-4210/2.6GHz內存:4GB硬盤:Ubuntu14.0.4-Linux操作系統(tǒng)gccversion的同方向磁道,直到回到0,然后反方向掃描0,然后回到起點,從最大磁道開#include<iostream>#include<iomanip>#include<malloc.h> usingnamespacestd;classDiskArm{voidInitSpace(char*MethodName)voidReport(void);//報告算法執(zhí)行情況voidFcfs(void);voidSstf(void);voidScan(void);//電梯調度算法voidCScan(void);voidLook(void);//LOOK調度算法int*Requestint*Cylinder;intintintintint#include"dask.h"intcout<<"PleaseinputCurrentcylinder:";cin>>CurrentCylinder;//磁頭方向,輸入0表示向小道號移動,1表示向大道號移動cout<<"PleaseinputCurrentDirection(0/1):";cin>>SeekDirection;cout<<"PleaseinputRequestNumbers:";cin>>RequestNumber;cout<<"PleaseinputReqylinderstring:";Request=newint[sizeof(int)*RequestNumber];Cylinder=newint[sizeof(int)*RequestNumber];for(i=0;i<RequestNumber;i++)cin>>}}voidDiskArm::InitSpace(char*{intcout<<endl<<MethodName<<endl;SeekNumber=0;SeekChang=for(i=0;i<RequestNumber;Cylinder[i]=}//統(tǒng)計報告算法執(zhí)行情況voidDiskArm::Report(void){cout<<endl;cout<<"SeekNumber:"<<SeekNumber<<endl;cout<<"ChangDirection:"<<SeekChang<<endl<<}void{intCurrent=CurrentCylinder;intDirection=SeekDirection;cout<<for(inti=0;i<RequestNumber; &&!Direction)||((Cylinder[i]<Current)&&Direction)){SeekChang++;//調頭數(shù)加DirectionDirectioncout<<endl<<Current<<"->"}elsecoutCylinder[iSeekNumber+=abs(Current-Cylinder[i]);Current=Cylinder[i];}}void{intintDistance=999999intDirection=SeekDirection;intCurrent=CurrentCylinder;cout<<for(inti=0;i<RequestNumber;for(intj=0;j<RequestNumber;if(Cylinderj]==-1)continue;//-1表示已經響應if(Distance>abs(Current-Cylinder[Distanceabs(Current-Cylinderj]);Shortest=j;}}if(((Cylinder[Shortest]>=Current)&&!Direction)||((Cylinder[Shortest]<CurrentCylinder)&&Direction)){SeekChang++;//調頭數(shù)加DirectionDirectioncout<<endl<<Current<<"->"<<}elsecout<<"->"<<Cylinder[Shortest] -Current=Distance=999999;Cylinder[Shortest]=-}}voidintCurrent=intDirection=SeekDirection;cout<<for(inti=0;i<RequestNumber;i++){intindex=-1;intDistance=for(intj=0;j<RequestNumber;j++){if(Cylinder[j]==-1)nder[j])<Distance)}}}}elseif(Direction==1){}}}}voidintCurrent=CurrentCylinder;intDirection=SeekDirection;cout<<for(inti=0;i<RequestNumber;i++){intindex=-1;intDistance=for(intj=0;j<RequestNumber;j++){if(Cylinder[j]==-1)nder[j])<Distance)}}}}elseif(Direction==1){}}}}//LOOK調度算法void{intCurrent=intDirection=SeekDirection;cout<<for(inti=0;i<RequestNumber;i++){intindex=-1;intDistance=for(intj=0;j<RequestNumber;j++){if(Cylinder[j]==-1)nder[j])<Distance)}}}}elseif(Direction

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論