硬碟排程演算法的四種實現

2021-10-07 21:59:28 字數 2224 閱讀 8336

#include

#include

#include

#include

#include

using

namespace std;

vector<

int> vt;

int n,now;

void

init

(int n)

cout <<

"隨機生成的磁碟序列為:"

<< endl;

for(

int i =

0; i < vt.

size()

; i++

) cout << endl;

now =

rand()

%200

; cout <<

"當前磁頭位於:"

<< now << endl;

}void

fcfs()

cout <<

"結束"

<< endl;

double x=sum*

1.0/n;

cout <<

"移動的磁軌長度為:"

<< sum << endl;

cout <<

"平均尋道長度為:"

<< x << endl;

}void

sstf()

else

cout << now <<

"-->";}

while

(l >=0)

while

(r < n)

cout <<

"結束"

<< endl;

double x = sum*

1.0/ n;

cout <<

"移動的磁軌長度為:"

<< sum << endl;

cout <<

"平均尋道長度為:"

<< x << endl;

}void

scan

(int flag)

for(

int i = index +

1; i < n; i++)}

else

for(

int i = index -

1; i >=

0; i--)}

cout <<

"結束"

<< endl;

double x = sum*

1.0/ n;

cout <<

"移動的磁軌長度為:"

<< sum << endl;

cout <<

"平均尋道長度為:"

<< x << endl;

}void

cscan

(int flag)

for(

int i = n-

1; i >= index+

1; i--)}

else

for(

int i =

0; i <=index-

1; i++)}

cout <<

"結束"

<< endl;

double x = sum *

1.0/ n;

cout <<

"移動的磁軌長度為:"

<< sum << endl;

cout <<

"平均尋道長度為:"

<< x << endl;

}void

print()

intmain()

else

if(x ==

"2")

else

if(x ==

"3")

else

if(flag ==

"2")

else

system

("pause");

system

("cls");

}else

if(x ==

"4")

else

if(flag ==

"2")

else

system

("pause");

system

("cls");

}else

if(x ==

"5")

else

}}

程序排程的四種演算法

作業系統 程序排程的四種演算法 作業由作業流進入輸入井然後觸發作業排程選擇作業進入主存區,建立程序之後,系統會對程序控制塊進行分類鏈入佇列,在就緒佇列中的程序會觸發程序排程,選擇合適的程序占用cpu資源。程序排程會根據合適的演算法進行排程,下面簡單的說一下四種常見的演算法。1.先到先服務排程演算法 ...

nginx四種排程演算法 高階

a 輪詢 預設 每個請求按時間順序逐一分配到不同的後端伺服器 b ip hash 每個請求按訪問ip的hash結果分配,同乙個ip客戶端固定訪問乙個後端伺服器 c url hash 按訪問url的hash結果來分配請求,使每個url定向到同乙個後端伺服器 1 預設輪訓 root proxy vim ...

作業系統四種排程演算法

一 實驗目的 1 掌握程序排程的任務 機制和方式。2 熟練掌握程序程序排程的演算法的原理。二 實驗內容 1 實現 短作業優先排程演算法 2 實現 先到先服務排程演算法 3 實現 非搶占式高響應比優先排程演算法 4 實現 搶占式高響應比優先排程演算法 三 實驗 實驗全部 見附件code.txt 實驗的...