磁盤調(diào)度算法的模擬

磁盤調(diào)度算法的模擬

ID:14388198

大小:89.50 KB

頁數(shù):7頁

時間:2018-07-28

磁盤調(diào)度算法的模擬_第1頁
磁盤調(diào)度算法的模擬_第2頁
磁盤調(diào)度算法的模擬_第3頁
磁盤調(diào)度算法的模擬_第4頁
磁盤調(diào)度算法的模擬_第5頁
資源描述:

《磁盤調(diào)度算法的模擬》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫

1、OS實驗六(軟件)2010.12.11磁盤調(diào)度算法的模擬實驗要求:n請分別用SCAN和SSTF模擬磁盤調(diào)度,并打印出磁盤磁道的調(diào)度順序。n磁頭的方向可以動態(tài)的規(guī)定n磁道請求個數(shù)及序列可以動態(tài)地寫入n總結(jié)收獲體會及對該題解的改進意見和見解(一)分析題意得模型利用數(shù)組相關(guān)知識SCAN算法:先將請求的磁道序列排序,以當(dāng)前磁道號將該序列分界,根據(jù)當(dāng)前磁道移動方向決定先讀左邊的還是先讀右邊的SSTF算法:先將請求的磁道序列排序,以當(dāng)前磁道號將該序列分界,然后當(dāng)前磁道號分別與左邊、右邊磁道作差比較,選作差最小的,也即最短的。并

2、修改當(dāng)前磁道號及其訪問位(1為已訪問完,0為未訪問)。(注:還要考慮左邊或右邊沒有磁道的情況,如何確定所要與之比較的磁道)利用數(shù)組相關(guān)知識(二)寫主要算法思路詳見源程序及注釋分類(三)調(diào)試運行(多種情況都要運行)OS實驗六(軟件0967020050)今日8/28/2021OS實驗六(軟件)2010.12.11(圖SSTF1.當(dāng)前磁道號在已排序的磁道請求序列中間的運行結(jié)果)(圖SSTF2當(dāng)前磁道號在已排序的磁道請求序列最右邊的運行結(jié)果)(圖SSTF2當(dāng)前磁道號在已排序的磁道請求序列最左邊的運行結(jié)果)(四)體會OS實驗

3、六(軟件0967020050)今日8/28/2021OS實驗六(軟件)2010.12.111.先找到問題思路,然后運用所學(xué)知識,SCAN算法用數(shù)組實現(xiàn)較為簡單,問題不大。2.SSTF算法的情況分類需花點腦子,只需讓當(dāng)前磁道號分別與左邊、右邊磁道作差比較,用數(shù)組實現(xiàn)還需再加一個數(shù)組設(shè)置該磁道是否被訪問,若用雙向鏈表實現(xiàn),可把已訪問的磁道號釋放掉,只需讓當(dāng)前磁道號分別與前驅(qū)、后驅(qū)磁道作差比較,用鏈表實現(xiàn)可減少用數(shù)組實現(xiàn)時不斷去判斷該磁道是否訪問的時間。在這一方面,雙向鏈表實現(xiàn)應(yīng)該會比數(shù)組實現(xiàn)更有效率。SCAN源代碼:#

4、includevoidmain(){intm=0,n,Seek[100],SCurrent,t,i=0,j,k,option;printf("請輸入當(dāng)前的磁道號:");scanf("%d",&SCurrent);printf("----1.向磁道號增加的方向訪問t2.向磁道號減少的方向訪問----");printf("---請選擇的當(dāng)前磁頭移動方向(1/2):");scanf("%d",&option);printf("請輸入磁道請求序列(以-999結(jié)束):");scanf("%

5、d",&n);while(n!=-999){Seek[i]=n;m++;i++;scanf("%d",&n);}/*冒泡排序使磁道請求序列從小到大排序*/for(j=0;jSeek[i+1]){OS實驗六(軟件0967020050)今日8/28/2021OS實驗六(軟件)2010.12.11t=Seek[i];Seek[i]=Seek[i+1];Seek[i+1]=t;}}/*找到當(dāng)前磁道號在磁道請求序列中的排序位置*/k=0;for

6、(i=0;i=0;i--)printf("%5d",Seek[i]);}/*第二種:當(dāng)前磁道號先向里再向外讀*/if(option==2){for(i=

7、k-1;i>=0;i--)printf("%d",Seek[i]);for(i=k;ivoidmain(){intm=0,n,Seek[100],Flag[100],SCurrent,t,i=0,j,k,i0,j0;printf("請輸入當(dāng)前的磁道號:");scanf("%d",&S

8、Current);printf("請輸入磁道請求序列(以-999結(jié)束):");scanf("%d",&n);while(n!=-999){Seek[i]=n;m++;i++;scanf("%d",&n);}/*初始化置對應(yīng)的磁道訪問位為零*/for(i=0;i

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

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

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