版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P1P1設(shè)備管理設(shè)備管理n I/O設(shè)備的硬件結(jié)構(gòu)n 外設(shè)與主機(jī)的I/O控制方式n 通道技術(shù)n 設(shè)備的分配與釋放n 設(shè)備驅(qū)動(dòng)n 緩沖技術(shù)n 虛擬設(shè)備n I/O系統(tǒng)的軟件組織linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P2P2linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P3P3操作系統(tǒng)整體結(jié)構(gòu)操作系統(tǒng)整體結(jié)構(gòu)linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P4P4linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P5P5linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P6P6設(shè)備管理設(shè)備管理設(shè)備管理概述設(shè)備管
2、理概述n 設(shè)備管理是計(jì)算機(jī)中實(shí)現(xiàn)對(duì)外部設(shè)備進(jìn)行管理、設(shè)備管理是計(jì)算機(jī)中實(shí)現(xiàn)對(duì)外部設(shè)備進(jìn)行管理、數(shù)據(jù)傳輸控制的模塊(除數(shù)據(jù)傳輸控制的模塊(除CPU和內(nèi)存)和內(nèi)存)n 是系統(tǒng)資源管理中最復(fù)雜、最多樣化的部分是系統(tǒng)資源管理中最復(fù)雜、最多樣化的部分n 設(shè)備管理實(shí)現(xiàn)并行操作,以實(shí)現(xiàn)其高利用率設(shè)備管理實(shí)現(xiàn)并行操作,以實(shí)現(xiàn)其高利用率u與與CPU并行并行u與其他設(shè)備并行與其他設(shè)備并行n 設(shè)備管理基于硬件提供的通道、設(shè)備物理性能,設(shè)備管理基于硬件提供的通道、設(shè)備物理性能,實(shí)現(xiàn)多任務(wù)、多進(jìn)程共享外部設(shè)備實(shí)現(xiàn)多任務(wù)、多進(jìn)程共享外部設(shè)備n 大部分外部設(shè)備屬于臨界資源,具備互斥特性大部分外部設(shè)備屬于臨界資源,具備互斥特
3、性linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P7P7設(shè)備管理設(shè)備管理設(shè)備管理的任務(wù)和功能設(shè)備管理的任務(wù)和功能n任務(wù):任務(wù):u對(duì)對(duì)I/O設(shè)備的選擇、分配和控制設(shè)備的選擇、分配和控制u為用戶提供友好的界面(接口)為用戶提供友好的界面(接口)u提高設(shè)備之間、設(shè)備與提高設(shè)備之間、設(shè)備與CPU之間的并發(fā)度。之間的并發(fā)度。n功能:功能:u提供友好(或者統(tǒng)一)的接口提供友好(或者統(tǒng)一)的接口u實(shí)施設(shè)備的分配和回收實(shí)施設(shè)備的分配和回收u實(shí)現(xiàn)設(shè)備之間、設(shè)備與實(shí)現(xiàn)設(shè)備之間、設(shè)備與CPU之間的并行操作之間的并行操作u解決設(shè)備與解決設(shè)備與CPU之間的速度匹配(緩沖技術(shù))之間的速度匹配(緩沖技術(shù))linux
4、操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P8P8設(shè)備的分類(lèi)設(shè)備的分類(lèi)按數(shù)據(jù)傳輸按數(shù)據(jù)傳輸?shù)牡臄?shù)量分類(lèi)數(shù)量分類(lèi)塊設(shè)備(Block DeviceBlock Device):):指以數(shù)據(jù)塊為單位來(lái)組織指以數(shù)據(jù)塊為單位來(lái)組織和傳送數(shù)據(jù)信息的設(shè)備。典型的塊設(shè)備是磁盤(pán),每個(gè)和傳送數(shù)據(jù)信息的設(shè)備。典型的塊設(shè)備是磁盤(pán),每個(gè)盤(pán)塊的大小為盤(pán)塊的大小為256B256B4KB4KB。字符設(shè)備(字符設(shè)備(Character DeviceCharacter Device):):指以單個(gè)字符為單指以單個(gè)字符為單位來(lái)傳送數(shù)據(jù)信息的設(shè)備。這類(lèi)設(shè)備一般用于數(shù)據(jù)的位來(lái)傳送數(shù)據(jù)信息的設(shè)備。這類(lèi)設(shè)備一般用于數(shù)據(jù)的輸入和輸出,有交互
5、式終端、打印機(jī)等。輸入和輸出,有交互式終端、打印機(jī)等。輸入輸入ls l /dev查看設(shè)備列表,以查看設(shè)備列表,以c或或b開(kāi)頭的是什么設(shè)備?開(kāi)頭的是什么設(shè)備?linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P9P9設(shè)備的分類(lèi)設(shè)備的分類(lèi)按資源分配的角度分類(lèi)按資源分配的角度分類(lèi)獨(dú)占設(shè)備:指在一段時(shí)間內(nèi)只允許一個(gè)用戶(進(jìn)程)訪問(wèn)的指在一段時(shí)間內(nèi)只允許一個(gè)用戶(進(jìn)程)訪問(wèn)的設(shè)備,大多數(shù)低速的設(shè)備,大多數(shù)低速的I/OI/O設(shè)備,如用戶終端、打印機(jī)等屬于這設(shè)備,如用戶終端、打印機(jī)等屬于這類(lèi)設(shè)備。因?yàn)楠?dú)占設(shè)備屬于臨界資源,所以多個(gè)并發(fā)進(jìn)程必類(lèi)設(shè)備。因?yàn)楠?dú)占設(shè)備屬于臨界資源,所以多個(gè)并發(fā)進(jìn)程必須互斥地進(jìn)行
6、訪問(wèn)。須互斥地進(jìn)行訪問(wèn)。共享設(shè)備:指在一段時(shí)間內(nèi)允許多個(gè)進(jìn)程同時(shí)訪問(wèn)的設(shè)備。指在一段時(shí)間內(nèi)允許多個(gè)進(jìn)程同時(shí)訪問(wèn)的設(shè)備。顯然,共享設(shè)備必須是可尋址的和可隨機(jī)訪問(wèn)的設(shè)備。典型顯然,共享設(shè)備必須是可尋址的和可隨機(jī)訪問(wèn)的設(shè)備。典型的共享設(shè)備是磁盤(pán)。共享設(shè)備不僅可以獲得良好的設(shè)備利用的共享設(shè)備是磁盤(pán)。共享設(shè)備不僅可以獲得良好的設(shè)備利用率,而且是實(shí)現(xiàn)文件系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)的物質(zhì)基礎(chǔ)。率,而且是實(shí)現(xiàn)文件系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)的物質(zhì)基礎(chǔ)。虛擬設(shè)備:指通過(guò)虛擬技術(shù)將一臺(tái)獨(dú)占設(shè)備變換為若干臺(tái)供指通過(guò)虛擬技術(shù)將一臺(tái)獨(dú)占設(shè)備變換為若干臺(tái)供多個(gè)用戶(進(jìn)程)共享的邏輯設(shè)備。一般可以利用假脫機(jī)技多個(gè)用戶(進(jìn)程)共享的邏輯設(shè)備。一般
7、可以利用假脫機(jī)技術(shù)(術(shù)(SPOOLingSPOOLing技術(shù))實(shí)現(xiàn)虛擬設(shè)備。技術(shù))實(shí)現(xiàn)虛擬設(shè)備。linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P10P10I/O設(shè)備物理特征設(shè)備物理特征輸入輸出設(shè)備都是以字符為I/O傳輸?shù)幕締挝幻總魉鸵粋€(gè)字符就發(fā)生一次I/O中斷輸入輸出設(shè)備的物理特征輸入輸出設(shè)備的物理特征I/O傳輸必須以完整的塊為基本單位設(shè)備每傳送完一塊發(fā)生一次中斷存儲(chǔ)型設(shè)備的物理特征存儲(chǔ)型設(shè)備的物理特征IO設(shè)備的物理特性設(shè)備的物理特性linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P11P11磁盤(pán)的物理特性磁盤(pán)的物理特性柱面柱面扇區(qū)扇區(qū)磁臂磁臂磁頭磁頭硬硬盤(pán)盤(pán)linux操作系統(tǒng)
8、華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P12P12時(shí)鐘時(shí)鐘n 時(shí)鐘也是一種外部設(shè)備,時(shí)鐘既不是字符設(shè)備,也不是塊時(shí)鐘也是一種外部設(shè)備,時(shí)鐘既不是字符設(shè)備,也不是塊設(shè)備設(shè)備n 可編程時(shí)鐘有如下操作模式:可編程時(shí)鐘有如下操作模式:u單觸發(fā)模式單觸發(fā)模式u方波模式方波模式終端終端n 存儲(chǔ)映像終端:包括顯示器和輸入鍵盤(pán),該類(lèi)終端直接和存儲(chǔ)映像終端:包括顯示器和輸入鍵盤(pán),該類(lèi)終端直接和主機(jī)相連主機(jī)相連n RS-232終端:通過(guò)一次傳輸一位的串行口與計(jì)算機(jī)通信終端:通過(guò)一次傳輸一位的串行口與計(jì)算機(jī)通信n X終端:連接在以太網(wǎng)中和主機(jī)進(jìn)行通信終端:連接在以太網(wǎng)中和主機(jī)進(jìn)行通信linux操作系統(tǒng)華軟軟件學(xué)院電子
9、系華軟軟件學(xué)院電子系P13P13外設(shè)與主機(jī)的外設(shè)與主機(jī)的I/O控制方式控制方式循環(huán)循環(huán)I/O測(cè)試方式測(cè)試方式n 用戶程序直接控制用戶程序直接控制I/O操作,測(cè)試指令測(cè)試一臺(tái)操作,測(cè)試指令測(cè)試一臺(tái)設(shè)備的忙設(shè)備的忙/閑標(biāo)志,決定主存與外設(shè)之間是否要傳閑標(biāo)志,決定主存與外設(shè)之間是否要傳輸,直到該標(biāo)志為輸,直到該標(biāo)志為“閑閑”時(shí),才能繼續(xù)執(zhí)行下面時(shí),才能繼續(xù)執(zhí)行下面的的I/O操作指令操作指令程序中斷程序中斷I/O方式方式n 用戶用戶進(jìn)程通過(guò)進(jìn)程通過(guò)CPU發(fā)出指令啟動(dòng)外設(shè),僅當(dāng)發(fā)出指令啟動(dòng)外設(shè),僅當(dāng)I/O操作正?;虍惓=Y(jié)束時(shí),操作正?;虍惓=Y(jié)束時(shí),I/O控制器向控制器向CPU發(fā)出發(fā)出中斷信號(hào),中斷信號(hào),
10、CPU進(jìn)行中斷處理。進(jìn)行中斷處理。linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P14P14外設(shè)與主機(jī)的外設(shè)與主機(jī)的I/O控制方式控制方式直接內(nèi)存存取方式(直接內(nèi)存存取方式(DMA)n 外設(shè)和內(nèi)存之間直接進(jìn)行數(shù)據(jù)交換,不需要外設(shè)和內(nèi)存之間直接進(jìn)行數(shù)據(jù)交換,不需要CPUCPU干預(yù),多干預(yù),多用于塊設(shè)備的數(shù)據(jù)傳輸用于塊設(shè)備的數(shù)據(jù)傳輸n 過(guò)程如下:過(guò)程如下:u當(dāng)進(jìn)程要求設(shè)備輸入數(shù)據(jù)時(shí),當(dāng)進(jìn)程要求設(shè)備輸入數(shù)據(jù)時(shí),CPUCPU把準(zhǔn)備存放輸入數(shù)據(jù)把準(zhǔn)備存放輸入數(shù)據(jù)的內(nèi)存地址和字節(jié)數(shù)送入的內(nèi)存地址和字節(jié)數(shù)送入DMADMA控制器。然后設(shè)置標(biāo)志位控制器。然后設(shè)置標(biāo)志位,啟動(dòng)設(shè)備,開(kāi)始數(shù)據(jù)輸入,啟動(dòng)設(shè)備,
11、開(kāi)始數(shù)據(jù)輸入u發(fā)出數(shù)據(jù)輸入要求的進(jìn)程進(jìn)入阻塞,調(diào)度其他進(jìn)程進(jìn)發(fā)出數(shù)據(jù)輸入要求的進(jìn)程進(jìn)入阻塞,調(diào)度其他進(jìn)程進(jìn)入入CPUCPUu輸入設(shè)備挪用輸入設(shè)備挪用CPUCPU工作周期,將數(shù)據(jù)從外部緩沖區(qū)送入工作周期,將數(shù)據(jù)從外部緩沖區(qū)送入內(nèi)存內(nèi)存uDMADMA控制器在傳輸完成時(shí),發(fā)出中斷信號(hào),控制器在傳輸完成時(shí),發(fā)出中斷信號(hào),CPUCPU進(jìn)入中進(jìn)入中斷處理程序斷處理程序u中斷處理完畢后,中斷處理完畢后,CPUCPU返回被中斷的進(jìn)程返回被中斷的進(jìn)程linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P15P15外設(shè)與主機(jī)的外設(shè)與主機(jī)的I/O控制方式控制方式通道方式通道方式n 通道是一個(gè)獨(dú)立于通道是一個(gè)獨(dú)立于
12、CPU的專(zhuān)管輸入輸出控制的處的專(zhuān)管輸入輸出控制的處理機(jī),它控制設(shè)備與內(nèi)存直接進(jìn)行數(shù)據(jù)交換。理機(jī),它控制設(shè)備與內(nèi)存直接進(jìn)行數(shù)據(jù)交換。n 通道有自己的通道指令,由通道指令構(gòu)成通道程通道有自己的通道指令,由通道指令構(gòu)成通道程序。由序。由CPU啟動(dòng)通道工作,通道通過(guò)執(zhí)行通道程啟動(dòng)通道工作,通道通過(guò)執(zhí)行通道程序控制數(shù)據(jù)傳輸,并在操作結(jié)束時(shí)向序控制數(shù)據(jù)傳輸,并在操作結(jié)束時(shí)向CPU發(fā)中斷發(fā)中斷信號(hào),由信號(hào),由CPU進(jìn)行傳輸結(jié)束中斷處理通道。進(jìn)行傳輸結(jié)束中斷處理通道。linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P16P16CPU與與IO設(shè)備的連接設(shè)備的連接圖形控制器監(jiān)控器處理機(jī)存儲(chǔ)控制器緩存內(nèi)存SC
13、SI控制器IDE磁盤(pán)控制器擴(kuò)展總線內(nèi)部接口鍵盤(pán)串口并口磁盤(pán)磁盤(pán)磁盤(pán)磁盤(pán)SCSI總線PCI總線擴(kuò)展總線圖5.1 典型的PC總線結(jié)構(gòu)linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P17P17控制器控制器屏蔽訪問(wèn)設(shè)備的具體的時(shí)序;屏蔽訪問(wèn)設(shè)備的具體的時(shí)序;CPU操作控制器,提供命令和數(shù)據(jù)給控制器操作控制器,提供命令和數(shù)據(jù)給控制器,由控制器操縱,由控制器操縱IO設(shè)備設(shè)備現(xiàn)有的大多數(shù)控制器由以下三部分組成:現(xiàn)有的大多數(shù)控制器由以下三部分組成:n 控制器與控制器與CPU接口:接口:用于實(shí)現(xiàn)控制器與用于實(shí)現(xiàn)控制器與CPU之間之間的通信,該接口有三類(lèi)信號(hào)線分別為數(shù)據(jù)線、地的通信,該接口有三類(lèi)信號(hào)線分別
14、為數(shù)據(jù)線、地址線、控制線址線、控制線n 設(shè)備控制器與設(shè)備接口:設(shè)備控制器與設(shè)備接口:一個(gè)控制器可以連接一一個(gè)控制器可以連接一臺(tái)或多臺(tái)設(shè)備,相應(yīng)有一個(gè)或多個(gè)接口,每個(gè)接臺(tái)或多臺(tái)設(shè)備,相應(yīng)有一個(gè)或多個(gè)接口,每個(gè)接口連接一臺(tái)設(shè)備口連接一臺(tái)設(shè)備n I/O邏輯:邏輯:用于對(duì)用于對(duì)I/O進(jìn)行控制進(jìn)行控制linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P18P18通道類(lèi)型通道類(lèi)型選擇通道選擇通道(selector channel):可以連接多個(gè)外設(shè),而一可以連接多個(gè)外設(shè),而一次只能訪問(wèn)其中一個(gè)外設(shè),執(zhí)行一道通道程序(單道工作次只能訪問(wèn)其中一個(gè)外設(shè),執(zhí)行一道通道程序(單道工作方式)。以塊為單位傳送數(shù)據(jù),
15、速度快,適合高速外部設(shè)方式)。以塊為單位傳送數(shù)據(jù),速度快,適合高速外部設(shè)備。如:磁盤(pán),磁帶。備。如:磁盤(pán),磁帶。字節(jié)多路字節(jié)多路(byte multiplexor channel)通道通道 :以字節(jié)為單以字節(jié)為單位傳送數(shù)據(jù),多個(gè)外設(shè)分時(shí)輪流使用通道(分時(shí)系統(tǒng)工作位傳送數(shù)據(jù),多個(gè)外設(shè)分時(shí)輪流使用通道(分時(shí)系統(tǒng)工作方式)。適合連接低速字符設(shè)備。方式)。適合連接低速字符設(shè)備。數(shù)組多路數(shù)組多路(block multiplexor channel)通道:通道:以塊為單位以塊為單位傳送數(shù)據(jù)傳送數(shù)據(jù),可以并發(fā)訪問(wèn)多個(gè)外設(shè),分時(shí)執(zhí)行多道通道程可以并發(fā)訪問(wèn)多個(gè)外設(shè),分時(shí)執(zhí)行多道通道程序。適合連接中高速外部設(shè)備。
16、如:磁盤(pán),磁帶。序。適合連接中高速外部設(shè)備。如:磁盤(pán),磁帶。linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P19P19處理過(guò)程處理過(guò)程 當(dāng)進(jìn)程要求設(shè)備輸入數(shù)據(jù)時(shí),當(dāng)進(jìn)程要求設(shè)備輸入數(shù)據(jù)時(shí),CPU執(zhí)行執(zhí)行Start指令指令指明指明I/O操作、操作、通道程序地址、通道程序地址、設(shè)備號(hào)和對(duì)應(yīng)的通設(shè)備號(hào)和對(duì)應(yīng)的通道。道。 對(duì)應(yīng)通道接收到對(duì)應(yīng)通道接收到CPU發(fā)來(lái)的啟動(dòng)指令之后開(kāi)始工發(fā)來(lái)的啟動(dòng)指令之后開(kāi)始工作,把存放在內(nèi)存中的通道指令程序讀出并執(zhí)行,作,把存放在內(nèi)存中的通道指令程序讀出并執(zhí)行,并設(shè)置對(duì)應(yīng)設(shè)備的并設(shè)置對(duì)應(yīng)設(shè)備的I/O控制其中的控制狀態(tài)寄存器,控制其中的控制狀態(tài)寄存器,是設(shè)備開(kāi)始工作。
17、是設(shè)備開(kāi)始工作。 設(shè)備準(zhǔn)備好數(shù)據(jù),由設(shè)備準(zhǔn)備好數(shù)據(jù),由通道通道把數(shù)據(jù)送往通道指令指把數(shù)據(jù)送往通道指令指定的內(nèi)存區(qū)域。定的內(nèi)存區(qū)域。 若數(shù)據(jù)傳送結(jié)束,通道通過(guò)若數(shù)據(jù)傳送結(jié)束,通道通過(guò)中斷中斷請(qǐng)求線發(fā)中斷信請(qǐng)求線發(fā)中斷信號(hào)請(qǐng)求號(hào)請(qǐng)求CPU做中斷處理。做中斷處理。linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P20P20 中央處理機(jī)中央處理機(jī)內(nèi)存內(nèi)存字節(jié)多路通道字節(jié)多路通道數(shù)組多路通道數(shù)組多路通道選擇通道選擇通道卡片卡片輸入機(jī)輸入機(jī)卡片卡片輸入機(jī)輸入機(jī)打印機(jī)打印機(jī)磁盤(pán)磁盤(pán)磁帶磁帶通道結(jié)構(gòu)通道結(jié)構(gòu)linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P21P21設(shè)備分配設(shè)備分配 系統(tǒng)設(shè)備表系統(tǒng)
18、設(shè)備表SDT:每個(gè)系統(tǒng)設(shè)備占一表目每個(gè)系統(tǒng)設(shè)備占一表目 設(shè)備控制表設(shè)備控制表UCB:每個(gè)設(shè)備一張每個(gè)設(shè)備一張 控制器控制表控制器控制表CUCB:每個(gè)控制器一張每個(gè)控制器一張 通道控制表通道控制表CCB:每個(gè)通道一張每個(gè)通道一張按一定算法進(jìn)行設(shè)備分配按一定算法進(jìn)行設(shè)備分配,包括設(shè)備、設(shè)包括設(shè)備、設(shè)備控制器及通道備控制器及通道確保確保n “有有” 用戶能得到設(shè)備使用權(quán)。用戶能得到設(shè)備使用權(quán)。n “安全安全”用戶使用設(shè)備是安全的。用戶使用設(shè)備是安全的。linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P22P22設(shè)備分配的數(shù)據(jù)結(jié)構(gòu)設(shè)備分配的數(shù)據(jù)結(jié)構(gòu)表目i表目1UCB指針獲得設(shè)備的進(jìn)程設(shè)備標(biāo)識(shí)設(shè)備
19、類(lèi)型控制器等待隊(duì)列尾控制器等待隊(duì)列首CUCB指針設(shè)備忙閑標(biāo)記設(shè)備標(biāo)識(shí)設(shè)備類(lèi)型控制忙閑標(biāo)記控制器等待隊(duì)列尾控制器等待隊(duì)列首CCB指針控制器標(biāo)識(shí)通道忙閑標(biāo)記通道等待隊(duì)列尾通道等待隊(duì)列首通道標(biāo)識(shí)SDTUCB設(shè)備控制表控制器控制表CUCBCCB通道控制表等待進(jìn)程隊(duì)列l(wèi)inux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P23P23UCB數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P24P24設(shè)備分配的原則設(shè)備分配的原則設(shè)備分配總原則:充分發(fā)揮設(shè)備利用率,設(shè)備分配總原則:充分發(fā)揮設(shè)備利用率,避免由于不合理分配引起進(jìn)程死鎖。避免由于不合理分配引起進(jìn)程死鎖。具體考慮以下方面:具體考
20、慮以下方面:n設(shè)備的固有屬性設(shè)備的固有屬性 (獨(dú)占、共享、虛擬)。(獨(dú)占、共享、虛擬)。n設(shè)備分配算法(先來(lái)先服務(wù)、優(yōu)先級(jí))。設(shè)備分配算法(先來(lái)先服務(wù)、優(yōu)先級(jí))。n設(shè)備分配的安全性(安全或不安全分配設(shè)備分配的安全性(安全或不安全分配方式)。方式)。n設(shè)備獨(dú)立性(用戶程序獨(dú)立于使用的物設(shè)備獨(dú)立性(用戶程序獨(dú)立于使用的物理設(shè)備)。理設(shè)備)。linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P25P25設(shè)備分配方式設(shè)備分配方式靜態(tài)分配靜態(tài)分配:在進(jìn)程分創(chuàng)建時(shí)分配,在:在進(jìn)程分創(chuàng)建時(shí)分配,在進(jìn)程退出時(shí)釋放;進(jìn)程退出時(shí)釋放;u優(yōu)缺點(diǎn):不會(huì)出現(xiàn)死鎖;優(yōu)缺點(diǎn):不會(huì)出現(xiàn)死鎖;u設(shè)備利用率不高;設(shè)備利用率不
21、高;動(dòng)態(tài)分配動(dòng)態(tài)分配:在進(jìn)程執(zhí)行過(guò)程中根據(jù)需:在進(jìn)程執(zhí)行過(guò)程中根據(jù)需要分配,使用結(jié)束后釋放;要分配,使用結(jié)束后釋放;u優(yōu)缺點(diǎn)優(yōu)缺點(diǎn):需要考慮死鎖問(wèn)題需要考慮死鎖問(wèn)題u有利于提高設(shè)備利用率有利于提高設(shè)備利用率linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P26P26設(shè)備調(diào)度設(shè)備調(diào)度-輸入輸出調(diào)度算法輸入輸出調(diào)度算法先到先服務(wù)算法先到先服務(wù)算法最短查找時(shí)間優(yōu)先算法最短查找時(shí)間優(yōu)先算法掃描算法(電梯算法)掃描算法(電梯算法)N步掃描法步掃描法linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P27P27緩沖技術(shù)緩沖技術(shù)緩沖緩沖n 是兩種不同速度的設(shè)備之間傳輸信息時(shí)平滑傳是兩種不同速度的設(shè)
22、備之間傳輸信息時(shí)平滑傳輸過(guò)程的常用手段。輸過(guò)程的常用手段。不同的緩沖方式不同的緩沖方式n 緩沖器緩沖器(硬緩沖硬緩沖)u緩沖器是用來(lái)暫時(shí)存放數(shù)據(jù)的一種存儲(chǔ)裝置,緩沖器是用來(lái)暫時(shí)存放數(shù)據(jù)的一種存儲(chǔ)裝置,它容量較小,存取速度快。它容量較小,存取速度快。n 軟件緩沖軟件緩沖u在在I/O操作期間用來(lái)臨時(shí)存放操作期間用來(lái)臨時(shí)存放I/O數(shù)據(jù)的一塊數(shù)據(jù)的一塊存儲(chǔ)區(qū)域。存儲(chǔ)區(qū)域。linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P28P28緩沖類(lèi)別緩沖類(lèi)別單緩沖單緩沖(single buffer):設(shè)一個(gè)緩沖區(qū),:設(shè)一個(gè)緩沖區(qū),CPU和和外設(shè)輪流使用,外設(shè)輪流使用, 一方處理完之后接著等待對(duì)方處一方處理完
23、之后接著等待對(duì)方處理。理。雙緩沖雙緩沖(double buffer):設(shè)兩個(gè)緩沖區(qū),:設(shè)兩個(gè)緩沖區(qū),CPU和和外設(shè)都可以連續(xù)處理而無(wú)需等待對(duì)方。要求外設(shè)都可以連續(xù)處理而無(wú)需等待對(duì)方。要求CPU和外設(shè)的速度相近。和外設(shè)的速度相近。多緩沖多緩沖(multiply buffer):多個(gè)緩沖區(qū),:多個(gè)緩沖區(qū),CPU和和外設(shè)的處理速度可以相差較大。如用于輸入或輸外設(shè)的處理速度可以相差較大。如用于輸入或輸出的環(huán)形緩沖區(qū)。(一般是專(zhuān)用)出的環(huán)形緩沖區(qū)。(一般是專(zhuān)用)緩沖池緩沖池(bufferpool):由多個(gè)緩沖區(qū)構(gòu)成,既:由多個(gè)緩沖區(qū)構(gòu)成,既可用于輸入也可用于輸出,多個(gè)進(jìn)程共享,可用可用于輸入也可用于輸出
24、,多個(gè)進(jìn)程共享,可用于多種設(shè)備。(通用,利用率高)于多種設(shè)備。(通用,利用率高)linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P29P29緩沖類(lèi)別緩沖類(lèi)別I/O設(shè)備輸入用戶進(jìn)程操作系統(tǒng)I/O設(shè)備輸入用戶進(jìn)程操作系統(tǒng)輸入I/O設(shè)備用戶進(jìn)程操作系統(tǒng)(a)(b)(c)(a)單緩沖 ;(b)雙緩沖; (c)循環(huán)緩沖linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P30P30虛擬設(shè)備虛擬設(shè)備虛擬設(shè)備的思想是,獨(dú)占型設(shè)備與內(nèi)存進(jìn)程之間加入共享型設(shè)備作為過(guò)渡因?yàn)楣蚕硇驮O(shè)備速度快,進(jìn)程I/O傳輸所需的時(shí)間較短,提高了進(jìn)程執(zhí)行速度由于信息在獨(dú)占型設(shè)備與共享型設(shè)備之間的傳輸時(shí)連續(xù)進(jìn)行的,獨(dú)占型設(shè)備在
25、占用期間一直使用,提供了設(shè)備資源的利用率linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P31P31SPOOLing技術(shù)技術(shù)SPOOLing技術(shù)技術(shù)n Simultaneous Peripheral Operation On Line(并發(fā)(并發(fā)的非實(shí)質(zhì)性在線操作)的非實(shí)質(zhì)性在線操作)n SPOOLing又被稱(chēng)為又被稱(chēng)為“假脫機(jī)假脫機(jī)”技術(shù)技術(shù)n 輸入井:在磁盤(pán)用于虛擬輸入設(shè)備的專(zhuān)門(mén)空間。該井輸入井:在磁盤(pán)用于虛擬輸入設(shè)備的專(zhuān)門(mén)空間。該井用于收容輸入設(shè)備上的輸入數(shù)據(jù)用于收容輸入設(shè)備上的輸入數(shù)據(jù)n 輸出井:在磁盤(pán)用于虛擬輸出設(shè)備的專(zhuān)門(mén)空間。該井輸出井:在磁盤(pán)用于虛擬輸出設(shè)備的專(zhuān)門(mén)空間。該井
26、用于收容用戶進(jìn)程需要輸出的數(shù)據(jù)用于收容用戶進(jìn)程需要輸出的數(shù)據(jù)n 虛擬分配:當(dāng)進(jìn)程請(qǐng)求虛擬分配:當(dāng)進(jìn)程請(qǐng)求I/O時(shí),時(shí),OS給進(jìn)程分配的不是真給進(jìn)程分配的不是真正的物理設(shè)備,而是這些可共享的、并與物理設(shè)備有正的物理設(shè)備,而是這些可共享的、并與物理設(shè)備有邏輯聯(lián)系的虛擬設(shè)備邏輯聯(lián)系的虛擬設(shè)備-“井井”n 采用共享的方式為進(jìn)程分配一個(gè)共享設(shè)備采用共享的方式為進(jìn)程分配一個(gè)共享設(shè)備“井井”n 將將“井井”與指定的獨(dú)占設(shè)備關(guān)聯(lián)與指定的獨(dú)占設(shè)備關(guān)聯(lián)linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P32P32SPOOLing技術(shù)技術(shù)linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P33P33I/O系
27、統(tǒng)的軟件組織系統(tǒng)的軟件組織操作系統(tǒng)操作系統(tǒng)I/O硬件管理硬件管理I/O軟件管理軟件管理上層用戶程序(應(yīng)用層)上層用戶程序(應(yīng)用層)設(shè)備設(shè)備控制器控制器命令寄存器命令寄存器底層硬件設(shè)備(物理層)底層硬件設(shè)備(物理層)中斷處理程序中斷處理程序設(shè)備驅(qū)動(dòng)程序設(shè)備驅(qū)動(dòng)程序與設(shè)備無(wú)關(guān)的與設(shè)備無(wú)關(guān)的I/O軟件軟件用戶空間的用戶空間的I/O軟件軟件狀態(tài)寄存器狀態(tài)寄存器數(shù)據(jù)寄存器數(shù)據(jù)寄存器linux操作系統(tǒng)華軟軟件學(xué)院電子系華軟軟件學(xué)院電子系P34P34Linux 的設(shè)備管理的設(shè)備管理Linux 系統(tǒng)把每一個(gè)系統(tǒng)把每一個(gè)I/O設(shè)備看成一個(gè)設(shè)備看成一個(gè)文件,即設(shè)備文件文件,即設(shè)備文件。Linux 設(shè)備管理:設(shè)備管
28、理:n 向上(面向用戶)提供設(shè)備文件的系統(tǒng)調(diào)用向上(面向用戶)提供設(shè)備文件的系統(tǒng)調(diào)用n 向下(面向設(shè)備)內(nèi)核將控制權(quán)交給設(shè)備驅(qū)動(dòng),由其完向下(面向設(shè)備)內(nèi)核將控制權(quán)交給設(shè)備驅(qū)動(dòng),由其完成底層的設(shè)備驅(qū)動(dòng)。成底層的設(shè)備驅(qū)動(dòng)。Linux 系統(tǒng)用主設(shè)備號(hào)和從設(shè)備號(hào)來(lái)標(biāo)識(shí)設(shè)備。系統(tǒng)用主設(shè)備號(hào)和從設(shè)備號(hào)來(lái)標(biāo)識(shí)設(shè)備。n 主設(shè)備號(hào)(主設(shè)備號(hào)(major number)描述控制這個(gè)設(shè)備的驅(qū)動(dòng)程)描述控制這個(gè)設(shè)備的驅(qū)動(dòng)程序,驅(qū)動(dòng)程序和主設(shè)備號(hào)一一對(duì)應(yīng),主設(shè)備號(hào)相同的設(shè)序,驅(qū)動(dòng)程序和主設(shè)備號(hào)一一對(duì)應(yīng),主設(shè)備號(hào)相同的設(shè)備使用同一個(gè)驅(qū)動(dòng)程序。備使用同一個(gè)驅(qū)動(dòng)程序。n 從設(shè)備號(hào)(從設(shè)備號(hào)(minor number)用來(lái)區(qū)分同一個(gè)驅(qū)動(dòng)程序控)用來(lái)區(qū)分同一個(gè)驅(qū)動(dòng)程序控制的不同設(shè)備。制的不同設(shè)備。設(shè)備驅(qū)動(dòng)程序接口設(shè)備驅(qū)動(dòng)程序接口n Linux 設(shè)備管理向其他子系統(tǒng)提供了一個(gè)統(tǒng)一的接口,設(shè)備管理向其他子系統(tǒng)提供了一個(gè)統(tǒng)一的接口,即通過(guò)結(jié)構(gòu)即通過(guò)結(jié)構(gòu)file_operations 來(lái)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 天津農(nóng)村蓋房合同范例
- 工作合同范例范例
- 墻紙銷(xiāo)售安裝合同范例
- 建筑項(xiàng)目中介合同范例
- 2024加工定做合同范本
- 2024個(gè)人借款的合同書(shū)范本
- 數(shù)字化農(nóng)業(yè)項(xiàng)目需求分析與目標(biāo)設(shè)定
- 數(shù)字化農(nóng)業(yè)的精準(zhǔn)農(nóng)業(yè)技術(shù)研究
- 蘇州科技大學(xué)天平學(xué)院《員工招聘與錄用》2022-2023學(xué)年第一學(xué)期期末試卷
- 蘇州科技大學(xué)天平學(xué)院《外國(guó)音樂(lè)史與名作賞析》2022-2023學(xué)年第一學(xué)期期末試卷
- 2024新版(粵教滬教版)三年級(jí)英語(yǔ)上冊(cè)單詞帶音標(biāo)
- 拆違服務(wù)合同模板
- 2025屆高三聽(tīng)力技巧指導(dǎo)-預(yù)讀、預(yù)測(cè)
- GB/T 31486-2024電動(dòng)汽車(chē)用動(dòng)力蓄電池電性能要求及試驗(yàn)方法
- 國(guó)企兩書(shū)一協(xié)議參考范本
- 2024年安徽省滁州市瑯琊區(qū)城市管理行政執(zhí)法局招聘15人歷年高頻難、易錯(cuò)點(diǎn)500題模擬試題附帶答案詳解
- 生成式人工智能數(shù)據(jù)安全風(fēng)險(xiǎn)及其應(yīng)對(duì)
- 短途調(diào)味品運(yùn)輸合同范本
- 畜禽解剖生理5消化系統(tǒng)課件
- 實(shí)驗(yàn)室定期自查制度
- 2024江蘇地區(qū)“三新”供電服務(wù)公司招聘600人高頻500題難、易錯(cuò)點(diǎn)模擬試題附帶答案詳解
評(píng)論
0/150
提交評(píng)論