計(jì)算機(jī)操作系統(tǒng)課件:第7章設(shè)備管理02_第1頁
計(jì)算機(jī)操作系統(tǒng)課件:第7章設(shè)備管理02_第2頁
計(jì)算機(jī)操作系統(tǒng)課件:第7章設(shè)備管理02_第3頁
計(jì)算機(jī)操作系統(tǒng)課件:第7章設(shè)備管理02_第4頁
計(jì)算機(jī)操作系統(tǒng)課件:第7章設(shè)備管理02_第5頁
已閱讀5頁,還剩27頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1第七章 設(shè)備管理第二講2本節(jié)課的主要內(nèi)容 1.緩沖技術(shù) 2.設(shè)備分配 3.磁盤存儲(chǔ)器管理 3 緩沖技術(shù) 計(jì)算機(jī)系統(tǒng)中各個(gè)部件速度的差異是明顯的。在不同時(shí)刻,系統(tǒng)各部分的負(fù)荷也常常很不均衡。雖然通道技術(shù)的引入為CPU和I/O設(shè)備的并行工作提供了可能,但是由于CPU和I/O外部設(shè)備之間的速度不匹配以及工作不均衡,它們的并行程度并不能得到充分發(fā)揮。緩沖技術(shù)是解決這一問題的一種常用的技術(shù) 。4 緩沖技術(shù) 緩和CPU與I/O設(shè)備間速度不匹配的矛盾。 (2)減少對(duì)CPU的中斷頻率,放寬對(duì)CPU中斷 響應(yīng)時(shí)間的限制。 (3)提高CPU和I/O設(shè)備之間的并行性。 引入緩沖技術(shù)的優(yōu)點(diǎn):5 緩沖的類型 1.采用

2、專用的硬件緩沖區(qū),如設(shè)備控制器中的 數(shù)據(jù)緩沖寄存器,他們的成本較高,因此其 數(shù)量一般較少。 2.在內(nèi)存中劃出一塊專門的空間,作為緩沖區(qū) 來存放輸入/輸出的數(shù)據(jù),也叫軟件緩沖。按照緩沖區(qū)存在的位置分為兩種方式: 按照緩沖區(qū)的個(gè)數(shù)和緩沖區(qū)組織形式的不同,可將緩沖分成: 單緩沖、雙緩沖、循環(huán)緩沖和緩沖池等幾種。67.4 設(shè)備分配 在計(jì)算機(jī)系統(tǒng)中,設(shè)備、控制器和通道等資源是有限的,并不是每個(gè)進(jìn)程隨時(shí)都可以得到這些資源,它首先需要向設(shè)備分配程序提出申請(qǐng),然后由設(shè)備分配程序按照一定的分配算法給進(jìn)程分配必要的資源 。在進(jìn)行設(shè)備分配時(shí),通常需要設(shè)置數(shù)據(jù)結(jié)構(gòu): (1)設(shè)備控制表(DCT) (2)控制器控制表(C

3、OCT) (3)通道控制表(CHCT) (4)系統(tǒng)設(shè)備表(SDT) 71. 設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu) (1).設(shè)備控制表DCT 圖1 設(shè)備控制表 8(2).控制器控制表COCT 圖2 控制器COCT表 1. 設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu) 9(3).通道控制表CHCT圖3 通道控制表CHCT1. 設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu) 10(4).系統(tǒng)設(shè)備表SDT系統(tǒng)范圍內(nèi)的數(shù)據(jù)結(jié)構(gòu),記錄了系統(tǒng)中全部設(shè)備的情況,每一個(gè)設(shè)備占一個(gè)表目。 圖4 系統(tǒng)設(shè)備表SDT 1. 設(shè)備分配中的數(shù)據(jù)結(jié)構(gòu) 11設(shè)備分配的總原則是:一方面要充分發(fā)揮設(shè)備的使用效率,同時(shí)又要避免不合理的分配方式造成死鎖、系統(tǒng)工作紊亂等現(xiàn)象,使用戶在邏輯層面上能夠合理

4、方便地使用設(shè)備。2.設(shè)備分配時(shí)應(yīng)考慮的因素 122.設(shè)備分配時(shí)應(yīng)考慮的因素 設(shè)備的固有屬性設(shè)備分配算法設(shè)備分配中的安全性132.設(shè)備分配時(shí)應(yīng)考慮的因素(一)設(shè)備的固有屬性 獨(dú)占設(shè)備。 設(shè)備在一段時(shí)間內(nèi)只允許一個(gè)進(jìn)程獨(dú)占。 (2)共享設(shè)備。 允許多個(gè)進(jìn)程同時(shí)共享。 (3)可虛擬設(shè)備。 設(shè)備本身是獨(dú)占設(shè)備,但經(jīng)過某種技術(shù) 處理,可以把它改造成虛擬設(shè)備,即共享設(shè)備。14(二)設(shè)備分配算法 先來先服務(wù)(FCFS) 就是當(dāng)多個(gè)進(jìn)程同時(shí)對(duì)一個(gè)設(shè)備提出I/O請(qǐng)求時(shí),系統(tǒng)按照進(jìn)程提出請(qǐng)求的先后次序,把它們排成一個(gè)設(shè)備請(qǐng)求隊(duì)列,并且總是把設(shè)備首先分配給排在隊(duì)首的進(jìn)程使用。(2)優(yōu)先級(jí)高者優(yōu)先 就是給每個(gè)進(jìn)程提出

5、的I/O請(qǐng)求分配一個(gè)優(yōu)先級(jí),在設(shè)備請(qǐng)求隊(duì)列中把優(yōu)先級(jí)高的排在前面,如果優(yōu)先級(jí)相同則按照FCFS的順序排列。這里的優(yōu)先級(jí)與進(jìn)程調(diào)度中的優(yōu)先級(jí)往往是一致的,這樣有助于高優(yōu)先級(jí)的進(jìn)程優(yōu)先執(zhí)行、優(yōu)先完成。2.設(shè)備分配時(shí)應(yīng)考慮的因素 15(三)設(shè)備分配中的安全性 (1)安全分配方式 每當(dāng)進(jìn)程發(fā)出I/O請(qǐng)求后,便進(jìn)入阻塞狀態(tài),直到其I/O操作完成時(shí)才被喚醒。 優(yōu)點(diǎn):設(shè)備分配安全 缺點(diǎn):進(jìn)程進(jìn)展緩慢,CPU與I/O設(shè)備串行工作。(2)不安全分配方式 進(jìn)程在發(fā)出I/O請(qǐng)求后仍繼續(xù)運(yùn)行,需要時(shí)又發(fā)出第二 個(gè)、第三個(gè)I/O請(qǐng)求。僅當(dāng)進(jìn)程所請(qǐng)求的設(shè)備已被另一進(jìn) 程占用時(shí),請(qǐng)求進(jìn)程才進(jìn)入阻塞。 優(yōu)點(diǎn):一個(gè)進(jìn)程可同時(shí)操

6、作多個(gè)設(shè)備,使進(jìn)程推進(jìn)迅速。 缺點(diǎn):設(shè)備分配不安全,容易造成死鎖。2.設(shè)備分配時(shí)應(yīng)考慮的因素 163.獨(dú)占設(shè)備的分配程序 步驟一:分配設(shè)備 首先根據(jù)I/O請(qǐng)求中的物理設(shè)備名,查找系統(tǒng)設(shè)備表(SDT),從中找出該設(shè)備的DCT,再根據(jù)DCT中的設(shè)備狀態(tài)字段可知該設(shè)備是否正忙。若忙,便將請(qǐng)求I/O進(jìn)程的PCB掛在設(shè)備隊(duì)列上;否則,按照一定的算法計(jì)算本次設(shè)備分配的安全性。如果不會(huì)導(dǎo)致系統(tǒng)進(jìn)入不安全狀態(tài),便將設(shè)備分配給請(qǐng)求進(jìn)程;否則,仍將其PCB插入設(shè)備等待隊(duì)列。下面我們通過一個(gè)具有I/O通道的系統(tǒng)案例,來介紹一下設(shè)備分配過程。當(dāng)某進(jìn)程提出I/O請(qǐng)求后,系統(tǒng)的設(shè)備分配程序可按下述步驟進(jìn)行設(shè)備分配:173

7、.獨(dú)占設(shè)備的分配程序 步驟二:分配控制器 在系統(tǒng)把設(shè)備分配給請(qǐng)求I/O的進(jìn)程后,再到其DCT中找出與該設(shè)備連接的控制器的COCT,從COCT的狀態(tài)字段中可知該控制器是否忙碌。若忙,便將請(qǐng)求I/O進(jìn)程的PCB掛在該控制器的等待隊(duì)列上;否則,便將該控制器分配給進(jìn)程。183.獨(dú)占設(shè)備的分配程序 步驟三:分配通道 在該COCT中又可找到與該控制器連接的通道的CHCT,再根據(jù)CHCT內(nèi)的狀態(tài)信息,可知該通道是否忙碌。若忙,便將請(qǐng)求I/O的進(jìn)程掛在該通道的等待隊(duì)列上;否則,將該通道分配給進(jìn)程。只有在設(shè)備、控制器和通道三者都分配成功時(shí),這次的設(shè)備分配才算成功。然后,便可啟動(dòng)該I/O設(shè)備進(jìn)行數(shù)據(jù)傳送。197.

8、5 虛擬設(shè)備-SPOOLing技術(shù) (1)虛擬設(shè)備是通過某種技術(shù)將一臺(tái)獨(dú)占設(shè)備改造為可以供多個(gè)用戶共享的共享設(shè)備。(2)什么是SPOOLing? Spooling技術(shù)是一種虛擬設(shè)備技術(shù),它可以把一臺(tái)獨(dú)占設(shè)備改造為虛擬設(shè)備(共享設(shè)備),在進(jìn)程所需的物理設(shè)備不存在或被占用的情況下,仍可使用該設(shè)備,從而提高系統(tǒng)效率和設(shè)備利用率,實(shí)現(xiàn)這一技術(shù)的軟、硬件系統(tǒng)被稱為SPOOLing系統(tǒng) 。202).SPOOLing的基本原理(以常見的共享打印機(jī)為例):打印機(jī)是一種典型的獨(dú)占設(shè)備,引入SPOOLing技術(shù)后,用戶的打印請(qǐng)求傳遞給SPOOLing系統(tǒng),而并不是真正把打印機(jī)分配給用戶。SPOOLing系統(tǒng)的輸出

9、進(jìn)程在磁盤上申請(qǐng)一個(gè)空閑區(qū),把需要打印的數(shù)據(jù)傳送到里面,再把用戶的打印請(qǐng)求掛到打印隊(duì)列上。如果打印機(jī)空閑,就會(huì)從打印隊(duì)列中取出一個(gè)請(qǐng)求,再從磁盤上的指定區(qū)域取出數(shù)據(jù),執(zhí)行打印操作。由于磁盤是共享的,SPOOLing系統(tǒng)可以隨時(shí)響應(yīng)打印請(qǐng)求并把數(shù)據(jù)緩存起來,這樣就把獨(dú)占設(shè)備改造成了共享設(shè)備,從而提高了獨(dú)占設(shè)備的利用率和系統(tǒng)效率 。4.SPOOLing技術(shù) 213).SPOOLing系統(tǒng)的特點(diǎn) 提高了I/O的速度(2)將獨(dú)占設(shè)備改造為共享設(shè)備 在SPOOLing 系統(tǒng)中,實(shí)際上并沒有為任何進(jìn)程分配,而只是在輸入井和輸出井中,為進(jìn)程分配一存儲(chǔ)區(qū)和建立一張I/O請(qǐng)求表。這樣,可把獨(dú)占設(shè)備改造為共享設(shè)備

10、。(3)實(shí)現(xiàn)了虛擬設(shè)備功能 宏觀上,雖然是多個(gè)進(jìn)程在同時(shí)使用一臺(tái)獨(dú)立設(shè)備,而對(duì)每一個(gè)進(jìn)程而言,它們都認(rèn)為自己是獨(dú)占了一個(gè)設(shè)備。當(dāng)然,該設(shè)備只是邏輯上的設(shè)備。 4.SPOOLing技術(shù) 22磁盤存儲(chǔ)器的管理1)磁盤存儲(chǔ)器的描述 磁盤存儲(chǔ)器不僅容量大,存取速度快,而且可以實(shí)現(xiàn)隨機(jī)存取,是當(dāng)前存放大量程序和數(shù)據(jù)的理想設(shè)備,故在現(xiàn)代計(jì)算機(jī)系統(tǒng)中,都配置了磁盤存儲(chǔ)器,并以它為主來存放文件。這樣,對(duì)文件的操作,都將涉及到對(duì)磁盤的訪問。232)磁盤調(diào)度算法磁盤是可供多個(gè)進(jìn)程共享的設(shè)備,當(dāng)有很多個(gè)進(jìn)程都要求訪問磁盤時(shí),應(yīng)采用一種最佳的調(diào)度算法,以使各個(gè)進(jìn)程對(duì)磁盤的平均訪問時(shí)間最小。由于在訪問磁盤的時(shí)間中,主要

11、是尋道時(shí)間,因此,磁盤調(diào)度的目標(biāo)是使磁盤的平均尋道時(shí)間最少。目前常用的磁盤調(diào)度算法有: 1.先來先服務(wù) 2.最短尋道時(shí)間優(yōu)先 3.掃描算法242)磁盤調(diào)度算法1. 先來先服務(wù)FCFS(First-Come, First Served) 進(jìn)程提出磁盤I/O請(qǐng)求的順序:55,58,39,18,90,160,150,38,184252)磁盤調(diào)度算法1. 先來先服務(wù)FCFS(First-Come, First Served) 進(jìn)程提出磁盤I/O請(qǐng)求的順序:55,58,39,18,90,160,150,38,184262. 最短尋道時(shí)間優(yōu)先SSTF(Shortest Seek Time First) 2

12、)磁盤調(diào)度算法進(jìn)程提出磁盤I/O請(qǐng)求的順序:55,58,39,18,90,160,150,38,184272. 最短尋道時(shí)間優(yōu)先SSTF(Shortest Seek Time First) 2)磁盤調(diào)度算法進(jìn)程提出磁盤I/O請(qǐng)求的順序:55,58,39,18,90,160,150,38,184283. 掃描(SCAN)算法 1) 進(jìn)程“饑餓”現(xiàn)象 SSTF算法雖然能獲得較好的尋道性能, 但卻可能導(dǎo)致某個(gè)進(jìn)程發(fā)生“饑餓”(Starvation)現(xiàn)象。因?yàn)橹灰粩嘤行逻M(jìn)程的請(qǐng)求到達(dá),且其所要訪問的磁道與磁頭當(dāng)前所在磁道的距離較近,這種新進(jìn)程的I/O請(qǐng)求必須優(yōu)先滿足。對(duì)SSTF算法略加修改后所形成的SCAN算法,即可防止老進(jìn)程出現(xiàn)“饑餓”現(xiàn)象。 2)磁盤調(diào)度算法292)SCAN算法:既考慮距離又考慮磁頭移動(dòng)方向 進(jìn)程提出磁盤I/O請(qǐng)求的順

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論