OS_DeviceManagement_case_第1頁
OS_DeviceManagement_case_第2頁
OS_DeviceManagement_case_第3頁
OS_DeviceManagement_case_第4頁
OS_DeviceManagement_case_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、操作系統(tǒng)課程講義操作系統(tǒng)課程講義操作系統(tǒng)原理操作系統(tǒng)原理I/O設(shè)備管理案例分析設(shè)備管理案例分析 操作系統(tǒng)課程講義操作系統(tǒng)課程講義2Minix中的中的I/O設(shè)備管理設(shè)備管理v設(shè)備驅(qū)動方式(與設(shè)備驅(qū)動方式(與Unix的本質(zhì)區(qū)別,與的本質(zhì)區(qū)別,與Linux類似方式)類似方式) 每一類設(shè)備均有單獨的設(shè)備驅(qū)動程序,其中硬件無關(guān)的內(nèi)容形成公共程序、硬件相關(guān)每一類設(shè)備均有單獨的設(shè)備驅(qū)動程序,其中硬件無關(guān)的內(nèi)容形成公共程序、硬件相關(guān)的內(nèi)容作為特定驅(qū)動。以模塊化組織提高系統(tǒng)靈活性的內(nèi)容作為特定驅(qū)動。以模塊化組織提高系統(tǒng)靈活性 采用進程間通信的方式完成采用進程間通信的方式完成I/O設(shè)備的使用(設(shè)備的使用(Mini

2、x的進程式組織結(jié)構(gòu))的進程式組織結(jié)構(gòu)) Unix采用過程調(diào)用的方式,用戶進程調(diào)用驅(qū)動程序,引發(fā)操作系統(tǒng)陷入,完成采用過程調(diào)用的方式,用戶進程調(diào)用驅(qū)動程序,引發(fā)操作系統(tǒng)陷入,完成I/O操操作后由中斷處理程序喚醒用戶進程作后由中斷處理程序喚醒用戶進程v設(shè)備管理方法設(shè)備管理方法 設(shè)備驅(qū)動程序作為獨立進程存在,設(shè)備驅(qū)動程序作為獨立進程存在,OS啟動時各個設(shè)備驅(qū)動進程完成基本初始化,而后啟動時各個設(shè)備驅(qū)動進程完成基本初始化,而后等待消息(阻塞),直到用戶進程發(fā)送消息(使用等待消息(阻塞),直到用戶進程發(fā)送消息(使用I/O設(shè)備)將其喚醒設(shè)備)將其喚醒 與硬件相關(guān)的設(shè)備驅(qū)動部分作為過程被設(shè)備驅(qū)動程序調(diào)用,從

3、而實現(xiàn)無關(guān)性封裝與硬件相關(guān)的設(shè)備驅(qū)動部分作為過程被設(shè)備驅(qū)動程序調(diào)用,從而實現(xiàn)無關(guān)性封裝vI/O軟件與死鎖處理軟件與死鎖處理 Minix將所有與設(shè)備無關(guān)的將所有與設(shè)備無關(guān)的I/O軟件封裝在文件系統(tǒng)模塊中,所有的塊設(shè)備均作為一種軟件封裝在文件系統(tǒng)模塊中,所有的塊設(shè)備均作為一種特殊的文件特殊的文件 用戶空間的用戶空間的I/O軟件主要是供用戶程序調(diào)用的函數(shù)庫軟件主要是供用戶程序調(diào)用的函數(shù)庫 Minix中對死鎖的處理采用中對死鎖的處理采用“鴕鳥算法鴕鳥算法”I/O管理實例管理實例操作系統(tǒng)課程講義操作系統(tǒng)課程講義3進程式進程式OS與整體式與整體式OSI/O管理實例管理實例操作系統(tǒng)課程講義操作系統(tǒng)課程講義4

4、Windows中的中的I/O設(shè)備管理設(shè)備管理vI/O管理系統(tǒng)結(jié)構(gòu)管理系統(tǒng)結(jié)構(gòu) I/O管理系統(tǒng)是一個獨立的系統(tǒng)組件,存在于管理系統(tǒng)是一個獨立的系統(tǒng)組件,存在于NTOSKRNL.exe文件中文件中 I/O管理系統(tǒng)由多個執(zhí)行體組件和設(shè)備驅(qū)動程序組成,負責接受管理系統(tǒng)由多個執(zhí)行體組件和設(shè)備驅(qū)動程序組成,負責接受I/O請求,并針對性的請求,并針對性的將設(shè)備請求傳送到各類對應(yīng)的設(shè)備將設(shè)備請求傳送到各類對應(yīng)的設(shè)備 Windows中將所有的中將所有的I/O操作均看作對虛擬文件的操作,所有的操作均看作對虛擬文件的操作,所有的I/O數(shù)據(jù)傳輸都被看數(shù)據(jù)傳輸都被看作作“流數(shù)據(jù)流數(shù)據(jù)”,由,由I/O管理系統(tǒng)負責將虛擬文

5、件映射到對應(yīng)的物理設(shè)備上管理系統(tǒng)負責將虛擬文件映射到對應(yīng)的物理設(shè)備上vI/O管理系統(tǒng)組成管理系統(tǒng)組成 I/O管理器:負責定義支撐設(shè)備驅(qū)動程序的基本架構(gòu),直接響應(yīng)管理器:負責定義支撐設(shè)備驅(qū)動程序的基本架構(gòu),直接響應(yīng)I/O請求請求 設(shè)備驅(qū)動程序:負責定義并實現(xiàn)某一特定類型設(shè)備的設(shè)備驅(qū)動程序:負責定義并實現(xiàn)某一特定類型設(shè)備的I/O接口管理接口管理 PnP管理器:與管理器:與I/O管理器和總線驅(qū)動程序協(xié)同,檢測硬件資源的分配、設(shè)備的變更管理器和總線驅(qū)動程序協(xié)同,檢測硬件資源的分配、設(shè)備的變更 電源管理器:與電源管理器:與I/O管理器協(xié)同工作來檢測整個系統(tǒng)和單個設(shè)備,完成電源狀態(tài)轉(zhuǎn)換管理器協(xié)同工作來檢測

6、整個系統(tǒng)和單個設(shè)備,完成電源狀態(tài)轉(zhuǎn)換 WDM WMI:WDM的的WMI支持例程,負責實現(xiàn)設(shè)備與支持例程,負責實現(xiàn)設(shè)備與WMI服務(wù)之間的通信服務(wù)之間的通信 注冊表:作為一個數(shù)據(jù)庫,存儲基本硬件描述信息以及驅(qū)動程序的初始化和配置信息注冊表:作為一個數(shù)據(jù)庫,存儲基本硬件描述信息以及驅(qū)動程序的初始化和配置信息 硬件抽象層:將設(shè)備驅(qū)動程序?qū)崿F(xiàn)為二進制可移植的形式,實現(xiàn)對硬件平臺的獨立硬件抽象層:將設(shè)備驅(qū)動程序?qū)崿F(xiàn)為二進制可移植的形式,實現(xiàn)對硬件平臺的獨立vWindows中的中的I/O系統(tǒng)數(shù)據(jù)結(jié)構(gòu)系統(tǒng)數(shù)據(jù)結(jié)構(gòu) 文件對象、驅(qū)動程序?qū)ο?、設(shè)備對象、文件對象、驅(qū)動程序?qū)ο?、設(shè)備對象、I/O請求包請求包I/O管理

7、實例管理實例操作系統(tǒng)課程講義操作系統(tǒng)課程講義5Windows中中I/O系統(tǒng)組件系統(tǒng)組件I/O管理實例管理實例操作系統(tǒng)課程講義操作系統(tǒng)課程講義6Windows中的中的I/O數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)v文件對象文件對象 所有所有I/O設(shè)備被看作文件對象,用戶程序進行設(shè)備被看作文件對象,用戶程序進行I/O操作時就像是對一個文件進行操作操作時就像是對一個文件進行操作 文件對象是可共享的、有設(shè)備無關(guān)命名的、受保護的、支持同步的結(jié)構(gòu)文件對象是可共享的、有設(shè)備無關(guān)命名的、受保護的、支持同步的結(jié)構(gòu) 調(diào)用與實現(xiàn)過程:調(diào)用與實現(xiàn)過程:C庫函數(shù)庫函數(shù)Win32 DLLNTDLL.DLLNTOSKRNL.DLLv驅(qū)動程序?qū)ο笈c

8、設(shè)備對象驅(qū)動程序?qū)ο笈c設(shè)備對象 驅(qū)動程序?qū)ο蟠硪粋€獨立的驅(qū)動程序,驅(qū)動程序?qū)ο蟠硪粋€獨立的驅(qū)動程序,I/O管理器從驅(qū)動程序?qū)ο笾蝎@得并且為管理器從驅(qū)動程序?qū)ο笾蝎@得并且為I/O記錄每個驅(qū)動程序的入口點記錄每個驅(qū)動程序的入口點 設(shè)備對象在設(shè)備對象在OS中代表一個物理中代表一個物理/邏輯邏輯/虛擬的設(shè)備,并描述設(shè)備的基本特征虛擬的設(shè)備,并描述設(shè)備的基本特征 當驅(qū)動程序被加載時,當驅(qū)動程序被加載時,I/O管理器將創(chuàng)建一個驅(qū)動程序?qū)ο?,然后調(diào)用驅(qū)動程序的初管理器將創(chuàng)建一個驅(qū)動程序?qū)ο?,然后調(diào)用驅(qū)動程序的初始化例程,初始化例程將創(chuàng)建一個設(shè)備對象。設(shè)備對象接受始化例程,初始化例程將創(chuàng)建一個設(shè)備對象。設(shè)

9、備對象接受I/O操作請求,驅(qū)動程序操作請求,驅(qū)動程序?qū)ο髮崿F(xiàn)對象實現(xiàn)I/O操作請求操作請求vI/O請求包請求包 由固定部分(標題)和堆棧單元(數(shù)量不定)組成,包含了由固定部分(標題)和堆棧單元(數(shù)量不定)組成,包含了I/O請求的各類信息請求的各類信息 IRP由由I/O管理器構(gòu)造,保存了管理器構(gòu)造,保存了I/O請求的相關(guān)信息,同時保存了調(diào)用者的相關(guān)信息請求的相關(guān)信息,同時保存了調(diào)用者的相關(guān)信息 所有的所有的IRP均保存在均保存在IRP隊列中,當用戶程序終止后,隊列中,當用戶程序終止后,I/O系統(tǒng)將清除未完成的系統(tǒng)將清除未完成的IRPI/O管理實例管理實例操作系統(tǒng)課程講義操作系統(tǒng)課程講義7I/O請

10、求涉及到的數(shù)據(jù)結(jié)構(gòu)請求涉及到的數(shù)據(jù)結(jié)構(gòu)I/O管理實例管理實例操作系統(tǒng)課程講義操作系統(tǒng)課程講義8Windows中設(shè)備驅(qū)動程序?qū)又性O(shè)備驅(qū)動程序?qū)哟未蜪/O管理實例管理實例操作系統(tǒng)課程講義操作系統(tǒng)課程講義9設(shè)備驅(qū)動程序的內(nèi)容組成設(shè)備驅(qū)動程序的內(nèi)容組成I/O管理實例管理實例操作系統(tǒng)課程講義操作系統(tǒng)課程講義10Windows中的中的I/O處理簡述處理簡述v設(shè)備驅(qū)動程序的同步操作設(shè)備驅(qū)動程序的同步操作 驅(qū)動程序在訪問相關(guān)數(shù)據(jù)時,必須實現(xiàn)驅(qū)動程序在訪問相關(guān)數(shù)據(jù)時,必須實現(xiàn)“同步同步”操作,即以互斥的形式保護操作,即以互斥的形式保護各類共享數(shù)據(jù)。在單各類共享數(shù)據(jù)。在單CPU的機器上,通過同步例程實現(xiàn);在多的機

11、器上,通過同步例程實現(xiàn);在多CPU的機器上,的機器上,通過通過“自旋鎖自旋鎖”實現(xiàn)實現(xiàn)vI/O處理的類型處理的類型 同步同步I/O和異步和異步I/O:絕大部分:絕大部分I/O操作是以同步方式實現(xiàn)的。但是也可以通操作是以同步方式實現(xiàn)的。但是也可以通過設(shè)定過設(shè)定CreatFile的參數(shù)來使用異步的參數(shù)來使用異步I/O,異步,異步I/O要求用戶程序在設(shè)計和實要求用戶程序在設(shè)計和實現(xiàn)時必須保證不訪問來自現(xiàn)時必須保證不訪問來自I/O操作的數(shù)據(jù)。在異步方式下,用戶程序通過等操作的數(shù)據(jù)。在異步方式下,用戶程序通過等待同步對象來實現(xiàn)與異步待同步對象來實現(xiàn)與異步I/O操作的操作的“同步同步” 快速快速I/O:允

12、許:允許I/O系統(tǒng)不產(chǎn)生系統(tǒng)不產(chǎn)生IRP而直接使用驅(qū)動程序執(zhí)行而直接使用驅(qū)動程序執(zhí)行I/O請求請求 映射文件映射文件I/O和文件高速緩存和文件高速緩存映射文件映射文件I/O是將磁盤中的是將磁盤中的Mapping File作為進程的虛擬內(nèi)存一部分,直接把文作為進程的虛擬內(nèi)存一部分,直接把文件作為大的數(shù)組進行訪問件作為大的數(shù)組進行訪問Windows利用利用Mapping File可實現(xiàn)文件高速緩存和映象活動可實現(xiàn)文件高速緩存和映象活動 分散分散/集中式集中式I/O:運行用戶程序從虛擬內(nèi)存的多個緩沖區(qū)(映射文件)中讀:運行用戶程序從虛擬內(nèi)存的多個緩沖區(qū)(映射文件)中讀寫數(shù)據(jù)到磁盤文件(非高速緩存打開

13、)的一個連續(xù)區(qū)域中。寫數(shù)據(jù)到磁盤文件(非高速緩存打開)的一個連續(xù)區(qū)域中。I/O管理實例管理實例操作系統(tǒng)課程講義操作系統(tǒng)課程講義11盤設(shè)備的管理描述盤設(shè)備的管理描述v盤的硬件組成及相關(guān)原理盤的硬件組成及相關(guān)原理 磁盤:軟盤和硬盤,基于電磁原理存儲數(shù)據(jù),盤面附著可磁化金屬氧化物,磁頭旋轉(zhuǎn)磁盤:軟盤和硬盤,基于電磁原理存儲數(shù)據(jù),盤面附著可磁化金屬氧化物,磁頭旋轉(zhuǎn)保持角速度一致即可保持角速度一致即可 只讀光盤:只讀光盤:CD-ROM,基于光學原理,利用凹痕與槽脊的過渡來記錄,基于光學原理,利用凹痕與槽脊的過渡來記錄0、1;光頭旋轉(zhuǎn);光頭旋轉(zhuǎn)時需要保持線速度一致時需要保持線速度一致 可刻錄光盤:可刻錄光

14、盤:CD-R,盤面附著染料,通過調(diào)整激光的功率溶化染料,形成光學上的暗,盤面附著染料,通過調(diào)整激光的功率溶化染料,形成光學上的暗斑,記錄斑,記錄0、1 可擦寫光盤:可擦寫光盤:CD-RW,盤面附著銀,盤面附著銀/銦銦/銻銻/碲合金碲合金 DVD光盤:更小的凹痕、更密的螺旋、更短的激光波長光盤:更小的凹痕、更密的螺旋、更短的激光波長v盤的盤的I/O管理問題管理問題 物理空間的分布:磁道物理空間的分布:磁道/柱面柱面/扇區(qū),螺旋扇區(qū),螺旋/扇區(qū)扇區(qū) 物理空間的邏輯化映射:控制器實現(xiàn)統(tǒng)一的虛擬幾何規(guī)格物理空間的邏輯化映射:控制器實現(xiàn)統(tǒng)一的虛擬幾何規(guī)格 數(shù)據(jù)存儲和讀寫的性能保證:數(shù)據(jù)存儲和讀寫的性能保

15、證:RAID、低級、低級/高級格式化、柱面斜進、交叉編碼高級格式化、柱面斜進、交叉編碼 磁盤驅(qū)動的核心算法:磁盤臂調(diào)度算法磁盤驅(qū)動的核心算法:磁盤臂調(diào)度算法 容錯機制:壞扇區(qū)記錄、容錯機制:壞扇區(qū)記錄、ECC校驗、穩(wěn)定存儲器校驗、穩(wěn)定存儲器I/O管理實例管理實例操作系統(tǒng)課程講義操作系統(tǒng)課程講義12電源的管理描述電源的管理描述v計算機硬件設(shè)備的電能消耗計算機硬件設(shè)備的電能消耗 電源管理的目的:合理、有效的使用電能驅(qū)動計算機硬件設(shè)備工作電源管理的目的:合理、有效的使用電能驅(qū)動計算機硬件設(shè)備工作 如何減少能量消耗:當設(shè)備不工作時,由如何減少能量消耗:當設(shè)備不工作時,由OS將其關(guān)閉;或者通過降將其關(guān)閉

16、;或者通過降低應(yīng)用程序的速度來降低能源消耗低應(yīng)用程序的速度來降低能源消耗 電池類型:一次性使用、可充電、智能電池電池類型:一次性使用、可充電、智能電池v電源管理的方法電源管理的方法 硬件設(shè)備設(shè)計為多種狀態(tài),例如工作、睡眠、休眠、關(guān)閉等,可通過硬件設(shè)備設(shè)計為多種狀態(tài),例如工作、睡眠、休眠、關(guān)閉等,可通過機械按鈕或者設(shè)備本身轉(zhuǎn)換狀態(tài)以節(jié)省能源機械按鈕或者設(shè)備本身轉(zhuǎn)換狀態(tài)以節(jié)省能源 操作系統(tǒng)根據(jù)能量消耗的規(guī)律負責調(diào)整設(shè)備的狀態(tài)操作系統(tǒng)根據(jù)能量消耗的規(guī)律負責調(diào)整設(shè)備的狀態(tài) 硬件設(shè)備和電池均提供硬件設(shè)備和電池均提供“智能化智能化”設(shè)計,通過向設(shè)計,通過向OS提供當前狀態(tài)信提供當前狀態(tài)信息供息供OS進行決

17、策,合理規(guī)劃電能消耗進行決策,合理規(guī)劃電能消耗 “退化退化”操作:當能源不足時,操作:當能源不足時,OS通過降低電壓、降低分辨率等操通過降低電壓、降低分辨率等操作以延長計算機可用時間作以延長計算機可用時間I/O管理實例管理實例操作系統(tǒng)課程講義操作系統(tǒng)課程講義13電源的管理描述電源的管理描述v計算機硬件設(shè)備的電能消耗計算機硬件設(shè)備的電能消耗 電源管理的目的:合理、有效的使用電能驅(qū)動計算機硬件設(shè)備工作電源管理的目的:合理、有效的使用電能驅(qū)動計算機硬件設(shè)備工作 如何減少能量消耗:當設(shè)備不工作時,由如何減少能量消耗:當設(shè)備不工作時,由OS將其關(guān)閉;或者通過降低應(yīng)用程將其關(guān)閉;或者通過降低應(yīng)用程序的速度

18、來降低能源消耗序的速度來降低能源消耗 電池類型:一次性使用、可充電、智能電池電池類型:一次性使用、可充電、智能電池 ACPI(高級配置與電源接口)標準:為系統(tǒng)定義了(高級配置與電源接口)標準:為系統(tǒng)定義了6種不同的能耗狀態(tài)(種不同的能耗狀態(tài)(S0S5),為設(shè)備定義了,為設(shè)備定義了4種不同的能耗狀態(tài)(種不同的能耗狀態(tài)(D0D3)v電源管理的方法電源管理的方法 硬件設(shè)備設(shè)計為多種狀態(tài),例如工作、睡眠、休眠、關(guān)閉等,可通過機械按硬件設(shè)備設(shè)計為多種狀態(tài),例如工作、睡眠、休眠、關(guān)閉等,可通過機械按鈕或者設(shè)備本身轉(zhuǎn)換狀態(tài)以節(jié)省能源鈕或者設(shè)備本身轉(zhuǎn)換狀態(tài)以節(jié)省能源 操作系統(tǒng)根據(jù)能量消耗的規(guī)律負責調(diào)整設(shè)備的狀態(tài)操作系統(tǒng)根據(jù)能量消耗的規(guī)律負責調(diào)整設(shè)備的狀態(tài) 硬件設(shè)備和電池均提供硬件設(shè)備和電池均提供“智能化智能化”設(shè)計,通過向設(shè)計,通過向

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論