版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、6.1I/O系統(tǒng)性能與CPU性能6.2I/O系統(tǒng)的可靠性、可用性和可信性6.3廉價(jià)磁盤冗余陣列RAID6.4總線6.5通道處理機(jī)6.6I/O與操作系統(tǒng)第6章 輸入/輸出系統(tǒng)6.1 I/O系統(tǒng)性能與CPU性能輸入/輸出系統(tǒng)簡稱I/O系統(tǒng),包括:I/O設(shè)備I/O設(shè)備與處理機(jī)的連接I/O軟件I/O系統(tǒng)是計(jì)算機(jī)系統(tǒng)中的一個(gè)重要組成部分完成計(jì)算機(jī)與外界的信息交換給計(jì)算機(jī)提供大容量的外部存儲(chǔ)器 按照主要完成的工作進(jìn)行分類:存儲(chǔ)I/O系統(tǒng)(本章內(nèi)容) 通信I/O系統(tǒng)6.1 I/O系統(tǒng)性能與CPU性能人們對(duì)I/O系統(tǒng)的作用和性能沒有給予足夠的重視人們更多地關(guān)注:CPU的性能 許多人甚至認(rèn)為CPU的速度就是計(jì)算
2、機(jī)的速度。I/O設(shè)備通常被稱為外圍設(shè)備。 (外圍的就似乎沒那么重要了) 系統(tǒng)的響應(yīng)時(shí)間(衡量計(jì)算機(jī)系統(tǒng)的一個(gè)更好的指標(biāo))從用戶輸入命令開始,到得到結(jié)果所花費(fèi)的時(shí)間。由兩部分構(gòu)成:I/O系統(tǒng)的響應(yīng)時(shí)間CPU的處理時(shí)間 6.1 I/O系統(tǒng)性能與CPU性能誤區(qū):使用多進(jìn)程技術(shù)可以忽略I/O性能對(duì)系統(tǒng)性能的影響多進(jìn)程技術(shù)只能夠提高系統(tǒng)吞吐率,并不能夠減 少系統(tǒng)響應(yīng)時(shí)間。進(jìn)程切換時(shí)可能需要增加I/O操作??汕袚Q的進(jìn)程數(shù)量有限,當(dāng)I/O處理較慢時(shí),仍 然會(huì)導(dǎo)致CPU處于空閑狀態(tài)。 6.1 I/O系統(tǒng)性能與CPU性能例6.1 假設(shè)一臺(tái)計(jì)算機(jī)的I/O處理時(shí)間占響應(yīng)時(shí)間的10%,當(dāng)I/O性能保持不變,而對(duì)CPU
3、的性能分別提高10倍和100倍時(shí),該計(jì)算機(jī)系統(tǒng)的總體性能會(huì)發(fā)生什么樣的變化? 解 假設(shè)改進(jìn)前程序的執(zhí)行時(shí)間為1個(gè)單位時(shí)間。 如果CPU的性能提高10倍,程序的執(zhí)行時(shí)間減少為: (110%) / 10 + 10% = 0.19 即整機(jī)性能只能提高到原來的約5倍,約50%的CPU性能被浪費(fèi)在I/O處理上。 如果CPU的性能提高100倍,程序的執(zhí)行時(shí)間減少為: (1 10%) / 100 + 10% = 0.109 整機(jī)性能只能提高約10倍,約90%的性能被浪費(fèi)在沒有改進(jìn)的I/O處理上。 6.1 I/O系統(tǒng)性能與CPU性能評(píng)價(jià)I/O系統(tǒng)性能的參數(shù)主要有:連接特性(哪些I/O設(shè)備可以和計(jì)算機(jī)系統(tǒng)相連接
4、)I/O系統(tǒng)的容量(I/O系統(tǒng)可以容納的I/O設(shè)備數(shù))響應(yīng)時(shí)間和吞吐率等另一種衡量I/O系統(tǒng)性能的方法:考慮I/O操作對(duì)CPU的打擾情況。即考查某個(gè)進(jìn)程在執(zhí)行時(shí),由于其他進(jìn)程的I/O操作,使得該進(jìn)程的執(zhí)行時(shí)間增加了多少。 處理器性能已經(jīng)很高,人們更加關(guān)注系統(tǒng)可靠性。反映外設(shè)可靠性能的參數(shù)有:可靠性(Reliability)可用性(Availability)可信性(Dependability)系統(tǒng)的可靠性:系統(tǒng)從某個(gè)初始參考點(diǎn)開始一直連續(xù)提供服務(wù)的能力。用平均無故障時(shí)間MTTF來衡量。 (Mean Time To Failure) 6.2 I/O系統(tǒng)的可靠性、可用性和可信性6.2 I/O系統(tǒng)的可
5、靠性、可用性和可信性MTTF的倒數(shù)就是系統(tǒng)的失效率。如果系統(tǒng)中每個(gè)模塊的生存期服從指數(shù)分布,則系統(tǒng)整體的失效率是各部件的失效率之和。系統(tǒng)的可用性:系統(tǒng)正常工作的時(shí)間在連續(xù)兩次正常服務(wù)間隔時(shí)間中所占的比率。MTTF+MTTR:平均失效間隔時(shí)間MTBF(Mean Time Between Failure)系統(tǒng)的可信性:服務(wù)的質(zhì)量。即在多大程度上可以合理地認(rèn)為服務(wù)是可靠的。(不可以度量)6.2 I/O系統(tǒng)的可靠性、可用性和可信性例6.2 假設(shè)磁盤子系統(tǒng)的組成部件和它們的MTTF如下:(1)磁盤子系統(tǒng)由10個(gè)磁盤構(gòu)成,每個(gè)磁盤的MTTF為1000000小時(shí);(2)1個(gè)SCSI控制器,其MTTF為500
6、000小時(shí);(3)1個(gè)不間斷電源,其MTTF為200000小時(shí);(4)1個(gè)風(fēng)扇,其MTTF為200000小時(shí);(5)1根SCSI連線,其MTTF為1000000小時(shí)。 假定每個(gè)部件的生存期服從指數(shù)分布,同時(shí)假定各部件的故障是相互獨(dú)立的,求整個(gè)系統(tǒng)的MTTF。6.2 I/O系統(tǒng)的可靠性、可用性和可信性 解 整個(gè)系統(tǒng)的失效率為: 系統(tǒng)的MTTF為系統(tǒng)失效率的倒數(shù),即: 即將近5年。 6.2 I/O系統(tǒng)的可靠性、可用性和可信性提高系統(tǒng)組成部件可靠性的方法 有效構(gòu)建方法(valid construction) 在構(gòu)建系統(tǒng)的過程中消除故障隱患,這樣建立起來的系統(tǒng)就不會(huì)出現(xiàn)故障。糾錯(cuò)方法(error co
7、rrection) 在系統(tǒng)構(gòu)建中采用容錯(cuò)的方法。這樣即使出現(xiàn)故障,也可以通過容錯(cuò)信息保證系統(tǒng)正常工作。 磁盤陣列DA(Disk Array):使用多個(gè)磁盤(包括驅(qū)動(dòng)器)的組合來代替一個(gè)大容量的磁盤。多個(gè)磁盤并行工作。以條帶為單位把數(shù)據(jù)均勻地分布到多個(gè)磁盤上。 (交叉存放)條帶存放可以使多個(gè)數(shù)據(jù)讀/寫請求并行地被處理,從而提高總的I/O性能。這里并行性有兩方面的含義: 6.3 廉價(jià)磁盤冗余陣列RAID6.3 廉價(jià)磁盤冗余陣列RAID多個(gè)獨(dú)立的請求可以由多個(gè)盤來并行地處理。 減少了I/O請求的排隊(duì)等待時(shí)間 如果一個(gè)請求訪問多個(gè)塊,就可以由多個(gè)盤合作來并行處理。 提高了單個(gè)請求的數(shù)據(jù)傳輸率問題:陣列
8、中磁盤數(shù)量的增加會(huì)導(dǎo)致磁盤陣列可靠性的下降。 如果使用了N個(gè)磁盤構(gòu)成磁盤陣列,那么整個(gè)陣列的可靠性將降低為單個(gè)磁盤的1/N。解決方法:在磁盤陣列中設(shè)置冗余信息盤 當(dāng)單個(gè)磁盤失效時(shí),丟失的信息可以通過冗余盤中的信息重新構(gòu)建。 6.3 廉價(jià)磁盤冗余陣列RAID廉價(jià)磁盤冗余陣列RAIDRedundant Arrays of Inexpensive Disks1988年,Patterson教授首先提出磁盤冗余陣列RAIDRedundant Arrays of Independent Disks 簡稱磁盤陣列技術(shù)DA大多數(shù)磁盤陣列的組成可以用兩個(gè)特征來區(qū)分:冗余數(shù)據(jù)的計(jì)算方法以及在磁盤陣列中的存放方式
9、數(shù)據(jù)交叉存放的粒度(可以是細(xì)粒度的,也可以是粗粒度的)6.3 廉價(jià)磁盤冗余陣列RAID細(xì)粒度磁盤陣列是在概念上把數(shù)據(jù)分割成相對(duì)較小的單位交叉存放。 優(yōu)點(diǎn):所有I/O請求都能夠獲得很高的數(shù)據(jù)傳輸率。缺點(diǎn):在任何時(shí)間,都只有一個(gè)邏輯上的I/O在處理當(dāng)中,而且所有的磁盤都會(huì)因?yàn)闉槊總€(gè)請求進(jìn)行定位而浪費(fèi)時(shí)間。粗粒度磁盤陣列是把數(shù)據(jù)以相對(duì)較大的單位交叉存放。多個(gè)較小規(guī)模的請求可以同時(shí)得到處理。對(duì)于較大規(guī)模的請求又能獲得較高的傳輸率。6.3 廉價(jià)磁盤冗余陣列RAID在磁盤陣列中設(shè)置冗余需要解決以下兩個(gè)問題:如何計(jì)算冗余信息?大多都是采用奇偶校驗(yàn)碼;也有采用漢明碼(Hamming code)或Reed-So
10、lomon碼的。 如何把冗余信息分布到磁盤陣列中的各個(gè)盤?有兩種方法:把冗余信息集中存放在少數(shù)的幾個(gè)盤中。把冗余信息均勻地存放到所有的盤中。 (能避免出現(xiàn)熱點(diǎn)問題) RAID級(jí)別 可以容忍的故障個(gè)數(shù)以及當(dāng)數(shù)據(jù)盤為8個(gè)時(shí),所需要的檢測盤的個(gè)數(shù) 優(yōu) 點(diǎn) 缺 點(diǎn) 公司產(chǎn)品 0 非冗余,條帶存放 0個(gè)故障;0個(gè)檢測盤 沒有空間開銷 沒有糾錯(cuò)能力 廣泛應(yīng)用 1鏡像 1個(gè)故障;8個(gè)檢測盤 不需要計(jì)算奇偶校驗(yàn),數(shù)據(jù)恢復(fù)快,讀數(shù)據(jù)快。而且其小規(guī)模寫操作比更高級(jí)別的RAID快 檢測空間開銷最大(即需要的檢測盤最多) EMC,HP(Tandem),IBM 2存儲(chǔ)器式ECC 1個(gè)故障;4個(gè)檢測盤 不依靠故障盤進(jìn)行自
11、診斷 檢測空間開銷的級(jí)別是log2m級(jí)(m為數(shù)據(jù)盤的個(gè)數(shù)) 沒有 3 位交叉奇偶校驗(yàn) 1個(gè)故障;1個(gè)檢測盤 檢測空間開銷?。葱枰臋z測盤少),大規(guī)模讀寫操作的帶寬高 對(duì)小規(guī)模、隨機(jī)的讀寫操作沒有提供特別的支持 外存概念 RAID的分級(jí)及其特性 6.3 廉價(jià)磁盤冗余陣列RAID有關(guān)RAID的幾個(gè)問題關(guān)鍵問題:如何發(fā)現(xiàn)磁盤的故障磁盤技術(shù)提供了故障檢測操作的信息 設(shè)計(jì)的另一個(gè)問題如何減少平均修復(fù)時(shí)間MTTR典型的做法:在系統(tǒng)中增加熱備份盤熱交換技術(shù)與熱備份盤相關(guān)的一種技術(shù)允許系統(tǒng)在不關(guān)機(jī)的情況下更換設(shè)備非冗余陣列,無冗余信息。嚴(yán)格地說,它不屬于RAID系列。把數(shù)據(jù)切分成條帶,以條帶為單位交叉地分布
12、存放到多個(gè)磁盤中。6.3.1 RAID06.3 廉價(jià)磁盤冗余陣列RAID6.3 廉價(jià)磁盤冗余陣列RAID亦稱鏡像盤,使用雙備份磁盤。每當(dāng)把數(shù)據(jù)寫入磁盤時(shí),將該數(shù)據(jù)也寫入其鏡像盤,形成信息的兩個(gè)副本。6.3.2 RAID16.3 廉價(jià)磁盤冗余陣列RAIDRAID1的特點(diǎn)能實(shí)現(xiàn)快速的讀取操作。寫性能由寫性能最差的磁盤決定。相對(duì)以后各級(jí)RAID來說,RAID1的寫速度較快??煽啃院芨?,數(shù)據(jù)的恢復(fù)很簡單。最昂貴的解決方法,物理磁盤空間是邏輯磁盤空間的兩倍。 6.3 廉價(jià)磁盤冗余陣列RAID存儲(chǔ)器式的磁盤陣列(按漢明糾錯(cuò)碼的思路構(gòu)建)含4個(gè)數(shù)據(jù)盤的RAID26.3.3 RAID26.3 廉價(jià)磁盤冗余陣列
13、RAIDRAID2的特點(diǎn)每個(gè)數(shù)據(jù)盤存放所有數(shù)據(jù)字的一位 (位交叉存放)各個(gè)數(shù)據(jù)盤上的相應(yīng)位計(jì)算漢明校驗(yàn)碼,編碼位被存放在多個(gè)校驗(yàn)(ECC)磁盤的對(duì)應(yīng)位上。冗余盤是用來存放漢明碼的,其個(gè)數(shù)為log2m級(jí)。 m:數(shù)據(jù)盤的個(gè)數(shù)(也就是數(shù)據(jù)字的位數(shù))并未被廣泛應(yīng)用,目前還沒有商業(yè)化產(chǎn)品。6.3 廉價(jià)磁盤冗余陣列RAID位交叉奇偶校驗(yàn)盤陣列6.3.4 RAID36.3 廉價(jià)磁盤冗余陣列RAIDRAID3的特點(diǎn)采用奇偶校驗(yàn)寫數(shù)據(jù)時(shí)為每行數(shù)據(jù)形成奇偶校驗(yàn)位并寫入校驗(yàn)盤讀出數(shù)據(jù)時(shí)如果控制器發(fā)現(xiàn)某個(gè)磁盤出故障,就可以根據(jù)故障盤以外的所有其他盤中的正確信息恢復(fù)故障盤中的數(shù)據(jù)。(通過異或運(yùn)算實(shí)現(xiàn)) 細(xì)粒度的磁盤陣列
14、,即采用的條帶寬度較小。 (可以是1個(gè)字節(jié)或1位)只需要一個(gè)校驗(yàn)盤,校驗(yàn)空間開銷比較小。 6.3 廉價(jià)磁盤冗余陣列RAID塊交叉奇偶校驗(yàn)磁盤陣列 采用比較大的條帶,以塊為單位進(jìn)行交叉存放和計(jì)算奇偶校驗(yàn)。實(shí)現(xiàn)目標(biāo):能同時(shí)處理多個(gè)小規(guī)模訪問請求6.3.5 RAID46.3 廉價(jià)磁盤冗余陣列RAIDRAID4讀寫特點(diǎn)讀取操作每次只需訪問數(shù)據(jù)所在的磁盤。僅在該磁盤出現(xiàn)故障時(shí),才會(huì)去讀校驗(yàn)盤,并進(jìn)行數(shù)據(jù)的重建。寫入操作假定:有4個(gè)數(shù)據(jù)盤和一個(gè)冗余盤。寫數(shù)據(jù)需要2次磁盤讀和2次磁盤寫操作。6.3 廉價(jià)磁盤冗余陣列RAIDRAID4能有效地處理小規(guī)模訪問,快速處理大規(guī)模訪問,校驗(yàn)空間開銷比較小。6.3 廉價(jià)
15、磁盤冗余陣列RAID塊交叉分布奇偶校驗(yàn)磁盤陣列 數(shù)據(jù)以塊交叉的方式存于各盤,無專用冗余盤,奇偶校驗(yàn)信息均勻分布在所有磁盤上。 6.3.6 RAID56.3 廉價(jià)磁盤冗余陣列RAIDPQ雙校驗(yàn)磁盤陣列 特點(diǎn)校驗(yàn)空間開銷是RAID5的兩倍 容忍兩個(gè)磁盤出錯(cuò) 6.3.7 RAID66.3 廉價(jià)磁盤冗余陣列RAIDRAID10又稱為RAID1+0 先進(jìn)行鏡像(RAID1),再進(jìn)行條帶存放(RAID0) 6.3.8 RAID10與RAID016.3 廉價(jià)磁盤冗余陣列RAIDRAID01又稱為RAID0+1先進(jìn)行條帶存放(RAID0),再進(jìn)行鏡像(RAID1) 6.3 廉價(jià)磁盤冗余陣列RAID實(shí)現(xiàn)盤陣列的
16、方式主要有三種:軟件方式:陣列管理軟件由主機(jī)來實(shí)現(xiàn)。優(yōu)點(diǎn):成本低缺點(diǎn):過多地占用主機(jī)時(shí)間,且?guī)捴笜?biāo)上不去。陣列卡方式:把RAID管理軟件固化在I/O控制卡上,從而可不占用主機(jī)時(shí)間,一般用于工作站和PC機(jī)。子系統(tǒng)方式:一種基于通用接口總線的開放式平臺(tái),可用于各種主機(jī)平臺(tái)和網(wǎng)絡(luò)系統(tǒng)。6.3.9 RAID的實(shí)現(xiàn)與發(fā)展6.3 廉價(jià)磁盤冗余陣列RAID磁盤陣列技術(shù)研究的主要熱點(diǎn)問題新型陣列體系結(jié)構(gòu);RAID結(jié)構(gòu)與其所記錄文件特性的關(guān)系;在RAID冗余設(shè)計(jì)中,綜合平衡性能、可靠性和開銷的問題;超大型磁盤陣列在物理上如何構(gòu)造和連接。在計(jì)算機(jī)系統(tǒng)中,各子系統(tǒng)之間可以通過總線互相連接。優(yōu)點(diǎn):成本低、多樣性主要
17、缺點(diǎn):它是由不同的外設(shè)分時(shí)共享的,形成了信息交換的瓶頸,從而限制了系統(tǒng)中總的I/O吞吐量。6.4 總 線6.4 總 線總線設(shè)計(jì)存在很多技術(shù)難點(diǎn)一個(gè)重要原因:總線上信息傳送的速度極大地受限于各種物理因素。如總線的長度、設(shè)備的數(shù)目、信號(hào)的強(qiáng)度等,這些物理因素限制了總線性能的提高。另外,我們一方面要求I/O操作響應(yīng)快,另一方面又要求高吞吐量,這可能造成設(shè)計(jì)需求上的沖突。6.4.1 總線的設(shè)計(jì)6.4 總 線設(shè)計(jì)總線時(shí)需要考慮的一些問題 特性 高性能 低價(jià)格 總線寬度 獨(dú)立的地址和數(shù)據(jù)總線 數(shù)據(jù)和地址分時(shí)共用同一套總線 數(shù)據(jù)總線寬度 越寬越快(例如:64位) 越窄越便宜(例如:8位) 傳輸塊大小 塊越大
18、總線開銷越小 單字傳送更簡單 總線主設(shè)備 多個(gè)(需要仲裁) 單個(gè)(無需仲裁) 分離事務(wù) 采用分離的請求包和應(yīng)答包能提高總線帶寬 不采用持續(xù)連接成本更低,而且延遲更小 定時(shí)方式 同步 異步 6.4 總 線分離事務(wù)總線(又稱:流水總線、懸掛總線、包交換總線)在有多個(gè)主設(shè)備時(shí),可以通過打包技術(shù)來提高總線帶寬?;舅枷雽⒖偩€事務(wù)分成請求和應(yīng)答兩部分。在請求和應(yīng)答之間的空閑時(shí)間內(nèi),總線可以供其他的I/O使用,這樣就不必在整個(gè)I/O過程中都獨(dú)占總線。 工作過程的示意圖 6.4 總 線分離事務(wù)總線有較高的帶寬,但是它的數(shù)據(jù)傳送延遲通常比獨(dú)占總線方法大。 地址地址1 地址2 地址3數(shù)據(jù)數(shù)據(jù)0 數(shù)據(jù)1等待等待1
19、 完成1 6.4 總 線同步總線 包含一個(gè)供總線上所有設(shè)備使用的時(shí)鐘,并且這些設(shè)備是基于該時(shí)鐘按照一個(gè)固定的協(xié)議來發(fā)送地址和數(shù)據(jù)的。 優(yōu)點(diǎn):速度快、成本低。 缺點(diǎn):總線操作都必須以同樣的時(shí)鐘頻率進(jìn)行。 異步總線 沒有統(tǒng)一的參考時(shí)鐘,每個(gè)設(shè)備都有各自的定時(shí)方法。采用握手協(xié)議 。6.4 總 線I/O總線標(biāo)準(zhǔn):定義如何將設(shè)備與計(jì)算機(jī)進(jìn)行連接的文檔。常見I/O總線的一些典型特征 6.4.2 總線標(biāo)準(zhǔn)和實(shí)例IDE / Ultra ATA SCSI PCI PCI-X 數(shù)據(jù)寬度(b) 16 8/1632/6432/64時(shí)鐘頻率(MHz) 10010(Fast)20(Ultra)40(Ultra2)80(U
20、ltra3)160(Ultra4) 33/6666/100/133總線主設(shè)備數(shù)量 1個(gè) 多個(gè) 多個(gè) 多個(gè) 峰值帶寬(MBps) 2003205331066同步方式 異步 異步 同步 同步 標(biāo)準(zhǔn) 無 ANSI X3.131 無 無 幾種常用并行I/O總線 6.4 總 線在嵌入式系統(tǒng)中使用較多的4種串行I/O總線的一些典型特征 I2C 1-wire RS-232 SPI 數(shù)據(jù)寬度(b) 1121信號(hào)線數(shù)量 219/253時(shí)鐘頻率(MHz) 0.410 異步 0.04或異步 異步 總線主設(shè)備數(shù)量 多個(gè) 多個(gè) 多個(gè) 多個(gè) 峰值帶寬(Mbps) 0.43.4 0.014 0.192 1同步方式 異步 異
21、步 異步 異步 標(biāo)準(zhǔn) 無 無 EIA, ITU-T V.21 無 6.4 總 線在服務(wù)器系統(tǒng)中使用的CPU-存儲(chǔ)器互連系統(tǒng) HP HyperPlane Crossbar IBM SP SUN Gigaplane-XB 數(shù)據(jù)寬度(b) 64128128時(shí)鐘頻率(MHz) 12011183.3 總線的主設(shè)備數(shù) 多個(gè) 多個(gè) 多個(gè) 每端口峰值帶寬(MBps) 96017001300總峰值帶寬(MBps) 76801420010667同步方式 同步 同步 同步 標(biāo)準(zhǔn) 無 無 無 6.4 總 線I/O總線的物理連接方式有兩種選擇連接到存儲(chǔ)器上 更常見連接到Cache上I/O總線連接到存儲(chǔ)器總線上的方式一種
22、典型的組織結(jié)構(gòu) 6.4.3 與CPU的連接CPUCache主存I/O控制器圖形輸出I/O控制器總線適配器網(wǎng)絡(luò)CPU主存總線I/O總線總線適配器AGP總線PCI總線 I/O控制器I/O控制器總線適配器磁盤磁盤CD6.4 總 線CPU對(duì)I/O設(shè)備的編址有兩種方式存儲(chǔ)器映射I/O(也稱為統(tǒng)一編址)將一部分存儲(chǔ)器地址空間分配給I/O設(shè)備,用load指令和store指令對(duì)這些地址進(jìn)行讀寫將引起I/O設(shè)備的數(shù)據(jù)傳輸。將一部分存儲(chǔ)空間留出用于設(shè)備控制,對(duì)這一部分地址空間進(jìn)行讀寫就是向設(shè)備發(fā)出控制命令。給I/O設(shè)備獨(dú)立編址需要在CPU中設(shè)置專用的I/O指令來訪問I/O設(shè)備。CPU需要發(fā)出一個(gè)標(biāo)志信號(hào)來表示所訪
23、問的地址是I/O設(shè)備的地址。6.4 總 線CPU與外部設(shè)備進(jìn)行輸入/輸出的方式可分為4種程序查詢中斷DMA通道 通道處理機(jī)能夠負(fù)擔(dān)外圍設(shè)備的大部分I/O工作。通道處理機(jī)(簡稱通道):專門負(fù)責(zé)整個(gè)計(jì)算機(jī)系統(tǒng)的輸入/輸出工作。通道處理機(jī)只能執(zhí)行有限的一組輸入/輸出指令。I/O處理機(jī)(外圍處理機(jī)):負(fù)責(zé)I/O工作的通用微處理機(jī)。6.5 通道處理機(jī)6.5 通道處理機(jī)程序控制、中斷和DMA方式管理外圍設(shè)備會(huì)引起兩個(gè)問題:所有外設(shè)的輸入/輸出工作均由CPU承擔(dān),CPU的計(jì)算工作經(jīng)常被打斷而去處理輸入/輸出的事務(wù),不能充分發(fā)揮CPU的計(jì)算能力。 大型計(jì)算機(jī)系統(tǒng)的外設(shè)雖然很多,但同時(shí)工作的機(jī)會(huì)不是很多。解決上
24、述問題的方法:采用通道處理機(jī) 6.5.1 通道的作用和功能6.5 通道處理機(jī)一個(gè)典型的由主機(jī)、通道、設(shè)備控制器、外設(shè)構(gòu)成的4級(jí)層次結(jié)構(gòu)的輸入/輸出系統(tǒng)。6.5 通道處理機(jī)通道的功能 接收CPU發(fā)來的I/O指令,并根據(jù)指令要求選擇指定的外設(shè)與通道相連接。執(zhí)行通道程序 從主存中逐條取出通道指令,對(duì)通道指令進(jìn)行譯碼,并根據(jù)需要向被選中的設(shè)備控制器發(fā)出各種操作命令。給出外設(shè)中要進(jìn)行讀/寫操作的數(shù)據(jù)所在的地址如磁盤存儲(chǔ)器的柱面號(hào)、磁頭號(hào)、扇區(qū)號(hào)等。 給出主存緩沖區(qū)的首地址該緩沖區(qū)存放從外設(shè)輸入的數(shù)據(jù)或者將要輸出到外設(shè)中去的數(shù)據(jù)。6.5 通道處理機(jī)控制外設(shè)與主存緩沖區(qū)之間的數(shù)據(jù)傳送的長度對(duì)傳送的數(shù)據(jù)個(gè)數(shù)進(jìn)
25、行計(jì)數(shù),并判斷數(shù)據(jù)傳送是否結(jié)束。指定傳送工作結(jié)束時(shí)要進(jìn)行的操作例如:將外設(shè)的中斷請求及通道的中斷請求送往CPU等。檢查外設(shè)的工作狀態(tài)是否正常,并將該狀態(tài)信息送往主存指定單元保存。在數(shù)據(jù)傳輸過程中完成必要的格式變換例如:把字拆分為字節(jié),或者把字節(jié)裝配成字等。 6.5 通道處理機(jī)通道的主要硬件寄存器數(shù)據(jù)緩沖寄存器主存地址計(jì)數(shù)器傳輸字節(jié)數(shù)計(jì)數(shù)器通道命令字寄存器通道狀態(tài)字寄存器控制邏輯分時(shí)控制地址分配數(shù)據(jù)傳送、裝配和拆分等6.5 通道處理機(jī)通道對(duì)外設(shè)的控制通過輸入/輸出接口和設(shè)備控制器進(jìn)行通道與設(shè)備控制器之間一般采用標(biāo)準(zhǔn)的輸入/輸出接口來連接。通道通過標(biāo)準(zhǔn)接口把操作命令送到設(shè)備控制器,設(shè)備控制器解釋并
26、執(zhí)行這些通道命令,完成命令指定的操作。設(shè)備控制器能夠記錄外設(shè)的狀態(tài),并把狀態(tài)信息送往通道和CPU。 6.5 通道處理機(jī)通道完成一次數(shù)據(jù)輸入/輸出的工作過程在用戶程序中使用訪管指令進(jìn)入管理程序,由管理程序生成一個(gè)通道程序,并啟動(dòng)通道。用戶在目標(biāo)程序中設(shè)置一條廣義指令,通過調(diào)用操作系統(tǒng)的管理程序來實(shí)現(xiàn)。管理程序根據(jù)廣義指令提供的參數(shù)來編制通道程序。 啟動(dòng)輸入/輸出設(shè)備指令是一條主要的輸入/輸出指令,屬于特權(quán)指令。工作流程 6.5.2 通道的工作過程6.5 通道處理機(jī)6.5 通道處理機(jī)通道處理機(jī)執(zhí)行通道程序,完成指定的數(shù)據(jù)輸入/輸出工作。 通道處理機(jī)執(zhí)行通道程序與CPU執(zhí)行用戶程序是并行的。 通道程
27、序結(jié)束后向CPU發(fā)中斷請求。CPU執(zhí)行程序和通道執(zhí)行通道程序的時(shí)間關(guān)系 6.5 通道處理機(jī)6.5 通道處理機(jī)根據(jù)信息傳送方式的不同,將通道分為三種類型字節(jié)多路通道選擇通道數(shù)組多路通道三種類型的通道與CPU、設(shè)備控制器和外設(shè)的連接關(guān)系 6.5.3 通道的種類6.5 通道處理機(jī)6.5 通道處理機(jī)字節(jié)多路通道 為多臺(tái)低速或中速的外設(shè)服務(wù)。以字節(jié)交叉的方式分時(shí)輪流地為它們服務(wù)。字節(jié)多路通道可以包含多個(gè)子通道,每個(gè)子通道連接一臺(tái)設(shè)備控制器。選擇通道 為多臺(tái)高速外圍設(shè)備服務(wù)。 在一段時(shí)間內(nèi)只為一臺(tái)高速外設(shè)獨(dú)占使用。選擇通道的硬件 5個(gè)寄存器數(shù)據(jù)緩沖寄存器、設(shè)備地址寄存器、主存地址計(jì)數(shù)器、交換字節(jié)數(shù)計(jì)數(shù)器、
28、設(shè)備狀態(tài)/控制寄存器 格式變換部件用于在主存和設(shè)備之間進(jìn)行字與字節(jié)的拆分和裝配通道控制部件6.5 通道處理機(jī)6.5 通道處理機(jī)6.5 通道處理機(jī)數(shù)組多路通道 適用于高速設(shè)備。每次選擇一個(gè)高速設(shè)備后傳送一個(gè)數(shù)據(jù)塊,輪流為多臺(tái)外圍設(shè)備服務(wù)。數(shù)組多路通道之所以能夠并行地為多臺(tái)高速設(shè)備服務(wù),是因?yàn)殡m然其所連設(shè)備的傳輸速率很高,但尋址等輔助操作時(shí)間很長。 從磁盤存儲(chǔ)器讀出文件的的過程分為三步: 定位、找扇區(qū)、讀出數(shù)據(jù)數(shù)組多路通道的實(shí)際工作方式是: 在為一臺(tái)高速設(shè)備傳送數(shù)據(jù)的同時(shí),有多臺(tái)高速設(shè)備可以在定位或者在找扇區(qū)。 與選擇通道相比,數(shù)組多路通道的數(shù)據(jù)傳輸率和通道的硬件利用率都很高,控制硬件的復(fù)雜度也高
29、。6.5 通道處理機(jī)通道流量一個(gè)通道在數(shù)據(jù)傳送期間,單位時(shí)間內(nèi)能夠傳送的數(shù)據(jù)量。所用單位一般為Bps。又稱為通道吞吐率、通道數(shù)據(jù)傳輸率等。通道最大流量 通道在滿負(fù)荷工作狀態(tài)下的流量 。6.5.4 通道中的數(shù)據(jù)傳送過程與流量分析6.5 通道處理機(jī)參數(shù)的定義 TS:設(shè)備選擇時(shí)間。從通道響應(yīng)設(shè)備發(fā)出的數(shù)據(jù)傳送請求開始,到通道實(shí)際為這臺(tái)設(shè)備傳送數(shù)據(jù)所需要的時(shí)間。TD:傳送一個(gè)字節(jié)所用的時(shí)間。p:在一個(gè)通道上連接的設(shè)備臺(tái)數(shù),且這些設(shè)備同時(shí)都在工作。n:每臺(tái)設(shè)備傳送的字節(jié)數(shù),這里假設(shè)每臺(tái)設(shè)備傳送的字節(jié)數(shù)都相同。k:數(shù)組多路通道傳輸?shù)囊粋€(gè)數(shù)據(jù)塊中包含的字節(jié)數(shù)。在一般情況下,kn。對(duì)于磁盤、磁帶等磁表面存儲(chǔ)器
30、,通常k=512。T:通道完成全部數(shù)據(jù)傳送工作所需要的時(shí)間。6.5 通道處理機(jī)字節(jié)多路通道 數(shù)據(jù)傳送過程 通道每連接一臺(tái)個(gè)外設(shè),只傳送一個(gè)字節(jié),然后又與另一臺(tái)設(shè)備連接,并傳送一個(gè)字節(jié)。p臺(tái)設(shè)備每臺(tái)傳送n個(gè)數(shù)據(jù)總共所需的時(shí)間為6.5 通道處理機(jī)最大流量實(shí)際流量是連接在這個(gè)通道上的所有設(shè)備的數(shù)據(jù)傳輸率之和。fi:第i臺(tái)設(shè)備的實(shí)際數(shù)據(jù)傳輸率 6.5 通道處理機(jī)選擇通道 在一段時(shí)間內(nèi)只能單獨(dú)為一臺(tái)高速外設(shè)服務(wù),當(dāng)這臺(tái)設(shè)備的數(shù)據(jù)傳送工作全部完成后,通道才能為另一臺(tái)設(shè)備服務(wù)。 工作過程其中:Di表示通道正在為第i臺(tái)設(shè)備服務(wù) TD1 = TD2 = = TDn = TD 6.5 通道處理機(jī)p臺(tái)設(shè)備每臺(tái)傳送n
31、個(gè)數(shù)據(jù)總共所需的時(shí)間 最大流量 6.5 通道處理機(jī)數(shù)組多路通道 工作過程p臺(tái)設(shè)備每臺(tái)傳送n個(gè)數(shù)據(jù)總共所需的時(shí)間為:6.5 通道處理機(jī)最大流量選擇通道和數(shù)組多路通道的實(shí)際流量就是連接在這個(gè)通道上的所有設(shè)備中數(shù)據(jù)流量最大的那一個(gè) 。6.5 通道處理機(jī)各種通道的實(shí)際流量應(yīng)該不大于通道的最大流量兩邊的差值越小,通道的利用率就越高。當(dāng)兩邊相等時(shí),通道處于滿負(fù)荷工作狀態(tài)。 設(shè)計(jì)I/O系統(tǒng)需要注意操作系統(tǒng)的因素。在用硬件實(shí)現(xiàn)的I/O技術(shù)中,由操作系統(tǒng)來決定哪些會(huì)實(shí)際被采用。 I/O操作主要是在外設(shè)和存儲(chǔ)器之間進(jìn)行,所以操作系統(tǒng)必須保證這些I/O操作的安全性。 6.6 I/O與操作系統(tǒng)6.6 I/O與操作系統(tǒng)DMA是使用虛擬地址還是物理地址?使用物理地址進(jìn)行DMA傳輸,存在以下兩個(gè)問題:對(duì)于超過一頁的數(shù)據(jù)緩沖區(qū),由于緩沖區(qū)使用的頁面在物理存儲(chǔ)器中不一定是連續(xù)的,所以傳輸可能會(huì)發(fā)生問題。 如果DMA正在存儲(chǔ)器和緩沖區(qū)之間傳輸數(shù)據(jù)時(shí),操作系統(tǒng)從存儲(chǔ)器中移出(或重定位)一些頁面,那么,DMA將會(huì)在存儲(chǔ)器中錯(cuò)誤的物理頁面上進(jìn)行數(shù)據(jù)傳輸。 6.6.1 DMA和虛擬存儲(chǔ)器6.6 I/O與操作系統(tǒng)解決這些問題的方法 使操作系統(tǒng)在I/O的傳輸過程中確保DMA設(shè)備所訪問的頁面都位于物理存儲(chǔ)器中,這些頁面被稱為是釘在了主存中。“虛擬DMA”技術(shù) 允許DMA設(shè)備直接使用虛擬地址,并在DMA期間由硬
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度年福建省高校教師資格證之高等教育心理學(xué)通關(guān)提分題庫及完整答案
- 2024年度年福建省高校教師資格證之高等教育學(xué)模擬預(yù)測參考題庫及答案
- 五年級(jí)數(shù)學(xué)(小數(shù)乘法)計(jì)算題專項(xiàng)練習(xí)及答案匯編
- 2024年化工技術(shù)研發(fā)人員勞務(wù)協(xié)議
- 品創(chuàng)業(yè)案例分析
- 2024混凝土施工承攬協(xié)議樣本
- 清明節(jié)主題班會(huì)課件
- 2024年房屋建筑施工協(xié)議樣本
- 彩鋼建筑租賃協(xié)議格式2024年
- 2024民間資金出借協(xié)議簡明
- 北京市海淀區(qū)2024-2025學(xué)年高三上學(xué)期10月考英語試卷 含解析
- 四川省成都2023-2024學(xué)年高二上學(xué)期期中物理試題(含答案)
- 中國港口行業(yè)投資前景分析及未來發(fā)展趨勢研究報(bào)告(智研咨詢發(fā)布)
- 廣東省廣州市天河區(qū)2023-2024學(xué)年高一上學(xué)期11月期中考試化學(xué)試題
- 2024-2030年中國泳裝(泳裝)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報(bào)告
- 全國教師管理信息系統(tǒng)-業(yè)務(wù)功能培訓(xùn)(省級(jí)培訓(xùn)材料)
- 河北省2024-2025學(xué)年高二數(shù)學(xué)上學(xué)期期中11月考試試題
- 廣東省動(dòng)物防疫條件審查場所選址風(fēng)險(xiǎn)評(píng)估表
- 小學(xué)英語教師專業(yè)發(fā)展計(jì)劃6篇
- CATTI漢英詞匯手冊
- 英語漫話天府新村智慧樹知到答案2024年四川工商職業(yè)技術(shù)學(xué)院
評(píng)論
0/150
提交評(píng)論