導航:首頁 > 源碼編譯 > java磁碟調度演算法

java磁碟調度演算法

發布時間:2024-06-03 13:37:56

❶ 描述磁碟調度中涉及哪些時間

磁碟調度中分別涉及尋找時間和延遲時間。
磁碟驅動調度包括移臂調度和旋轉調度,
磁碟調度在多道程序設計的計算機系統中,各個進程可能會不斷提出不同的對磁碟進行讀/寫操作的請求。由於有時候這些進程的發送請求的速度比磁碟響應的還要快,因此我們有必要為每個磁碟設備建立一個等待隊列,常用的磁碟調度演算法有以下四種:

先來先服務演算法(FCFS),
最短尋道時間優先演算法(SSTF),
掃描演算法(SCAN),
循環掃描演算法(CSCAN)
希望我的回答對你有所幫助

❷ 磁碟調度演算法的簡介

一次磁碟讀寫操作的時間由尋找(尋道)時間、延遲時間和傳輸時間決定:
1) 尋找時間Ts:活動頭磁碟在讀寫信息前,將磁頭移動到指定磁軌所需要的時間。這個時間除跨越n條磁軌的時間外,還包括啟動磁臂的時間s,即:Ts = m * n + s。式中,m是與磁碟驅動器速度有關的常數,約為0.2ms,磁臂的啟動時間約為2ms。
2)延遲時間Tr:磁頭定位到某一磁軌的扇區(塊號)所需要的時間,設磁碟的旋轉速度為r,則:Tr = 1 / (2 * r)。對於硬碟,典型的旋轉速度為5400r/m,相當於一周11.1ms,則Tr為5.55ms;對於軟盤,其旋轉速度在300~600r/m之間,則Tr為50~100ms。
3) 傳輸時間Tt:從磁碟讀出或向磁碟寫入數據所經歷的時間,這個時間取決於每次所讀/寫的位元組數b和磁碟的旋轉速度:Tt = b / (r * N)。式中,r為磁碟每秒鍾的轉數;N為一個磁軌上的位元組數。
在磁碟存取時間的計算中,尋道時間與磁碟調度演算法相關,下面將會介紹分析幾種演算法,而延遲時間和傳輸時間都與磁碟旋轉速度相關,且為線性相關,所以在硬體上,轉速是磁碟性能的一個非常重要的參數。
總平均存取時間Ta可以表示為:Ta = Ts + Tr + Tt。
雖然這里給出了總平均存取時間的公式,但是這個平均值是沒有太大實際意義的,因為在實際的磁碟I/O操作中,存取時間與磁碟調度演算法密切相關。調度演算法直接決定尋找時間,從而決定了總的存取時間。

❸ 目前常用的磁碟調度演算法有哪幾種每種演算法優先考慮的問題是什麼

(1)先來先服務(FCFS,First-Come First-Served)
此演算法根據進程請求訪問磁碟的先後次序進行調度。
(2)最短尋道時間優先(SSTF ,ShortestSeekTimeFirst)
該演算法選擇這樣的進程,其要求訪問的磁軌與當前磁頭所在的磁軌距離最近,以使每次的尋道時間最短,但這種調度演算法卻不能保證平均尋道時間最短。
(3)掃描(SCAN)演算法
SCAN演算法不僅考慮到欲訪問的磁軌與當前磁軌的距離,更優先考慮的是磁頭的當前移動方向。
(4)循環掃描(CSCAN)演算法
CSCAN演算法規定磁頭單向移動,避免了掃描演算法導致的某些進程磁碟請求的嚴重延遲。
(5) N-Step-SCAN和FSCAN調度演算法
1) N-Step-SCAN演算法。為克服前述SSTF、SCAN、CSCAN等調度演算法都可能出現的磁臂停留在某處不動的情況即磁臂粘著現象,將磁碟請求隊列分成若干個長度為N的子隊列,按先來先服務演算法依次處理這些子隊列,而各隊列分別以掃描演算法進行處理。
2) FSCAN演算法
FSCAN演算法實質上是N步SCAN演算法的簡化。它只將磁碟請求訪問隊列分成兩個子隊列。一是當前所有請求磁碟I/O的進程形成的隊列,由磁碟調度按SCAN演算法進行處理。另一個隊列則是在 掃描期間,新出現的所有請求磁碟I/O進程的隊列,放入另一等待處理的請求隊列。這樣,所有的新請求都將被推遲到下一次掃描時處理。

❹ 磁碟調度演算法SSTF演算法 不限制編程語言,可以選用C/C++等

Java版的磁碟調度演算法,

其中演算法包含

1 先來先服務

2 最短時間優先

3 最短時間優先

4 單向掃描演算法

程序是動畫演示的,程序以圓模擬磁軌,以方塊模擬磁頭根據演算法在界面上演示。
程序運行截圖如下圖所示:

❺ Java 寫的磁碟調度演算法的掃描演算法 輸入數據報錯 報錯的是什麼意思啊 其他數據試了很多都沒問

提示「I/O設備錯誤」,一般都是由於硬碟壞道故障引起的。可以掛從盤用MHDD檢測硬碟壞道,如果你數據重要建議還是通過51Recovery這種專業機構進行數據恢復,數據恢復完成以後如果你的硬碟在保修期內就去保修;如果超過保修期了就用MHDD自帶的修理功能修復硬碟壞道。要提醒的是,壞道故障比較忌諱繼續通電嘗試,這樣問題會加重。Hellogh2005,希望有幫助.到IT實驗室,天天軟體測試網泡泡

❻ 磁碟調度演算法的常用磁碟調度演算法

FCFS演算法根據進程請求訪問磁碟的先後順序進行調度,這是一種最簡單的調度演算法。該演算法的優點是具有公平性。如果只有少量進程需要訪問,且大部分請求都是訪問簇聚的文件扇區,則有望達到較好的性能;但如果有大量進程競爭使用磁碟,那麼這種演算法在性能上往往接近於隨機調度。所以,實際磁碟調度中考慮一些更為復雜的調度演算法。
1、演算法思想:按訪問請求到達的先後次序服務。
2、優點:簡單,公平。
3、缺點:效率不高,相鄰兩次請求可能會造成最內到最外的柱面尋道,使磁頭反復移動,增加了服務時間,對機械也不利。
4、例子:
假設磁碟訪問序列:98,183,37,122,14,124,65,67。讀寫頭起始位置:53。求:磁頭服務序列和磁頭移動總距離(道數)。
由題意和先來先服務演算法的思想,得到下圖所示的磁頭移動軌跡。由此:
磁頭服務序列為:98,183,37,122,14,124,65,67
磁頭移動總距離=(98-53)+(183-98)+|37-183|+(122-37)+|14-122|+(124-14)+|65-124|+(67-65)=640(磁軌) SSTF演算法選擇調度處理的磁軌是與當前磁頭所在磁軌距離最近的磁軌,以使每次的尋找時間最短。當然,總是選擇最小尋找時間並不能保證平均尋找時間最小,但是能提供比FCFS演算法更好的性能。這種演算法會產生「飢餓」現象。
1、演算法思想:優先選擇距當前磁頭最近的訪問請求進行服務,主要考慮尋道優先。
2、優點:改善了磁碟平均服務時間。
3、缺點:造成某些訪問請求長期等待得不到服務。
4、例子:對上例的磁碟訪問序列,可得磁頭移動的軌跡如下圖。 SCAN演算法在磁頭當前移動方向上選擇與當前磁頭所在磁軌距離最近的請求作為下一次服務的對象。由於磁頭移動規律與電梯運行相似,故又稱為電梯調度演算法。SCAN演算法對最近掃描過的區域不公平,因此,它在訪問局部性方面不如FCFS演算法和SSTF演算法好。
演算法思想:當設備無訪問請求時,磁頭不動;當有訪問請求時,磁頭按一個方向移動,在移 動過程中對遇到的訪問請求進行服務,然後判斷該方向上是否還有訪問請求,如果有則繼續掃描;否則改變移動方向,並為經過的訪問請求服務,如此反復。如下圖所示:
掃描演算法(電梯演算法)的磁頭移動軌跡
2、優點:克服了最短尋道優先的缺點,既考慮了距離,同時又考慮了方向。 在掃描演算法的基礎上規定磁頭單向移動來提供服務,回返時直接快速移動至起始端而不服務任何請求。由於SCAN演算法偏向於處理那些接近最里或最外的磁軌的訪問請求,所以使用改進型的C-SCAN演算法來避免這個問題。
釆用SCAN演算法和C-SCAN演算法時磁頭總是嚴格地遵循從盤面的一端到另一端,顯然,在實際使用時還可以改進,即磁頭移動只需要到達最遠端的一個請求即可返回,不需要到達磁碟端點。這種形式的SCAN演算法和C-SCAN演算法稱為LOOK和C-LOOK調度。這是因為它們在朝一個給定方向移動前會查看是否有請求。注意,若無特別說明,也可以默認SCAN演算法和C-SCAN演算法為LOOK和C-LOOK調度。

❼ 目前常用的磁碟調度演算法有哪幾種每種演算法優先考慮的問題是什麼

  1. 先來先服務演算法:這個演算法實際上不考慮訪問者要求訪問的物理位置,而只是考慮訪問者提出訪問請求的先後次序。

  2. 最短尋道時間優先演算法:要求訪問的磁軌,與當前磁頭所在的磁軌距離最近,以使每次的尋道時間最短。

  3. 掃描演算法:「電梯調度」是沿著臂的移動方向去選擇離當前讀寫詞頭最近的哪個磁軌的訪問者。

  4. .循環掃描演算法:防止飢餓現象

閱讀全文

與java磁碟調度演算法相關的資料

熱點內容
阿里雲內網vpn伺服器 瀏覽:99
l命令第一個點對第二個點對不上 瀏覽:825
oracle導出表命令 瀏覽:905
怎麼寫域名加密 瀏覽:1003
手機文件壓縮出錯 瀏覽:522
如何登錄毒app 瀏覽:836
汽車中控台加密 瀏覽:862
海南農村信用社app如何開通簡訊 瀏覽:809
phpdns緩存 瀏覽:415
ipad騰訊視頻app如何播放本地視頻 瀏覽:990
蝦米伺服器關閉如何找到以前的歌 瀏覽:18
php自動建站 瀏覽:475
命令與征服3游俠網 瀏覽:970
騰訊雲買哪個地區伺服器 瀏覽:249
香港哪裡有app賣內地零食 瀏覽:683
編譯內核找不到工具鏈 瀏覽:453
java常見模式 瀏覽:504
典欣空調壓縮機 瀏覽:425
app如何認定許可權 瀏覽:855
兩個復數相除的角度計演算法則 瀏覽:590