第4單元設(shè)備管理_第1頁(yè)
已閱讀1頁(yè),還剩51頁(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)介

1、第4單元 設(shè)備管理,設(shè)備特點(diǎn)各異,如何管?,設(shè)備的分類(lèi)設(shè)備管理的目標(biāo)設(shè)備管理功能舉例,,設(shè)備分類(lèi),2,塊設(shè)備又稱存儲(chǔ)設(shè)備,是存儲(chǔ)信息的設(shè)備,如:磁盤(pán)、磁鼓。 (以塊為單位傳輸信息)字符設(shè)備又稱輸入輸出設(shè)備,能將信息從計(jì)算機(jī)外部輸入到機(jī)內(nèi), 或反之,如:鍵盤(pán)、顯示器、打印、調(diào)制解調(diào)器、網(wǎng)卡等,,設(shè)備管理的目標(biāo),3,3,提高設(shè)備利用率合理分配設(shè)備提高設(shè)備與CPU、各外部設(shè)備之間的并行性方便用戶的使用

2、 提供使用方便且獨(dú)立于設(shè)備的界面統(tǒng)一:對(duì)各種不同的設(shè)備提供一致的界面獨(dú)立于設(shè)備:用戶使用的設(shè)備與物理設(shè)備無(wú)關(guān),,設(shè)備管理分為兩層,,硬件相關(guān)層,,硬件無(wú)關(guān)層,一段操縱外設(shè)的程序,(1) 不論什么設(shè)備都是open, read, write, close操作系統(tǒng)為用戶提供統(tǒng)一的接口!,(2) 不同的設(shè)備對(duì)應(yīng)不同的設(shè)備文件(/dev/something)根據(jù)設(shè)備文件找到控制器的地址、內(nèi)容格式等等!,,,,,各層合作完成設(shè)備訪問(wèn),

3、,鍵盤(pán)命令,,磁盤(pán)命令,設(shè)備驅(qū)動(dòng),,,鍵盤(pán)控制器,磁盤(pán)控制器,,中斷處理,,,中斷處理,,,,鍵盤(pán),磁盤(pán),,,稱為I/O系統(tǒng),,5,設(shè)備獨(dú)立性概念① 什么是設(shè)備獨(dú)立性 所謂設(shè)備獨(dú)立性是指,用戶在程序中使用的設(shè)備與實(shí)際使 用的設(shè)備無(wú)關(guān),也就是在用戶程序中僅使用邏輯設(shè)備名。② 邏輯設(shè)備名 邏輯設(shè)備名,是用戶自己指定的設(shè)備名 (或設(shè)備號(hào)),它是 暫時(shí)的、可更改的。③ 物理設(shè)備名 物理設(shè)

4、備名,是系統(tǒng)提供的設(shè)備的標(biāo)準(zhǔn)名稱,它是永久 的、不可更改的。,設(shè)備獨(dú)立性,,int fd = open(“/dev/something”);for (int i = 0; i < 10; i++) {write(fd,i,sizeof(int));}close(fd);,,可不可以邏輯名都省略?,設(shè)備驅(qū)動(dòng),① 一個(gè)程序獨(dú)立于分配給它的某種類(lèi)型的具體設(shè)備 系統(tǒng)可以根據(jù)設(shè)備的使用情況,動(dòng)態(tài)地

5、分配給程序某類(lèi)設(shè) 備中的任一臺(tái)物理設(shè)備,程序都能正確地執(zhí)行。② 程序應(yīng)盡可能與它所使用的I/O設(shè)備類(lèi)型無(wú)關(guān) 在輸入 (或輸出)信息時(shí),信息可以從不同類(lèi)型的輸入 (或 輸出)設(shè)備上輸入 (或輸出),若要改變輸入 (或輸出) 設(shè)備 的類(lèi)型,程序只需進(jìn)行最少的修改。,兩種類(lèi)型的設(shè)備獨(dú)立性,第2種方案很多高級(jí)語(yǔ)言采用,,設(shè)備管理做什么?,(1)提供一組I/O命令,以便用戶進(jìn)程能夠在程序中提出I

6、/O請(qǐng)求,這是用戶使用外部設(shè)備的“界面”;(2)記住各種設(shè)備的使用情況,實(shí)現(xiàn)設(shè)備的分配與回收;(3)對(duì)緩沖區(qū)進(jìn)行管理,解決設(shè)備與設(shè)備之間、設(shè)備與CPU之間的速度匹配問(wèn)題;(4)按照用戶的具體請(qǐng)求,啟動(dòng)設(shè)備,通過(guò)不同的設(shè)備驅(qū)動(dòng)程序,進(jìn)行實(shí)際的I/O操作;I/O操作完成之后,通過(guò)中斷將結(jié)果通知用戶進(jìn)程,從而實(shí)現(xiàn)真正的I/O操作。,,無(wú)關(guān)層,相關(guān)層,請(qǐng)求I/O的進(jìn)程、I/O系統(tǒng)、設(shè)備驅(qū)動(dòng)進(jìn)程、中斷處理程序之間的同步關(guān)系,設(shè)備管理分成兩部

7、分,12,I/O子系統(tǒng)驅(qū)動(dòng)程序,,I/O子系統(tǒng),42,將邏輯設(shè)備轉(zhuǎn)換為物理設(shè)備獲得 I/O系統(tǒng)調(diào)用中給出的邏輯設(shè)備名(ldev)根據(jù)邏輯設(shè)備描述器,將邏輯設(shè)備名轉(zhuǎn)換為物理設(shè)備名合法性檢查獲得 I/O系統(tǒng)調(diào)用中給出的操作模式mode根據(jù)DCB中命令轉(zhuǎn)換表中允許的操作,檢查操作的合法性形成I/O請(qǐng)求塊,發(fā)消息給對(duì)應(yīng)的設(shè)備處理進(jìn)程根據(jù)請(qǐng)求的參數(shù)形成I/O請(qǐng)求塊(IORB)將I/O請(qǐng)求塊(IORB)掛到對(duì)應(yīng)的設(shè)備請(qǐng)求隊(duì)列,I/

8、O子系統(tǒng)的功能,設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)緩沖區(qū)管理設(shè)備分配,,設(shè)備控制塊,什么是設(shè)備控制塊(DCB )系統(tǒng)為每一臺(tái)設(shè)備都配置了一個(gè)用來(lái)記錄設(shè)備的硬件特性、連接和使用情況等一組數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu),稱為設(shè)備控制塊。,設(shè)備控制塊的內(nèi)容,9,設(shè)備名設(shè)備的系統(tǒng)名,即設(shè)備的物理名。設(shè)備屬性是描述設(shè)備現(xiàn)行狀態(tài)的一組屬性命令轉(zhuǎn)換表 轉(zhuǎn)換表包含設(shè)備驅(qū)動(dòng)程序的入口地址,,,命令轉(zhuǎn)換表(開(kāi)關(guān)表)作用,,,緩沖區(qū)管理,什么是緩沖 緩沖

9、是兩種不同速度的設(shè)備之間傳輸信息時(shí)平滑傳輸過(guò)程 的常用手段。緩沖類(lèi)別緩沖器 緩沖器是用來(lái)暫時(shí)存放數(shù)據(jù)的一種存儲(chǔ)裝置,它容量 較小,存取速度快。軟件緩沖 在I/O操作期間用來(lái)臨時(shí)存放I/O數(shù)據(jù)的一塊內(nèi)存區(qū)域。,為什么要引入緩沖,19,處理數(shù)據(jù)流的生產(chǎn)者與消費(fèi)者間的速度差異協(xié)調(diào)傳輸數(shù)據(jù)大小不一致的設(shè)備,常用的緩沖技術(shù),20,單緩沖雙緩沖緩沖隊(duì)列以

10、及緩沖池,,單緩沖讀,①,②,③,②與③需要同步,單緩沖寫(xiě),②與③需要同步,①,②,③,,雙緩沖輸入,輸入設(shè)備,BUF1,①,②,③,BUF2,,,②,③,雙緩沖輸出,輸出設(shè)備,BUF1,①,②,③,BUF2,②,③,,,25,19,雙緩沖區(qū)既用于輸入,也用于輸出數(shù)據(jù)時(shí),輸入設(shè)備,BUF1,①,②,③,BUF2,②,③,輸出設(shè)備,,,,,,,預(yù)先緩存,,,延遲發(fā)送,緩沖池---------UNIX緩沖管理算法,緩沖池中有2種隊(duì)列,27

11、,23,設(shè)備緩沖區(qū)隊(duì)列 與某類(lèi)設(shè)備有關(guān)的所有緩沖區(qū)組成的隊(duì)列稱為設(shè)備緩沖區(qū)隊(duì)列,簡(jiǎn)稱b鏈。,緩沖池中有2種隊(duì)列,空閑緩沖區(qū)隊(duì)列 可供重新分配使用的緩沖區(qū)組成的隊(duì)列稱為空閑緩沖區(qū)隊(duì)列,簡(jiǎn)稱av鏈。,緩沖區(qū)的組成緩存數(shù)組 —— 含有磁盤(pán)上的數(shù)據(jù)的存儲(chǔ)器數(shù)組緩存首部 —— 描述緩沖區(qū)特性的數(shù)據(jù)結(jié)構(gòu),緩沖管理數(shù)據(jù)結(jié)構(gòu),緩存首部結(jié)構(gòu),設(shè)備號(hào)dev緩沖區(qū)所包含的信息所屬設(shè)備的設(shè)備號(hào)塊號(hào)blkno由設(shè)備號(hào)指出的設(shè)備

12、上相對(duì)于第0塊的塊號(hào)狀態(tài)flag——描述了緩沖區(qū)當(dāng)前的狀態(tài)忙標(biāo)志BUSY:緩沖區(qū)當(dāng)前正“忙” 有效位AVE:緩沖包含的數(shù)據(jù)有效延遲寫(xiě)DELWR :核心在某緩沖區(qū)重新分配出去之前必須把緩沖區(qū)內(nèi)容寫(xiě)到磁盤(pán)上寫(xiě)標(biāo)志W(wǎng)RITE: 核心當(dāng)前正把緩沖區(qū)的內(nèi)容寫(xiě)到磁盤(pán)讀標(biāo)志READ:核心當(dāng)前正從磁盤(pán)往緩沖區(qū)寫(xiě)信息等待位 WAIT: 一個(gè)進(jìn)程當(dāng)前正在等候緩沖區(qū)變?yōu)榭臻e,緩沖管理算法,一個(gè)buf被分配用于讀/寫(xiě)某設(shè)備上的塊時(shí)

13、 置B_ BUSY=1,位于b鏈上,不在av鏈上; 當(dāng)讀/寫(xiě)操作結(jié)束時(shí) 釋放該buf,置B_BUSY=0,仍留在b鏈上,并送入 av鏈尾; 若進(jìn)程需要的信息在buf中時(shí) 在該設(shè)備的b鏈上找到,置B_BUSY=1;從av鏈上摘 除,使用完后,又送入av鏈,鏈入隊(duì)尾。,緩

14、沖管理算法,對(duì)空閑buf空隊(duì)列的處理 當(dāng)需要一個(gè)空閑buf時(shí),總是取空閑buf隊(duì)列(av鏈) 的 首元素; 一個(gè)使用過(guò)的buf釋放時(shí),插入到空閑buf隊(duì)列(av鏈) 的隊(duì)尾。 對(duì)延遲寫(xiě)的處理 當(dāng)一個(gè)具有延遲寫(xiě)標(biāo)記的buf移到av

15、鏈頭,要用于分 配時(shí),立即進(jìn)行寫(xiě)操作。從av鏈上摘除,使用完后 又送入av頭部。,,使用過(guò)的buf盡量晚的分配出去需要寫(xiě)設(shè)備時(shí)盡量晚點(diǎn)寫(xiě),設(shè)備分配,設(shè)備分配的辦法和設(shè)備的特點(diǎn)相關(guān)常用的設(shè)備分配技術(shù):獨(dú)享分配共享分配虛擬分配,,有了虛擬分配技術(shù),所有的設(shè)備都可以采用共享分配方式,獨(dú)享設(shè)備讓一個(gè)作業(yè)在整個(gè)運(yùn)行期間獨(dú)占使用的設(shè)備。特點(diǎn) 臨界資源費(fèi)時(shí)的I/

16、O操作或需人工干預(yù) 獨(dú)享分配(靜態(tài)分配) 在一個(gè)作業(yè)執(zhí)行前,將它所要使用的設(shè)備分配給它;當(dāng)它結(jié)束撤離時(shí),將分配給它的這類(lèi)設(shè)備收回。,對(duì)于打印機(jī)………,,共享設(shè)備可以交替使用的設(shè)備稱為共享設(shè)備。特點(diǎn)旋轉(zhuǎn)設(shè)備,可直接或隨機(jī)訪問(wèn)便于共享,轉(zhuǎn)接簡(jiǎn)單,耗費(fèi)較少,對(duì)于磁盤(pán)………..,共享分配(動(dòng)態(tài)分配):用時(shí)分配,不用時(shí)釋放,,要是打印機(jī)也能像磁盤(pán)一樣用?,30,虛擬設(shè)備技術(shù) 所謂虛擬設(shè)備技術(shù)

17、,是在一類(lèi)物理設(shè)備上模擬另一類(lèi)物理設(shè)備的技術(shù),是將獨(dú)占設(shè)備轉(zhuǎn)化為共享設(shè)備的技術(shù)。,虛擬設(shè)備 通常把用來(lái)代替獨(dú)占型設(shè)備的那部分外存空間(包括有關(guān)的控制表格)稱為虛擬設(shè)備。虛擬分配 當(dāng)進(jìn)程需要與獨(dú)占型設(shè)備交換信息時(shí),系統(tǒng)將分配磁盤(pán)空間,并建立相應(yīng)的數(shù)據(jù)結(jié)構(gòu),這種分配方法稱為設(shè)備的虛擬分配。,早期虛擬設(shè)備技術(shù),37,33,SPOOLING系統(tǒng)利用通道和中斷技術(shù),在主機(jī)控制之下,由通道完成輸入輸出工作。系統(tǒng)

18、提供一個(gè)軟件系統(tǒng),它提供預(yù)輸入和緩輸出的功能,使外部設(shè)備可以并行操作。這一軟件系統(tǒng)稱為SPOOLING系統(tǒng)。SPOOLING系統(tǒng)的優(yōu)點(diǎn)提供虛擬設(shè)備外圍設(shè)備同時(shí)聯(lián)機(jī)操作加快作業(yè)處理速度,32,設(shè)計(jì)思想預(yù)輸入 在作業(yè)需要數(shù)據(jù)前,OS已將所需數(shù)據(jù)預(yù)先輸入到輔存輸入井存放。 當(dāng)作業(yè) (或進(jìn)程) 需要數(shù)據(jù)時(shí),可直接從輔存中讀入主存。緩輸出 在在作業(yè)執(zhí)行

19、時(shí),將輸出數(shù)據(jù)寫(xiě)入輔存輸出井中。當(dāng)作業(yè) (或進(jìn)程) 執(zhí)行完畢 (或需要數(shù)據(jù)時(shí)) ,由操作系統(tǒng)將數(shù)據(jù)輸出。,SPOOLING系統(tǒng)組成,硬件大容量的輔存空間 通道裝置、中斷系統(tǒng)軟件預(yù)輸入表、緩輸出表:描述輔存輸入井和輸出井的狀態(tài)變化。預(yù)輸入程序、緩輸出程序、井管理程序,,設(shè)備處理(驅(qū)動(dòng))程序,定義 設(shè)備處理程序是直接控制設(shè)備運(yùn)轉(zhuǎn)的程序,它根據(jù)各類(lèi)設(shè)備的特點(diǎn)和性能來(lái)編寫(xiě)。每一類(lèi)設(shè)備有一個(gè)相應(yīng)的設(shè)備

20、處理程序,能控制同類(lèi)中多臺(tái)物理設(shè)備同時(shí)工作。,作用 設(shè)備驅(qū)動(dòng)程序?qū)拥淖饔檬菫閮?nèi)核I/O子系統(tǒng)隱藏設(shè)備控制器之間的差異。將I/O子系統(tǒng)與硬件分離,簡(jiǎn)化了操作系統(tǒng)開(kāi)發(fā)人員的任務(wù),也有利于設(shè)備的設(shè)計(jì)與制造。,讓鍵盤(pán)、顯示器工作起來(lái)……,,,,CPU向控制器中的寄存器讀寫(xiě)數(shù)據(jù),控制器完成真正的工作,并向CPU發(fā)中斷信號(hào),,讓磁盤(pán)工作起來(lái)…,,,,CPU向磁盤(pán)控制器中的寄存器讀寫(xiě)數(shù)據(jù),磁盤(pán)控制器完成真正的工作,并向CPU發(fā)中斷信號(hào),

21、,,所謂“設(shè)備無(wú)關(guān)性”,是指()。A.I/O設(shè)備具有獨(dú)立執(zhí)行I/O功能的特性B.用戶程序中使用的設(shè)備名與具體的物理設(shè)備無(wú)關(guān)C.設(shè)備驅(qū)動(dòng)程序與具體的物理設(shè)備無(wú)關(guān)D.系統(tǒng)能夠獨(dú)立地實(shí)現(xiàn)設(shè)備共享,例子,操作系統(tǒng)設(shè)備管理功能的內(nèi)部結(jié)構(gòu)設(shè)計(jì)一般是基于分層的思想,因此,通常將I/O軟件組織成四個(gè)層次:用戶應(yīng)用層軟件、中斷處理程序、獨(dú)立于設(shè)備的軟件和設(shè)備驅(qū)動(dòng)程序。采用分層思想的主要目的是_(1)__ 。當(dāng)用戶進(jìn)程提出I/O請(qǐng)求訪問(wèn)硬件時(shí):需要

22、按“ __(2)__ ”的層次結(jié)構(gòu)進(jìn)行。(1)A.便于即插即用 B.減少系統(tǒng)占用的空間C.便于系統(tǒng)修改、擴(kuò)充和移植 D.提高處理速度(2)A.進(jìn)程請(qǐng)求I/O一獨(dú)立于設(shè)備的軟件一中斷處理程序一設(shè)備驅(qū)動(dòng)程序一硬件 B.進(jìn)程請(qǐng)求I/O一獨(dú)立于設(shè)備的軟件—設(shè)備驅(qū)動(dòng)程序一中斷處理程序一硬件 C.進(jìn)程請(qǐng)求I/O一設(shè)備驅(qū)動(dòng)程序一中斷處理程序一獨(dú)立于設(shè)備的軟件一硬件 D.進(jìn)程請(qǐng)求I/O一設(shè)備驅(qū)動(dòng)程序一獨(dú)立于設(shè)備的軟件一中斷處理程序一硬

23、件,,設(shè)備管理的層次及功能,,,相關(guān)層,無(wú)關(guān)層,,在設(shè)備管理中,是由()完成真正的I/O操作的。A.輸入/輸出管理程序B.設(shè)備驅(qū)動(dòng)程序C.中斷處理程序D.設(shè)備啟動(dòng)程序,,設(shè)備驅(qū)動(dòng)程序是系統(tǒng)提供的一種通道程序,它專門(mén)用于在請(qǐng)求I/O的進(jìn)程與設(shè)備控制器之間傳輸信息。下面的選項(xiàng)中不是設(shè)備驅(qū)動(dòng)程序功能的是( )。(A)檢查用戶I/O請(qǐng)求的合法性 (B)及時(shí)響應(yīng)由控制器或通道發(fā)來(lái)的中斷請(qǐng)求 (C)控制I/O設(shè)備的I/O操作

24、(D)了解I/O設(shè)備的狀態(tài),傳送有關(guān)參數(shù),設(shè)置設(shè)備的工作方式,舉例,某文件占10個(gè)磁盤(pán)塊,現(xiàn)將該文件磁盤(pán)塊一一讀入內(nèi)存,并送用戶區(qū)分析。設(shè)一個(gè)緩沖區(qū)大小和磁盤(pán)塊一樣大,從磁盤(pán)讀入到緩沖區(qū)的時(shí)間為100us,從緩沖區(qū)讀入用戶區(qū)域要50us,cpu對(duì)數(shù)據(jù)分析需要50us,是分別計(jì)算在單緩沖區(qū)和雙緩沖區(qū)的情況下,讀入并分析該文件的時(shí)間。,,通常,緩沖池位于()中。A.設(shè)備控制器 B.輔助存儲(chǔ)器C.主存儲(chǔ)器D

25、.寄存器,,利用SPOOL技術(shù)實(shí)現(xiàn)虛擬設(shè)備的目的是()。A.把獨(dú)享的設(shè)備變?yōu)榭梢怨蚕鞡.便于獨(dú)享設(shè)備的分配C.便于對(duì)獨(dú)享設(shè)備的管理D.便于獨(dú)享設(shè)備與CPU并行工作,,設(shè)備管理是分層管理的,分為硬件相關(guān)部分和硬件無(wú)關(guān)部分。操作系統(tǒng)可以只做無(wú)關(guān)部分,硬件相關(guān)部分即設(shè)備驅(qū)動(dòng)程序,這部分操作系統(tǒng)可以不做,但是會(huì)提供一種方式讓其作為操作系統(tǒng)的一部分運(yùn)行無(wú)關(guān)層又叫I/O子系統(tǒng),主要做設(shè)備的分配,為各種設(shè)備建立緩沖區(qū)。,,裝了OS后的計(jì)算

溫馨提示

  • 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ù)僅提供信息存儲(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)論