[OS复习]设备管理4
生活随笔
收集整理的這篇文章主要介紹了
[OS复习]设备管理4
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.引入磁盤調度的例子
假定:一個硬盤的扇區長度為512個字節,磁道長度為32個扇區,平均尋道時間為20ms,傳輸速率為1MB/s,轉速為3600rpm。顯然, 如果一個長度為128K個字節的文件存放在該硬盤上,那么該文件將在該硬盤上占用256個扇區。問:如果系統從該硬盤上完整地讀入該文件, 將花費多長時間?A.若文件連續地存放在硬盤的8個相鄰的磁道上,那么系統完整地讀入該文件需要花費的時間:
(20+8.3+16.7)+(8.3+16.7)×7=220ms
B。若文件隨機地存放在硬盤的256個扇區上,那么讀入該文件需要花費的時間:
(20+8.3+0.5)×256=7373ms
比較與分析:
如果文件的存儲方式不同,系統訪問文件的效率就不同;即,文件的存儲方式影響著系統訪問文件的效率。文件的存儲方式對系統訪問文件的效率的影響主要在于:訪問文件總的尋道時間和總的旋轉延遲。
結論: 當系統訪問一組磁盤扇區時,如果能夠減少總的尋道時間和總的旋轉延遲,那么系統的訪問效率將得到提高。
2.磁盤調度算法小結FCFS、SSTF、SCAN、N-SCAN
假定:當前有9個磁盤讀寫請求;這9個磁盤讀寫請求要訪問的磁道號按照各個磁盤讀寫請求到達的次序依次為:55、58、39、18、90、160、150、38、184。此外,磁頭當前位于100號磁道上。如果系統使用SCAN算法,還假定磁頭當前的移動方向為磁道號增長的方向。問:如果系統分別使用FIFS策略、SSTF算法、SCAN算法調度磁盤,那么系統處理這9個磁盤讀寫請求時磁頭的平均尋道長度為多少?
1.FIFS
2.2?SSTF
2.3?SCAN
3.Disk Cache的工作原理
當用戶進程請求從磁盤讀入一個扇區時,系統首先在disk cache中尋找該扇區的副本。?如果能夠找到,那么系統將從disk cache中取出該扇區的副本并返給用戶進程;否則,系統首先從磁盤上讀入該扇區并在disk cache中為其建立一個副本,然后將該副本返給用戶進程。當用戶進程請求向磁盤上寫出一個扇區時,系統同樣首先在disk cache中尋找該扇區的副本。如果能夠找到,那么系統將根據用戶進程的請求修改該扇區的副本;否則,系統同樣首先從磁盤上讀入該扇區并在disk cache中為其建立一 個副本,然后根據用戶進程的請求修改該副本。
磁盤高速緩存的數據安全性:
Disk Cache中的數據寫出到磁盤:1.在系統空閑或需要淘汰被寫的緩存空間時進行寫。2.周期性地進行寫。3.立即寫回,稱為“寫穿透高速緩存”,相當于只有讀緩存而沒有寫緩存。
4.磁盤管理的另一個有效方法
高性能的文件系統,磁盤碎片整理,使磁盤文件盡量連續。磁盤容錯技術 :
磁盤中常常存儲著非常重要的數據,例如交易數據、帳目數據、學生成績等。若這些數據出了問題,或者存儲這些數據的磁盤報廢,其后果是非常嚴重的。因此,要求保證磁盤數據的可靠性。
磁盤容錯技術通過在系統中設置冗余部件來提高系統可靠性。冗余部件包括增加冗余的磁盤驅動器、磁盤控制器等,使得當磁盤系統某部分出現缺陷或故障時,磁盤仍能正常工作,且不至于造成數據的錯誤和丟失。
磁盤容錯技術級別:
第一級容錯技術 :最早出現、最基本的容錯技術,包括:雙份目錄和雙份文件分配表、熱修復重定向和寫后讀校驗。
第二級容錯技術 SFT-II:用于防止磁盤驅動器或磁盤控制器發生故障。包括:磁盤鏡像、磁盤雙工。磁盤雙工的成本較高;可靠性更高;對兩個磁盤的寫入是并行進行,速度較快;在某些實現中讀數據時,還可使用分離查找技術,從響應快的通道上取得數據,加快讀取速度。?
5.RAID技術?
RAID(Redundant Array of Independent/ Inexpensive Disks):獨立或廉價磁盤冗余陣列,其中,“獨立”是目前通用的一個行業術語,強調RAID陣列的重要性和可靠性;“廉價”是較早使用的一個術語,重在強調RAID磁盤陣列中采用的相對較小的、價格較便宜的磁盤。RAID磁盤陣列技術能以較低的成本,提供大容量、快速、安全可靠的磁盤存儲系統。從容錯的角度講,RAID技術應屬第二級容錯技術,但其內涵遠遠不止容錯。?一組可以并行工作的磁盤所構成的磁盤陣列,在磁盤子系統中執行的或者在主機系統中執行的磁盤陣列管理軟件。?磁盤陣列管理軟件把邏輯上連續的一組數據交叉分布存儲在磁盤陣列中的各個磁盤上,如圖所示:
該技術通常被稱為磁盤條帶化(Disk Striping),其好處是數據可以被并行讀出,給主機的感覺是磁盤快了多倍。
5.1條帶Strip的粒度
條帶可以是細粒度的(如一個字節或字), 也可以是粗粒度的(如一個扇區或多個扇區)。若采用細粒度條帶,幾乎每個存取請求都會導致同時存取RAID中的所有磁盤,使得無法同時響應多個存取請求。 因此,細粒度的條帶只利于對單個存取請求進行并行處理。若采用粗粒度條帶,不會使每個存取請求都同時存取RAID中的所有磁盤;但,多個獨立的存取請求通常會導致同時存取RAID中的所有磁盤。 顯然,粗粒度的條帶只利于對多個獨立的存取請求進行并行處理。磁盤陣列管理軟件在存儲數據的同時還將存儲相關的校驗信息;使得當磁盤陣列中的某個磁盤發生故障時,磁盤陣列管理軟件可以恢復存儲在該磁盤上的數據。
如果磁盤陣列管理軟件在主機系統中執行,則屬軟件實現的RAID;如果磁盤陣列管理軟件在磁盤子系統中執行,則屬硬件實現的RAID,相應的硬件稱為RAID控制器或RAID卡。采用RAID控制器方案的成本較高,但其效率高,不增加主機負擔。此類RAID技術對主機完全透明,在主機看來,RAID就是一個容量大、速度快、可靠性高的磁盤。
5.2RAID的常見組織形式(6種)
RAID Level 0、RAID Level 1、RAID Level 2、RAID Level 3、RAID Level 4、RAID Level 5、還可對基本RAID級別進行組合RAID0:
僅使用了條帶化技術,不存儲數據的校驗信息,能提供大容量、快速的磁盤存儲能力,具備最好的讀/寫性能和最低的成本,磁盤容量的利用率為100%。但其安全性最低,其中任何一個磁盤損壞便會導致整個系統不可使用。
RAID1:
僅使用了磁盤鏡像或磁盤雙工技術,能提供最好的安全性,其中任何一個磁盤損壞都不會導致數據丟失。但磁盤容量的利用率只有50%,成本較高;對磁盤的讀/寫性能沒有提高。 RAID3: 同時使用了磁盤條帶化技術(細粒度,條帶大小為一個字節或一個字)和奇偶校驗容錯技術,如圖所示: 假定磁盤陣列中有N個磁盤,則RAID3將數據條帶化到其中N-1個磁盤上,使用一個磁盤專門存儲N-1個磁盤的奇偶校驗數據。因此,N個磁盤中任意損壞一個,都不會導致數據的丟失。RAID3的優點是有較快的速度和較高的安全性,磁盤空間的利用率為(N-1)/N,成本相對RAID1較低。 RAID5: 與RAID3類似,主要區別是:1、RAID3使用一個磁盤專門存儲奇偶校驗數據,對于每一個寫操作(可能僅是一個條帶),均要寫奇偶校驗磁盤。不但奇偶校驗磁盤的負擔較重、容易損壞,而且多個獨立的寫操作不能并行進行。2、RAID5使用粗粒度的條帶,將奇偶校驗數據分布到每一個磁盤中,沒有專門的奇偶校驗盤,因而克服了RAID3的缺點。當然,RAID5比RAID3稍復雜。如圖:
6設備管理部分總結
設備管理功能、常用設備分配技術、I/O緩沖技術、磁盤工作原理、磁盤調度算法、磁盤陣列RAID技術。設備、通道、控制器與主機間的連接方式通常是多對多的關系;在主機的角度看,所有設備都連接在I/O總線上,它們通過I/O指令和某個I/O端口地址、中斷、通道、控制器等與主機交流,主機看不到這些設備具體細節。即插即用技術解決了設備間I/O端口地址、中斷等的沖突,方便了用戶在計算機系統中安裝外部設備;對設備的具體操作都由設備驅動程序完成。
為了便于使用,設備管理程序為用戶提供的是邏輯設備,而邏輯設備到物理設備的映射和轉換由設備管理程序完成;為了實現對設備的管理,操作系統需要設立多種表格,詳細記錄設備的分配和使用情況;從資源管理的角度講,設備可以分為獨占型設備和共享型設備兩大類。
緩沖區技術、虛擬設備技術、磁盤調度策略等等。操作系統中與磁盤管理相關的技術包括磁盤三維地址到一維地址的轉換、磁盤碎片的整理、磁盤高速緩存、磁盤調度策略、磁盤系統容錯、RAID技術等。
總結
以上是生活随笔為你收集整理的[OS复习]设备管理4的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [OS复习]设备管理3
- 下一篇: [OS复习]文件管理