3具有通道io系統(tǒng)管理5 4緩沖技術(shù)5 5驅(qū)動(dòng)調(diào)度_第1頁(yè)
3具有通道io系統(tǒng)管理5 4緩沖技術(shù)5 5驅(qū)動(dòng)調(diào)度_第2頁(yè)
3具有通道io系統(tǒng)管理5 4緩沖技術(shù)5 5驅(qū)動(dòng)調(diào)度_第3頁(yè)
3具有通道io系統(tǒng)管理5 4緩沖技術(shù)5 5驅(qū)動(dòng)調(diào)度_第4頁(yè)
3具有通道io系統(tǒng)管理5 4緩沖技術(shù)5 5驅(qū)動(dòng)調(diào)度_第5頁(yè)
已閱讀5頁(yè),還剩59頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

15.1I/O硬件原理5.2I/O軟件原理5.3具有通道的I/O系統(tǒng)管理5.4緩沖技術(shù)5.5驅(qū)動(dòng)調(diào)度技術(shù)5.6設(shè)備分配5.7虛擬設(shè)備第五章

設(shè)備管理2一、通道命令和通道程序二、I/O指令和主機(jī)I/O程序三、通道啟動(dòng)和I/O操作過(guò)程5.3具有通道的I/O系統(tǒng)管理3一、通道命令和通道程序(1)具有通道的計(jì)算機(jī)系統(tǒng),I/O程序設(shè)計(jì)涉及:CPU執(zhí)行I/O指令,通道執(zhí)行通道命令,以及CPU和通道之間的通信。1、通道命令通道也叫I/O處理機(jī),具有自己的指令系統(tǒng),通道的指令稱為通道命令。通道命令是通道從主存取出并控制I/O設(shè)備執(zhí)行I/O操作的命令字。4一、通道命令和通道程序(2)2、通道命令字格式命令碼:規(guī)定操作,數(shù)據(jù)傳輸(讀、寫(xiě),取狀態(tài))、轉(zhuǎn)移、控制數(shù)據(jù)主存地址:本條通道命令訪問(wèn)的內(nèi)存始址或末尾地址標(biāo)志碼:通道程序的鏈接方式或標(biāo)志通道命令的特點(diǎn)傳送字節(jié)個(gè)數(shù):本次交換的字節(jié)個(gè)數(shù)命令碼數(shù)據(jù)主存地址標(biāo)志碼傳送字節(jié)個(gè)數(shù)5一、通道命令和通道程序(3)3、通道程序用通道命令編寫(xiě)的程序稱通道程序,通道程序由多條通道命令組成,每次啟動(dòng)可以完成復(fù)雜的I/O控制。通道程序放在內(nèi)存中,通道程序首地址放在內(nèi)存一個(gè)固定單元中,該單元稱為通道地址字。向CPU匯報(bào)通道和設(shè)備執(zhí)行情況的信息放在內(nèi)存另一個(gè)固定單元中,稱為通道狀態(tài)字。6二、I/O指令和主機(jī)I/O程序IBM系統(tǒng)主機(jī)提供一組完成I/O操作的I/O指令。I/O指令有:?jiǎn)?dòng)I/O(StartI/O,SIO)

查詢I/O(TestI/O,TIO)

查詢通道(TestChannel,TCH)

停止I/O(HaltI/O,HIO)

停止設(shè)備(HaltDevice,HDV)SIOX’00E’7三、通道啟動(dòng)和I/O操作過(guò)程(1)CPU是主設(shè)備,通道是從設(shè)備,CPU和設(shè)備之間是主從關(guān)系,需要相互配合協(xié)調(diào)才能完成I/O操作。那么CPU如何通知通道做什么?通道又如何告知CPU其狀態(tài)和工作情況呢?通道方式I/O過(guò)程三個(gè)階段l、I/O啟動(dòng)階段2、I/O操作階段3、I/O結(jié)束階段8三、通道啟動(dòng)和I/O操作過(guò)程(2)

中央處理器用戶程序操作系統(tǒng)保護(hù)進(jìn)程j現(xiàn)場(chǎng)組織CCWCCW首址送CAW發(fā)SIO分析條件碼出錯(cuò)進(jìn)行處理啟動(dòng)成功進(jìn)程j等待選進(jìn)程K運(yùn)行保護(hù)進(jìn)程K現(xiàn)場(chǎng)分析中斷文件處理I/O中斷選擇進(jìn)程運(yùn)行判斷狀態(tài)形成條件碼執(zhí)行CCW控制設(shè)備操作記錄操作狀態(tài)到CSW產(chǎn)生中斷事件CSW存入主存通道號(hào)、設(shè)備號(hào)存入主存特定單元發(fā)I/O中斷執(zhí)行規(guī)定I/O操作控制器和設(shè)備結(jié)束中斷通道I/O控制器和設(shè)備請(qǐng)求I/O進(jìn)程j進(jìn)程k進(jìn)程j或k9一、單緩沖二、雙緩沖三、多緩沖四、緩沖區(qū)高速緩存5.4緩沖技術(shù)10?改善中央處理器與外圍設(shè)備之間速度不匹配的矛盾

?協(xié)調(diào)邏輯記錄大小與物理記錄大小不一致

?提高CPU和I/O設(shè)備的并行性引入緩沖技術(shù)的目的111、寫(xiě)設(shè)備進(jìn)程執(zhí)行寫(xiě)操作輸出數(shù)據(jù)時(shí),向系統(tǒng)申請(qǐng)一個(gè)緩沖區(qū),若為順序?qū)懻?qǐng)求,則不斷把數(shù)據(jù)填到緩沖區(qū),直到被裝滿。此后,進(jìn)程繼續(xù)它的計(jì)算,系統(tǒng)將緩沖區(qū)內(nèi)容寫(xiě)到I/O設(shè)備上。2、讀設(shè)備進(jìn)程執(zhí)行讀操作輸入數(shù)據(jù)時(shí),向系統(tǒng)申請(qǐng)一個(gè)緩沖區(qū),系統(tǒng)將一個(gè)物理記錄的內(nèi)容讀到緩沖區(qū),根據(jù)進(jìn)程要求,把當(dāng)前需要的邏輯記錄從緩沖區(qū)中選出并傳送給進(jìn)程。緩沖技術(shù)實(shí)現(xiàn)基本思想(1)12在輸出數(shù)據(jù)時(shí),只有在系統(tǒng)還來(lái)不及騰空緩沖而進(jìn)程又要寫(xiě)數(shù)據(jù)時(shí),它才需要等待;在輸入數(shù)據(jù)時(shí),僅當(dāng)緩沖區(qū)空而進(jìn)程又要從中讀取數(shù)據(jù)時(shí),它才被迫等待。緩沖區(qū)有不同的類型:1、單緩沖2、雙緩沖3、多緩沖4、緩沖區(qū)高速緩存緩沖技術(shù)實(shí)現(xiàn)基本思想(2)13一、單緩沖在設(shè)備和處理機(jī)之間設(shè)置一個(gè)緩沖。設(shè)備與處理機(jī)交換數(shù)據(jù)時(shí),先把交換的數(shù)據(jù)寫(xiě)入緩沖區(qū),然后需要數(shù)據(jù)的設(shè)備/處理機(jī)再?gòu)木彌_區(qū)中取走數(shù)據(jù)。特點(diǎn):緩沖區(qū)數(shù)只有一個(gè);設(shè)備與處理機(jī)對(duì)緩沖區(qū)的操作是串行的。工作區(qū)緩沖區(qū)用戶進(jìn)程操作系統(tǒng)傳送(M)輸入(T)I/O設(shè)備處理(C)數(shù)據(jù)處理時(shí)間約為max[C,T]+M14二、雙緩沖(1)在設(shè)備和處理機(jī)之間設(shè)置2個(gè)緩沖。輸入數(shù)據(jù)時(shí),首先填滿緩沖區(qū)1,操作系統(tǒng)可從緩沖區(qū)1把數(shù)據(jù)送到用戶進(jìn)程區(qū),用戶進(jìn)程便可對(duì)數(shù)據(jù)進(jìn)行加工計(jì)算;與此同時(shí),輸入設(shè)備填充緩沖區(qū)2。當(dāng)緩沖區(qū)1空出后,輸入設(shè)備再次向緩沖區(qū)1輸入。操作系統(tǒng)又可把緩沖區(qū)2的數(shù)據(jù)傳送到用戶進(jìn)程區(qū),用戶進(jìn)程開(kāi)始加工緩沖2的數(shù)據(jù)。只有當(dāng)兩個(gè)均為空時(shí),需數(shù)據(jù)的進(jìn)程才等待,提高了設(shè)備與處理機(jī)并行操作的程度。15二、雙緩沖(2)輸入T傳送M計(jì)算C一塊數(shù)據(jù)的處理時(shí)間:MAX(C+M,T)16三、多緩沖一組緩沖區(qū)組成循環(huán)隊(duì)列。多緩沖的緩沖區(qū)是系統(tǒng)的公共資源,可供各個(gè)進(jìn)程共享,并由系統(tǒng)統(tǒng)一分配和管理。緩沖區(qū)可用途分為:輸入緩沖區(qū),處理緩沖區(qū)和輸出緩沖區(qū)。17四、緩沖區(qū)高速緩存(1)1、目的盡量復(fù)用從外部設(shè)備已經(jīng)讀入內(nèi)存中的信息,或者延長(zhǎng)即將寫(xiě)入或者已經(jīng)寫(xiě)入外部設(shè)備的信息的有效期,避免或減少外存訪問(wèn)。已經(jīng)寫(xiě)入外存而在內(nèi)存依然存在的信息可以看做從外存讀入內(nèi)存的信息。18四、緩沖區(qū)高速緩存(2)2、高速緩存實(shí)現(xiàn)實(shí)現(xiàn)思想內(nèi)核建立數(shù)據(jù)緩沖區(qū)高速緩存,保存最近被使用過(guò)的磁盤(pán)數(shù)據(jù)塊。1)當(dāng)請(qǐng)求從指定文件讀寫(xiě)數(shù)據(jù)時(shí),給定設(shè)備號(hào)和盤(pán)塊號(hào),必須能快速查詢?cè)摂?shù)據(jù)塊是否在高速緩存中,如果在的話,是在哪個(gè)緩沖區(qū)并能獲得其內(nèi)容;2)高速緩存中的緩沖區(qū)鏈表有一個(gè)緩沖控制塊,包含:邏輯設(shè)備號(hào)、盤(pán)塊號(hào)、高速緩存虛擬地址、數(shù)據(jù)所屬文件描述符、數(shù)據(jù)在文件內(nèi)的位移、緩沖區(qū)鏈接指針、空閑表緩沖區(qū)指針、活動(dòng)計(jì)數(shù)、狀態(tài)字節(jié)等;19四、緩沖區(qū)高速緩存(3)3)如果數(shù)據(jù)塊不在高速緩存中,需要從磁盤(pán)上讀數(shù)據(jù),并將其緩沖,系統(tǒng)采用合適算法把盡可能多的數(shù)據(jù)保存在緩沖區(qū)高速緩存。4)向磁盤(pán)上寫(xiě)的數(shù)據(jù)也被暫存于數(shù)據(jù)緩沖區(qū)高速緩存中,以供回寫(xiě)磁盤(pán)之前再次使用。內(nèi)核還會(huì)判定數(shù)據(jù)是否真需要回寫(xiě),或數(shù)據(jù)是否很快就要被回寫(xiě),盡量采用延遲寫(xiě)減少I/O次數(shù)。20四、緩沖區(qū)高速緩存(4)5)文件關(guān)閉或撤銷時(shí),解決不再需要的緩沖區(qū)的重用,可采用策略(如LRU)把單獨(dú)的緩沖區(qū)鏈在一起,于是,最不可能被再次訪問(wèn)的緩沖區(qū)將被最先重用。6)提供高速緩存操作,為文件驅(qū)動(dòng)程序?qū)崿F(xiàn)讀寫(xiě)文件數(shù)據(jù),通常有:寫(xiě)緩存、延遲寫(xiě)緩存、讀緩存、預(yù)讀緩存等。21一、存儲(chǔ)設(shè)備的物理結(jié)構(gòu)二、循環(huán)排序三、優(yōu)化分布四、搜查定位五、獨(dú)立磁盤(pán)冗余陣列六、提高磁盤(pán)I/O速度的方法5.5驅(qū)動(dòng)調(diào)度技術(shù)22什么是驅(qū)動(dòng)調(diào)度對(duì)于磁盤(pán),同時(shí)會(huì)有若干個(gè)輸入輸出請(qǐng)求來(lái)到并等待處理,系統(tǒng)必須采用一種調(diào)度策略,能按最佳次序執(zhí)行要求訪問(wèn)的諸請(qǐng)求,這就叫驅(qū)動(dòng)調(diào)度,使用的算法叫驅(qū)動(dòng)調(diào)度算法。驅(qū)動(dòng)調(diào)度能減少為若干個(gè)I/O請(qǐng)求服務(wù)所需的總時(shí)間,提高系統(tǒng)效率。除了I/O請(qǐng)求的優(yōu)化排序外,信息在磁盤(pán)上的排列方式、存儲(chǔ)空間分配方法都能影響存取訪問(wèn)速度23一、存儲(chǔ)設(shè)備的物理結(jié)構(gòu)(1)磁道扇區(qū)24一、存儲(chǔ)設(shè)備的物理結(jié)構(gòu)(2)柱面扇區(qū)磁臂磁頭25一、存儲(chǔ)設(shè)備的物理結(jié)構(gòu)(3)信息記錄在磁道上,多個(gè)盤(pán)片,正反兩面都用來(lái)記錄信息,每面一個(gè)磁頭。所有盤(pán)面中處于同一磁道號(hào)上的所有磁道組成一個(gè)柱面。物理地址形式:磁頭號(hào)(盤(pán)面號(hào))磁道號(hào)(柱面號(hào))扇區(qū)號(hào)26一、存儲(chǔ)設(shè)備的物理結(jié)構(gòu)(4)磁盤(pán)系統(tǒng)由磁盤(pán)本身和驅(qū)動(dòng)控制設(shè)備組成,實(shí)際存取讀寫(xiě)的動(dòng)作過(guò)程是由磁盤(pán)驅(qū)動(dòng)控制設(shè)備按照主機(jī)要求完成的。一次訪盤(pán)請(qǐng)求包含的操作信息:讀/寫(xiě),磁盤(pán)地址(設(shè)備號(hào),柱面號(hào),磁頭號(hào),扇區(qū)號(hào)),內(nèi)存地址(源/目)27一、存儲(chǔ)設(shè)備的物理結(jié)構(gòu)(5)完成過(guò)程由三個(gè)動(dòng)作組成:尋道(時(shí)間):磁頭移動(dòng)定位到指定磁道旋轉(zhuǎn)延遲(時(shí)間):等待指定扇區(qū)從磁頭下旋轉(zhuǎn)經(jīng)過(guò)數(shù)據(jù)傳輸(時(shí)間):數(shù)據(jù)在磁盤(pán)與內(nèi)存之間的實(shí)際傳輸磁盤(pán)是一種直接(隨機(jī))存取存儲(chǔ)設(shè)備。每個(gè)物理記錄有確定的位置和唯一的地址,存取任何一個(gè)物理塊所需的時(shí)間幾乎不依賴于此信息的位置。28二、循環(huán)排序

(1)循環(huán)排序指的是對(duì)到來(lái)的多個(gè)磁盤(pán)I/O請(qǐng)求安排服務(wù)的排列順序。該順序影響I/O操作的總時(shí)間??紤]磁道保存4個(gè)記錄的旋轉(zhuǎn)型設(shè)備,假定收到四個(gè)I/O請(qǐng)求。旋轉(zhuǎn)一周耗時(shí)20ms。請(qǐng)求次序 記錄號(hào)(1) 讀記錄4

(2) 讀記錄3

(3) 讀記錄2

(4) 讀記錄129二、循環(huán)排序

(2)?方法1:按照I/O請(qǐng)求次序讀記錄4、3、2、1,平均用1/2周定位,再加上1/4周讀出記錄,總處理時(shí)間等于1/2+1/4+3*3/4=3周,即60毫秒。定位并讀出記錄4需要1/2+1/4毫秒,讀出記錄4后,磁盤(pán)已經(jīng)旋轉(zhuǎn)到記錄1,再旋轉(zhuǎn)2/4周,到達(dá)記錄3,再旋轉(zhuǎn)1/4周,讀出記錄3。同理,讀出記錄3后,磁盤(pán)旋轉(zhuǎn)到記錄4,再旋轉(zhuǎn)3/4周,讀出記錄2。讀出記錄1也需要3/4周時(shí)間。1234逆時(shí)針旋轉(zhuǎn)30二、循環(huán)排序

(3)?方法2:如果次序?yàn)樽x記錄1、2、3、4。總處理時(shí)間等于1/2+1/4+3*1/4=1.5周,即30毫秒。定位并讀出記錄1需要1/2+1/4周時(shí)間,讀出記錄1后,磁盤(pán)已經(jīng)旋轉(zhuǎn)到紀(jì)錄2,定位并讀出紀(jì)錄2的時(shí)間是1/4周,定位并讀出紀(jì)錄3和記錄4的時(shí)間也都是1/4周。1234逆時(shí)針旋轉(zhuǎn)31二、循環(huán)排序

(4)?方法3:如果知道當(dāng)前讀位置是記錄3,則采用次序?yàn)樽x記錄4、1、2、3??偺幚頃r(shí)間等于1周,即20毫秒。如果知道當(dāng)前讀位置是記錄3,則不必花費(fèi)平均1/2周去尋找某個(gè)記錄。因?yàn)楫?dāng)前的讀位置是記錄3,所以只需旋轉(zhuǎn)1/4周即可讀出記錄4,然后再旋轉(zhuǎn)1/4周即可讀出記錄1,…,旋轉(zhuǎn)一周可讀出4個(gè)記錄。32三、優(yōu)化分布(1)信息在存儲(chǔ)空間的排列方式會(huì)影響存取等待時(shí)間??紤]10個(gè)邏輯記錄A,B……,J被存于旋轉(zhuǎn)型設(shè)備上,每道存放10個(gè)記錄,安排如下:物理塊邏輯紀(jì)錄

1-10A-J假定旋轉(zhuǎn)速度為20ms/周,處理程序讀出每個(gè)記錄后花4ms進(jìn)行處理。則讀出記錄A需要旋轉(zhuǎn)20/10=2ms,即旋轉(zhuǎn)一個(gè)扇區(qū),處理完記錄A之后磁盤(pán)又旋轉(zhuǎn)了B、C兩個(gè)扇區(qū)(因?yàn)樘幚砻總€(gè)記錄需4ms時(shí)間),將轉(zhuǎn)到記錄D的開(kāi)始。所以為了讀出B,必須再轉(zhuǎn)一周。從D開(kāi)始旋轉(zhuǎn)到B開(kāi)始共有8個(gè)扇區(qū),需耗時(shí)16ms。33三、優(yōu)化分布(2)處理10個(gè)記錄的總時(shí)間:10毫秒(移動(dòng)到記錄A的平均時(shí)間)+2毫秒(讀記錄A)+4毫秒(處理記錄A)+9×[16毫秒(訪問(wèn)下一記錄)+2毫秒(讀記錄)+4毫秒(處理記錄)]

=214毫秒ABCDEFGHIJ逆時(shí)針旋轉(zhuǎn)34三、優(yōu)化分布(3)按照下面方式對(duì)信息優(yōu)化分布AHEBIFCJGD則讀出記錄A并處理結(jié)束后,恰巧轉(zhuǎn)至記錄B的位置,立即就可讀出并處理。除了記錄A需要1/2周(10ms)旋轉(zhuǎn)尋道時(shí)間外,其它9個(gè)記錄沒(méi)有旋轉(zhuǎn)尋道時(shí)間。10個(gè)記錄都需要2ms的讀出一個(gè)扇區(qū)的時(shí)間和4ms的處理時(shí)間。35三、優(yōu)化分布(4)處理10個(gè)記錄的總時(shí)間:10毫秒(移動(dòng)到記錄A的平均時(shí)間)+10×[2毫秒(讀記錄)×4毫秒(處理記錄)]=70毫秒36四、搜查定位(1)搜查定位指的是尋道,即磁頭徑向移動(dòng)到目標(biāo)磁道的操作,也稱移臂,相應(yīng)策略稱為移臂調(diào)度策略。移臂調(diào)度的若干策略1、“先來(lái)先服務(wù)”算法2、“電梯調(diào)度”算法3、“最短查找時(shí)間優(yōu)先”算法4、“掃描”算法5、”分步掃描”算法6、“循環(huán)掃描”算法7、Linux磁盤(pán)調(diào)度算法37四、搜查定位(2)1、“先來(lái)先服務(wù)”算法先來(lái)先服務(wù)算法根據(jù)訪問(wèn)請(qǐng)求的先后次序選擇先提出的訪問(wèn)請(qǐng)求為之服務(wù)。容易實(shí)現(xiàn),又公平合理。它的缺點(diǎn)是效率不高。38四、搜查定位(3)2、“電梯調(diào)度”算法選擇沿臂的移動(dòng)方向最近的柱面,如果同一柱面上有多個(gè)請(qǐng)求,還需進(jìn)行旋轉(zhuǎn)優(yōu)化。如果這個(gè)方向沒(méi)有訪問(wèn)請(qǐng)求時(shí),就改變臂的移動(dòng)方向,處理所遇到的最近的I/O請(qǐng)求,非常類似于電梯的調(diào)度規(guī)則。舉例:假定磁頭正從100號(hào)磁道開(kāi)始,向磁道號(hào)增加方向移動(dòng),這時(shí)9個(gè)進(jìn)程先后提出訪問(wèn)以下磁道:55、58、39、18、90、160、150、38、184,則按電梯調(diào)度算法進(jìn)行調(diào)度的過(guò)程如下:39四、搜查定位(4)18383955589010015016018440四、搜查定位(5)3、“最短查找時(shí)間優(yōu)先”算法本算法總是優(yōu)先滿足距離磁頭最近的訪問(wèn)請(qǐng)求。舉例:假定磁頭位置當(dāng)前在100號(hào)磁道,這時(shí)9個(gè)進(jìn)程先后提出訪問(wèn)以下磁道:55、58、39、18、90、190、120、38、194,

則按最短查找時(shí)間優(yōu)先調(diào)度算法進(jìn)行調(diào)度的過(guò)程如下:41四、搜查定位(6)18383955589010012019019442四、搜查定位(7)4、“掃描”算法本算法規(guī)定磁頭從最小號(hào)的磁道移動(dòng)到最大號(hào)的磁道,然后再?gòu)淖畲筇?hào)磁道移到最小號(hào)磁道,反反復(fù)復(fù)。在移臂的過(guò)程中發(fā)現(xiàn)磁道上有I/O請(qǐng)求則滿足之。該算法非常類似于電梯算法,但不同的是電梯算法只掃描到當(dāng)前移動(dòng)方向上有請(qǐng)求的最大磁道號(hào)或最小磁道號(hào),“掃描”算法則要掃描到盡頭的磁道(終點(diǎn)),即使那里沒(méi)有I/O請(qǐng)求。也就是說(shuō)I/O請(qǐng)求次序及個(gè)數(shù)不影響“掃描”算法移動(dòng)過(guò)的磁道數(shù)及掃描路徑。43四、搜查定位(8)舉例:假定磁頭正在從大號(hào)磁道向小號(hào)磁道移動(dòng),磁道編號(hào)為0~200。這時(shí)9個(gè)進(jìn)程先后提出訪問(wèn)以下磁道:55、58、39、18、90、190、120、38、194,

則按“掃描”算法進(jìn)行調(diào)度的過(guò)程如下:183839555890100120190194020044四、搜查定位(9)5、“分步掃描”算法將磁盤(pán)請(qǐng)求隊(duì)列分成若干個(gè)長(zhǎng)度為N的子隊(duì)列,磁盤(pán)調(diào)度按先來(lái)先服務(wù)算法依次處理這些隊(duì)列。當(dāng)正在處理某子隊(duì)列時(shí),如果又出現(xiàn)新的磁盤(pán)I/O請(qǐng)求,便將新請(qǐng)求進(jìn)程放入其它隊(duì)列。舉例:按分步掃描算法對(duì)進(jìn)程提出的磁盤(pán)訪問(wèn)請(qǐng)求進(jìn)行調(diào)度,每個(gè)子隊(duì)列的長(zhǎng)度為3。則對(duì)先后到來(lái)的磁盤(pán)訪問(wèn)請(qǐng)求進(jìn)行調(diào)度的一個(gè)實(shí)例如下:45四、搜查定位(10)在時(shí)刻T1到達(dá)三個(gè)請(qǐng)求,形成隊(duì)列1隊(duì)列1在時(shí)刻T2,訪問(wèn)完磁道55,這時(shí)又到達(dá)三個(gè)請(qǐng)求(其中有兩個(gè)距離磁道58和39很近)形成隊(duì)列2隊(duì)列1隊(duì)列2在時(shí)刻T3,隊(duì)列1處理完畢,開(kāi)始準(zhǔn)備訪問(wèn)隊(duì)列2的磁道18隊(duì)列1隊(duì)列2圖1圖2圖346四、搜查定位(11)6、“循環(huán)掃描”算法移動(dòng)臂總從0號(hào)柱面至最大號(hào)柱面順序掃描,然后,直接返回0號(hào)柱面重復(fù)進(jìn)行,歸途中不再服務(wù),構(gòu)成了一個(gè)循環(huán)。舉例:規(guī)定磁頭向磁道號(hào)增加的方向移動(dòng)時(shí)才訪問(wèn)磁道。磁道編號(hào)為0~200。假定磁頭正從100號(hào)磁道開(kāi)始,向磁道號(hào)增加方向移動(dòng),這時(shí)9個(gè)進(jìn)程先后提出訪問(wèn)以下磁道:55、58、39、18、90、160、150、38、184

,則按循環(huán)掃描算法進(jìn)行調(diào)度的過(guò)程如下:47四、搜查定位(12)183839555890100150160184020048四、搜查定位(13)7、Linux磁盤(pán)調(diào)度算法1)電梯調(diào)度算法2)時(shí)限調(diào)度算法3)預(yù)期調(diào)度算法49四、搜查定位(14)1)Linux電梯調(diào)度算法(1)如果新請(qǐng)求與隊(duì)列中等待請(qǐng)求的數(shù)據(jù)處于同一磁盤(pán)扇區(qū)或者直接相鄰的扇區(qū),則現(xiàn)有請(qǐng)求和新請(qǐng)求合并成一個(gè)請(qǐng)求。(2)如果隊(duì)列中的請(qǐng)求已經(jīng)存在很長(zhǎng)時(shí)間,則新請(qǐng)求將被插入到隊(duì)列尾部。(3)如果存在合適的位置,則新請(qǐng)求將按順序插入到隊(duì)列中;如果沒(méi)有合適的位置,則新的請(qǐng)求將被插入到隊(duì)列尾部。50四、搜查定位(15)2)時(shí)限調(diào)度算法在電梯調(diào)度的基礎(chǔ)上考慮請(qǐng)求為讀還是寫(xiě),異步還是同步,請(qǐng)求等待的時(shí)間長(zhǎng)短,根據(jù)這些因素修正I/O請(qǐng)求的調(diào)度次序,避免饑餓現(xiàn)象(不公平現(xiàn)象)發(fā)生。51四、搜查定位(16)3)預(yù)期調(diào)度算法預(yù)期調(diào)度算法是對(duì)時(shí)限調(diào)度算法的補(bǔ)充,它預(yù)測(cè)已經(jīng)發(fā)出讀請(qǐng)求的進(jìn)程很可能會(huì)在將來(lái)不久再次發(fā)出訪問(wèn)上次所讀磁道附近的請(qǐng)求,于是不急于執(zhí)行下一個(gè)請(qǐng)求,而是延遲若干毫秒,在延期內(nèi)若有符合預(yù)測(cè)的新請(qǐng)求則滿足之,沒(méi)有再執(zhí)行下一個(gè)請(qǐng)求。52五、獨(dú)立磁盤(pán)冗余陣列RAID(1)1、什么是獨(dú)立磁盤(pán)冗余陣列RAID是利用一臺(tái)磁盤(pán)陣列控制器統(tǒng)一管理和控制一組磁盤(pán)驅(qū)動(dòng)器,組成一個(gè)速度快、可靠性高、性能價(jià)格比好的大容量磁盤(pán)系統(tǒng)。2、RAID的策略RAID填補(bǔ)了CPU速度快與磁盤(pán)設(shè)備速度慢之間的間隙,其策略是:用一組容量小、獨(dú)立的、可并行工作的磁盤(pán)驅(qū)動(dòng)器組成陣列來(lái)代替單一的大容量磁盤(pán),再增加冗余技術(shù),數(shù)據(jù)分布存儲(chǔ),單個(gè)I/O請(qǐng)求能并行地從多個(gè)磁盤(pán)驅(qū)動(dòng)器同時(shí)存取數(shù)據(jù)。53五、獨(dú)立磁盤(pán)冗余陣列RAID(2)RAID共同特性①RAID是一組物理磁盤(pán)驅(qū)動(dòng)器,可被操作系統(tǒng)看作是單一邏輯磁盤(pán)驅(qū)動(dòng)器;②數(shù)據(jù)被分布存儲(chǔ)在陣列橫跨的物理驅(qū)動(dòng)器上;③冗余磁盤(pán)的作用是保存奇偶校驗(yàn)信息,當(dāng)磁盤(pán)出現(xiàn)失誤時(shí)它能確保數(shù)據(jù)的恢復(fù)。54五、獨(dú)立磁盤(pán)冗余陣列RAID(3)RAID0數(shù)據(jù)劃成條塊被分布存儲(chǔ)在橫跨陣列中的所有磁盤(pán)上邏輯上連續(xù)的數(shù)據(jù)條塊,在物理上可被依次存儲(chǔ)在橫向相鄰的磁盤(pán)驅(qū)動(dòng)器上通過(guò)陣列管理軟件進(jìn)行邏輯地址空間到物理地址空間的映射無(wú)冗余校驗(yàn)功能,可靠性差55五、獨(dú)立磁盤(pán)冗余陣列RAID(4)Strip0Strip4Strip8Strip12Strip1Strip5Strip9Strip13Strip10Strip3Strip7Strip15Strip10Strip11Strip2Strip6Strip14Strip10DatamappingforaRAIDLevel0ArrayStrip0Strip1Strip2Strip3Strip4Strip5Strip6Strip7Strip8...ArrayManagementsoftware56五、獨(dú)立磁盤(pán)冗余陣列RAID(5)RAID1雙份數(shù)據(jù),每個(gè)盤(pán)都有一個(gè)包含相同數(shù)據(jù)的鏡像盤(pán)。①讀請(qǐng)求能通過(guò)包含相同請(qǐng)求數(shù)據(jù)中的任何一個(gè)磁盤(pán)提供服務(wù),其中的一個(gè)所化查找和搜索時(shí)間最少;②寫(xiě)操作時(shí),要求改寫(xiě)對(duì)應(yīng)的兩個(gè)數(shù)據(jù)子塊,可采用并行操作,寫(xiě)操作的性能由并行操作中較慢的一個(gè)決定;③一個(gè)驅(qū)動(dòng)器出現(xiàn)故障,數(shù)據(jù)可以從鏡像盤(pán)獲得。57五、獨(dú)立磁盤(pán)冗余陣列RAID(6)Strip0Strip4Strip8Strip12Strip1Strip5Strip9Strip13Strip3Strip7Strip15Strip11Strip2Strip6Strip14Strip10Strip0Strip4Strip8Strip12Strip1Strip5Strip9Strip13

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論