




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、磁盤調(diào)度算法的模擬實(shí)現(xiàn) 學(xué) 院 專 業(yè) 學(xué) 號(hào) 學(xué) 生 姓 名 指導(dǎo)教師姓名 2014年3月19日 目錄一、 課設(shè)簡(jiǎn)介21.1 課程設(shè)計(jì)題目21.2 課程設(shè)計(jì)目的21.3 課程設(shè)計(jì)要求2二、 設(shè)計(jì)內(nèi)容32.1功能實(shí)現(xiàn)32.2流程圖3 2.3具體內(nèi)容. 3三、 測(cè)試數(shù)據(jù).43.3 測(cè)試用例及運(yùn)行結(jié)果4四、 源代碼5五、 總結(jié)12 5.1 總結(jié).一、課設(shè)簡(jiǎn)介1.1 課程設(shè)計(jì)題目 磁盤調(diào)度算法的模擬實(shí)現(xiàn)11.2 程序設(shè)計(jì)目的操作系統(tǒng)課程設(shè)計(jì)是計(jì)算機(jī)專業(yè)重要的教學(xué)環(huán)節(jié),它為學(xué)生提供了一個(gè)既動(dòng)手又動(dòng)腦,將課本上的理論知識(shí)和實(shí)際有機(jī)的結(jié)合起來(lái),獨(dú)立分析和解決實(shí)際問(wèn)題的機(jī)會(huì)。 1)進(jìn)一步鞏固和復(fù)習(xí)操作系統(tǒng)的
2、基礎(chǔ)知識(shí)。 2)培養(yǎng)學(xué)生結(jié)構(gòu)化程序、模塊化程序設(shè)計(jì)的方法和能力。 3)提高學(xué)生調(diào)試程序的技巧和軟件設(shè)計(jì)的能力。 4)提高學(xué)生分析問(wèn)題、解決問(wèn)題以及綜合利用C語(yǔ)言進(jìn)行程序設(shè)計(jì)的能力。1.3 設(shè)計(jì)要求1)磁頭初始磁道號(hào),序列長(zhǎng)度,磁道號(hào)序列等數(shù)據(jù)可從鍵盤輸入,也可從文件讀入。 2)最好能實(shí)現(xiàn)磁道號(hào)序列中磁道號(hào)的動(dòng)態(tài)增加。3)磁道訪問(wèn)序列以鏈表的形式存儲(chǔ)4)給出各磁盤調(diào)度算法的調(diào)度順序和平均尋道長(zhǎng)度二、設(shè)計(jì)內(nèi)容2.1 功能實(shí)現(xiàn)設(shè)計(jì)并實(shí)現(xiàn)一個(gè)本別利用下列磁盤調(diào)度算法進(jìn)行磁盤調(diào)度的模擬程序。1) 先來(lái)先服務(wù)算法FCFS 2) 最短尋道時(shí)間優(yōu)先算法SSTF 2.2流程圖開(kāi)始選擇算法SSTFFCFS結(jié)束2.
3、3具體內(nèi)容1)先來(lái)先服務(wù)算法FCFS 這是一種比較簡(jiǎn)單的磁盤調(diào)度算法。它根據(jù)進(jìn)程請(qǐng)求訪問(wèn)磁盤的先后次序進(jìn)行調(diào)度。此算法的優(yōu)點(diǎn)是公平、簡(jiǎn)單,且每個(gè)進(jìn)程的請(qǐng)求都能依次得到處理,不會(huì)出現(xiàn)某一進(jìn)程的請(qǐng)求長(zhǎng)期得不到滿足的情況。此算法由于未對(duì)尋道進(jìn)行優(yōu)化,在對(duì)磁盤的訪問(wèn)請(qǐng)求比較多的情況下,此算法將降低設(shè)備服務(wù)的吞吐量,致使平均尋道時(shí)間可能較長(zhǎng),但各進(jìn)程得到服務(wù)的響應(yīng)時(shí)間的變化幅度較小。 2)最短尋道時(shí)間優(yōu)先算法SSTF 該算法選擇這樣的進(jìn)程,其要求訪問(wèn)的磁道與當(dāng)前磁頭所在的磁道距離最近,以使每次的尋道時(shí)間最短,該算法可以得到比較好的吞吐量,但卻不能保證平均尋道時(shí)間最短。其缺點(diǎn)是對(duì)用戶的服務(wù)請(qǐng)求的響應(yīng)機(jī)會(huì)不
4、是均等的,因而導(dǎo)致響應(yīng)時(shí)間的變化幅度很大。在服務(wù)請(qǐng)求很多的情況下,對(duì)內(nèi)外邊緣磁道的請(qǐng)求將會(huì)無(wú)限期的被延遲,有些請(qǐng)求的響應(yīng)時(shí)間將不可預(yù)期。三、 測(cè)試數(shù)據(jù)3.1 先來(lái)先服務(wù)算法輸入磁道序列:55 58 39 18 90 160 150 38 184當(dāng)前磁道號(hào):1003.2 最短尋道時(shí)間優(yōu)先算法(1)當(dāng)前磁道號(hào)大于磁道序列中的最大的磁道號(hào)時(shí) 輸入磁道序列:55 58 39 18 90 160 150 38 184當(dāng)前磁道號(hào):100 3.3 測(cè)試結(jié)果 四、源代碼#include<iostream>#include<cmath>#include<stdio.h>usi
5、ng namespace std;typedef struct nodeint data;struct node *next;Node,*Linklist;void main()void Create_Linklist(Node *); void fcfs();/聲明先來(lái)先服務(wù)函數(shù)FCFSvoid sstf();/聲明最短尋道時(shí)間優(yōu)先函數(shù)SSTF void print(Node *); /輸出鏈表函數(shù)int s; /s是選擇哪個(gè)算法printf("*磁盤調(diào)度算法*n"); printf("t*1,先來(lái)先服務(wù)算法FCFSn"); printf("
6、t*2,最短尋道時(shí)間優(yōu)先算法SSTFn"); printf("t*0,退出n"); printf("t*請(qǐng)選擇:"); scanf("%d",&s);while(s!=0) switch(s) case 1:printf("tt*你選擇了:先來(lái)先服務(wù)算法FCFSn");fcfs();break; case 2:printf("tt*你選擇了:最短尋道時(shí)間優(yōu)先算法SSTFn");sstf(); break; printf("tt*退出請(qǐng)選0,繼續(xù)請(qǐng)選1,2,n"
7、;); scanf("%d",&s);/*/void fcfs()/先來(lái)先服務(wù)算法void Create_Linklist(Node *);void print(Node *); int Length_Linklist(Node *);Node *l,*head;/*m,*n;*/float num=0; /num為平均尋道長(zhǎng)度 int c,f;head=(Node *)malloc(sizeof(Node);head->next=NULL;printf("*新建一個(gè)單鏈表,以0作為結(jié)束標(biāo)志:*n"); Create_Linklist(he
8、ad);c=Length_Linklist(head); printf("tt*從幾號(hào)磁道開(kāi)始:*"); scanf("%d",&f); /f為磁道號(hào)print(head); printf("t*鏈表長(zhǎng)度為:%dn",c);l=head->next; for(int i=0;i<c;i+)num+=abs(l->data-f);f=l->data;l=l->next;num=num/c; printf("tt*先來(lái)先服務(wù)的尋道順序是:n");print(head);printf
9、("tt*平均尋道長(zhǎng)度:%fn",num);/*/void sstf()/最短尋道時(shí)間優(yōu)先算法void Create_Linklist(Node *);void print(Node *); int Length_Linklist(Node *);Node *p,*q,*r,*s,*l,*m,*head;int c,f; head=(Node *)malloc(sizeof(Node);head->next=NULL;printf("*新建一個(gè)單鏈表,以0作為結(jié)束標(biāo)志:*n"); Create_Linklist(head);c=Length_Lin
10、klist(head); printf("tt*從幾號(hào)磁道開(kāi)始:*"); scanf("%d",&f); /f為磁道號(hào)print(head); printf("t*鏈表長(zhǎng)度為:%dn",c);l=(Node *)malloc(sizeof(Node);l->next=NULL;m=l;q=head;p=head->next;s=head;r=head->next;float num=0;for(int i=0;i<c;i+)int min=abs(f-r->data);for(int j=0;j&
11、lt;c-i-1;j+)p=p->next;q=q->next;if(abs(f-p->data)<min)min=abs(f-p->data);r=p;s=q;num+=abs(f-r->data);f=r->data;s->next=r->next;r->next=NULL;m->next=r;m=r;q=head; p=head->next;s=head;r=head->next;num=num/c;printf("tt*最短尋道時(shí)間優(yōu)先順序是:n");print(l);printf(&qu
12、ot;tt*平均尋道長(zhǎng)度:%fn",num);/*/void print(Node *head) /輸出鏈表Node *p;p=head->next;cout<<"單鏈表顯示:"if(p=NULL)printf("單鏈表為空:n");else if(p->next=NULL) printf("%dt",p->data);printf("n");elsewhile(p->next!=NULL)printf("%dt",p->data);p=p-&
13、gt;next;printf("%dt",p->data);printf("n");/*/void Create_Linklist(Node *head)/創(chuàng)建鏈表Node *p,*q; int i; scanf("%d",&i); q=head;while(i!=0)p=(Node *)malloc(sizeof(Node);p->next=NULL;p->data=i;q->next=p;q=p;cin>>i;/*c+;*/*/int Length_Linklist(Node *head)/計(jì)算鏈表長(zhǎng)int l;Node *p;p= head->next;l=1;while(p->next)p=p->next;l+;retur
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 IEC 61189-2-809:2024 EN-FR Test methods for electrical materials,circuit boards and other interconnection structures and assemblies – Part 2-809: X/Y coefficient of thermal
- 2025-2030年中國(guó)面包機(jī)行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及前景趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)銑銅鎂行業(yè)市場(chǎng)競(jìng)爭(zhēng)格局及前景規(guī)模預(yù)測(cè)報(bào)告
- 2025-2030年中國(guó)鐵路機(jī)車車輛配件制造行業(yè)競(jìng)爭(zhēng)狀況與發(fā)展趨勢(shì)分析報(bào)告
- 2025-2030年中國(guó)貿(mào)易金融市場(chǎng)發(fā)展前景及未來(lái)趨勢(shì)預(yù)測(cè)報(bào)告
- 2025-2030年中國(guó)調(diào)壓箱市場(chǎng)發(fā)展前景及投資戰(zhàn)略研究報(bào)告
- 2025-2030年中國(guó)蔬果加工產(chǎn)業(yè)發(fā)展現(xiàn)狀規(guī)劃研究報(bào)告
- 2025-2030年中國(guó)莫匹羅星市場(chǎng)運(yùn)行現(xiàn)狀及發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告
- 2025-2030年中國(guó)苜蓿草市場(chǎng)經(jīng)營(yíng)狀況及投資戰(zhàn)略報(bào)告
- 2025-2030年中國(guó)紅土鎳礦產(chǎn)業(yè)運(yùn)營(yíng)狀況及發(fā)展規(guī)劃分析報(bào)告
- 2025年中國(guó)國(guó)投高新產(chǎn)業(yè)投資集團(tuán)招聘筆試參考題庫(kù)含答案解析
- 年產(chǎn)10噸功能益生菌凍干粉的工廠設(shè)計(jì)改
- 初中三角函數(shù)計(jì)算題100道
- 蘇州大學(xué)應(yīng)用技術(shù)學(xué)院財(cái)務(wù)管理
- 北師大版五年級(jí)數(shù)學(xué)下冊(cè)導(dǎo)學(xué)案全冊(cè)
- 臺(tái)球俱樂(lè)部助教制度及待遇
- 醫(yī)師聘用證明.doc
- 核物理實(shí)驗(yàn)方法全冊(cè)配套最完整精品課件
- 理論力學(xué)課件00796
- 學(xué)習(xí)疊層母排必須知道的電力知識(shí)
- 微波與天線矩形波導(dǎo)
評(píng)論
0/150
提交評(píng)論