計(jì)算機(jī)基礎(chǔ)與C++語言【2】-操作系統(tǒng)_第1頁
計(jì)算機(jī)基礎(chǔ)與C++語言【2】-操作系統(tǒng)_第2頁
計(jì)算機(jī)基礎(chǔ)與C++語言【2】-操作系統(tǒng)_第3頁
計(jì)算機(jī)基礎(chǔ)與C++語言【2】-操作系統(tǒng)_第4頁
計(jì)算機(jī)基礎(chǔ)與C++語言【2】-操作系統(tǒng)_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、為什么要了解操作系統(tǒng)為什么要了解操作系統(tǒng)? ?n加深對加深對OSOS的理解,更好的使用計(jì)算機(jī)的理解,更好的使用計(jì)算機(jī)n加深對加深對OSOS的理解,是深入編程的基礎(chǔ)的理解,是深入編程的基礎(chǔ)n編程時借鑒操作系統(tǒng)的設(shè)計(jì)思想和算法編程時借鑒操作系統(tǒng)的設(shè)計(jì)思想和算法n選擇購買操作系統(tǒng)選擇購買操作系統(tǒng)深層次開發(fā)必須充分利用操作系統(tǒng)提供的功能!深層次開發(fā)必須充分利用操作系統(tǒng)提供的功能!OS中所用的許多概念和方法可以應(yīng)用到其它領(lǐng)域!中所用的許多概念和方法可以應(yīng)用到其它領(lǐng)域!What is an Operating System?操作系統(tǒng)的功能分類操作系統(tǒng)的功能分類n基本功能 設(shè)備管理,存儲器管理,進(jìn)程管理,文

2、件管理,用戶接口。n如何理解任何軟件(OS是軟件之一)? 功能:決定能做什么。 行為:決定如何做什么和用戶體驗(yàn)。 數(shù)據(jù):決定管理什么。操作系統(tǒng)舉例操作系統(tǒng)舉例硬硬 件件操作系統(tǒng)操作系統(tǒng)其它軟件其它軟件用用 戶戶使用使用 = = 與某軟件交互與某軟件交互交互交互 = = 有請求有回應(yīng)有請求有回應(yīng)CUIGUI界面軟件呈現(xiàn)給你的面孔是什么?軟件呈現(xiàn)給你的面孔是什么?友好與否?友好與否?人機(jī)交互的抽象視圖人機(jī)交互的抽象視圖OS與用戶的交互方式與用戶的交互方式命令行方式命令行方式OSOS提供了一組聯(lián)機(jī)命令,用戶可通過鍵盤輸入有關(guān)命提供了一組聯(lián)機(jī)命令,用戶可通過鍵盤輸入有關(guān)命令,操縱計(jì)算機(jī)系統(tǒng)和運(yùn)行自己的

3、程序。令,操縱計(jì)算機(jī)系統(tǒng)和運(yùn)行自己的程序。每個命令在一行上完成輸入,故稱命令行。每個命令在一行上完成輸入,故稱命令行。圖形、窗口方式圖形、窗口方式用戶通過屏幕上的窗口、圖標(biāo)、菜單,用鼠標(biāo)來操縱用戶通過屏幕上的窗口、圖標(biāo)、菜單,用鼠標(biāo)來操縱計(jì)算機(jī)系統(tǒng)和運(yùn)行自己的程序。計(jì)算機(jī)系統(tǒng)和運(yùn)行自己的程序。系統(tǒng)調(diào)用方式系統(tǒng)調(diào)用方式OSOS提供了一組系統(tǒng)調(diào)用,用戶可在自己的程序中通過提供了一組系統(tǒng)調(diào)用,用戶可在自己的程序中通過相應(yīng)的調(diào)用接口,來使用相應(yīng)的調(diào)用接口,來使用OSOS的功能。的功能。WindowsWindows的的CUICUI界面和命令行界面和命令行命令行(命令行(COMMAND LINE)COMM

4、AND LINE)WindowsWindows的命令行界面由命令解釋程序的命令行界面由命令解釋程序CMD.EXECMD.EXE或或COMMAND.EXECOMMAND.EXE進(jìn)程提供,得到命令界面需啟動該進(jìn)程,此進(jìn)程提供,得到命令界面需啟動該進(jìn)程,此進(jìn)程接收用戶鍵入的命令并解釋執(zhí)行。進(jìn)程接收用戶鍵入的命令并解釋執(zhí)行。命令即程序命令即程序命令就是完成確定功能的程序,執(zhí)行命令就是執(zhí)行程序。命令就是完成確定功能的程序,執(zhí)行命令就是執(zhí)行程序。你自己編寫的程序也是你自己編寫的程序也是OSOS的命令。的命令。不知道有哪些命令怎么辦?不知道有哪些命令怎么辦?helphelp命令求助:命令求助:help /h

5、elp /?命令的一般格式:命令名命令的一般格式:命令名 參數(shù)列表參數(shù)列表CUICUI中的命令執(zhí)行過程中的命令執(zhí)行過程命令執(zhí)行過程命令執(zhí)行過程用戶鍵入命令,按用戶鍵入命令,按EnterEnter鍵后,命令解釋程序在磁盤上查鍵后,命令解釋程序在磁盤上查找相應(yīng)的程序文件,找到后加載到內(nèi)存,然后執(zhí)行該程找相應(yīng)的程序文件,找到后加載到內(nèi)存,然后執(zhí)行該程序。序。OSOS如何查找輸入的命令如何查找輸入的命令磁盤上的文件動輒數(shù)十萬,磁盤上的文件動輒數(shù)十萬,OSOS如何查找輸入的命令?事如何查找輸入的命令?事實(shí)上實(shí)上OSOS僅在僅在“當(dāng)前目錄當(dāng)前目錄”、“缺省查找路徑缺省查找路徑”中去查找,中去查找,如果沒找

6、到,就認(rèn)為不存在。如果沒找到,就認(rèn)為不存在。什么是什么是“當(dāng)前目錄當(dāng)前目錄”?什么是?什么是“缺省查找路徑缺省查找路徑”?如何查看二者?如何設(shè)置二者?(命令如何查看二者?如何設(shè)置二者?(命令cdcd、pathpath)。)。分時系統(tǒng)操作系統(tǒng)( Time-Sharing Systems)分時系統(tǒng)示意圖分時系統(tǒng)示意圖主機(jī)主機(jī)終終端端我們院也有一個19個節(jié)點(diǎn)(曙光刀片)的高性能計(jì)算集群。nIBM走鵑(RoadRunner):IBM打造于2008年6月,每秒1026萬億次浮點(diǎn)運(yùn)算,造價1億美元,世界排名第一(2009年)。n上海超級計(jì)算中心“魔方”:160多個節(jié)點(diǎn)(國產(chǎn)曙光5000A計(jì)算機(jī)) ,總共由

7、1000多顆CPU,每秒200萬億次浮點(diǎn)運(yùn)算,Linux操作系統(tǒng),功率1.1兆瓦,每天電費(fèi)4萬元,世界排名第十(2009)。主流手機(jī)OS:symbian、iOS、android、Windows Phone。u 文件管理u 進(jìn)程管理u 存儲器管理u 設(shè)備管理u 用戶接口文件概念(一)文件概念(一) 文件(文件(file) 計(jì)算機(jī)管理的信息,無論用于什么目的,均以文件為單位存計(jì)算機(jī)管理的信息,無論用于什么目的,均以文件為單位存儲在存儲介質(zhì)上,文件是計(jì)算機(jī)組織信息的基本單位。儲在存儲介質(zhì)上,文件是計(jì)算機(jī)組織信息的基本單位。 文件可從多種角度分類文件可從多種角度分類 如從用途分:源程序文件、可執(zhí)行文件

8、、字體文件、數(shù)據(jù)文如從用途分:源程序文件、可執(zhí)行文件、字體文件、數(shù)據(jù)文件、字處理文件、圖像文件、音頻文件、視頻文件等。件、字處理文件、圖像文件、音頻文件、視頻文件等。 如從存儲編碼分:文本文件、二進(jìn)制文件。如從存儲編碼分:文本文件、二進(jìn)制文件。 文件的存儲介質(zhì)文件的存儲介質(zhì) 常見的存儲介質(zhì)有磁盤、磁帶、光盤、常見的存儲介質(zhì)有磁盤、磁帶、光盤、U盤、盤、SD卡等??ǖ?。 不同存儲介質(zhì)保存數(shù)據(jù)的方法和標(biāo)準(zhǔn)不同。不同存儲介質(zhì)保存數(shù)據(jù)的方法和標(biāo)準(zhǔn)不同。文件概念(二)文件概念(二) 存儲介質(zhì)上內(nèi)容存儲介質(zhì)上內(nèi)容 不論文件的外在表現(xiàn)是什么(如文本、圖像、音頻等),在不論文件的外在表現(xiàn)是什么(如文本、圖像、

9、音頻等),在介質(zhì)上存儲的內(nèi)容均是二進(jìn)制編碼,不同用途的文件其編碼標(biāo)介質(zhì)上存儲的內(nèi)容均是二進(jìn)制編碼,不同用途的文件其編碼標(biāo)準(zhǔn)不同。準(zhǔn)不同。 不同的軟件存儲文件的內(nèi)部格式不同不同的軟件存儲文件的內(nèi)部格式不同 每個軟件均有自己組織和存儲數(shù)據(jù)的內(nèi)部格式,只有完全了每個軟件均有自己組織和存儲數(shù)據(jù)的內(nèi)部格式,只有完全了解文件的內(nèi)部格式才能正確的讀寫文件。解文件的內(nèi)部格式才能正確的讀寫文件。 因此,常用文件的處理程序、組織方式提及文件。如:因此,常用文件的處理程序、組織方式提及文件。如:WordWord文件、文件、ExcelExcel文件、文本文件、源程序文件、文件、文本文件、源程序文件、MP3MP3、BM

10、PBMP、JPEGJPEG、WAVWAV、MPEGMPEG等等。等等。文件管理文件管理磁盤結(jié)構(gòu)磁盤結(jié)構(gòu)磁盤一旦上電,即高磁盤一旦上電,即高速旋轉(zhuǎn),速旋轉(zhuǎn),5400rpm5400rpm、7200rpm7200rpm、10Krpm10Krpm。磁道磁道扇區(qū)扇區(qū)(tracks):):每個盤片劃分成每個盤片劃分成若干同心圓,每個圓為一個磁道。若干同心圓,每個圓為一個磁道。(Sectors):):每個磁道劃分成每個磁道劃分成相同個數(shù)的弧段,每個弧段為一個扇相同個數(shù)的弧段,每個弧段為一個扇區(qū),區(qū),大小為大小為512字節(jié)字節(jié)。(Cylinders):):多個盤片的同多個盤片的同半徑的磁道構(gòu)成一個柱面。半徑的

11、磁道構(gòu)成一個柱面。 磁頭(磁頭(Heads):):每個盤片上對應(yīng)每個盤片上對應(yīng)一個讀寫頭,稱為磁頭。一個讀寫頭,稱為磁頭。 簇(簇(Clusters):):一個磁道上的一個磁道上的扇區(qū)組合成一個簇,簇是用扇區(qū)組合成一個簇,簇是用來分派磁盤空間的基本單位,大小可來分派磁盤空間的基本單位,大小可以配置。以配置。文件管理文件管理磁盤分區(qū)和文件系統(tǒng)磁盤分區(qū)和文件系統(tǒng)柱柱面面硬硬 盤盤分區(qū)分區(qū)1 1(PartitionPartition)分區(qū)分區(qū)2 2(PartitionPartition)分區(qū)分區(qū)n n(PartitionPartition)分區(qū)分區(qū)賦以盤符賦以盤符C C、D D、E E、F F、Z

12、Z邏輯盤邏輯盤選定文件系統(tǒng)選定文件系統(tǒng)格式化格式化就緒存儲磁盤就緒存儲磁盤FATFAT、FAT32FAT32、NTFSNTFS、ISO9660ISO9660、NFSNFS、JFSJFS、盤符盤符C C:、:、D D:、:、樹型目錄結(jié)構(gòu)樹型目錄結(jié)構(gòu); ;根目錄用根目錄用 表示表示; ; 磁盤空間的分配單位磁盤空間的分配單位 為了提高存儲空間的利用率和管理的靈活性,OS的文件系統(tǒng)以盤塊(block)為基本分配單位,這樣文件大小是塊的整數(shù)倍。 盤塊的大小通常為512B8KB,具體大小與OS和磁盤容量相關(guān)。 使用樹狀文件夾結(jié)構(gòu)使用樹狀文件夾結(jié)構(gòu) 為了分門別類的管理各種文件,通常在磁盤上創(chuàng)建多個樹狀結(jié)構(gòu)

13、的文件夾結(jié)構(gòu),不同的文件夾中存放不同目的的文件。 稍具規(guī)模的軟件安裝在計(jì)算機(jī)上時,都會建立自己的文件夾結(jié)構(gòu),以保存其自身的文件和用戶產(chǎn)生的文件。 強(qiáng)烈建議上機(jī)實(shí)習(xí)時,創(chuàng)建自己的文件夾保存你的文件!強(qiáng)烈建議上機(jī)實(shí)習(xí)時,創(chuàng)建自己的文件夾保存你的文件!文件管理文件管理目錄和文件定位目錄和文件定位 文件名。文件名?;久久?.擴(kuò)展名,通常擴(kuò)展名表示文件的類型,但擴(kuò)展名,通常擴(kuò)展名表示文件的類型,但這不是強(qiáng)制的。如這不是強(qiáng)制的。如h、cpp、exe、txt、doc、xls、bmp、gif、jpeg、mp3、swf等等。等等。 文件路徑。即在目錄文件樹上從參照點(diǎn)開始到指定文件的文件路徑。即在目錄文件樹

14、上從參照點(diǎn)開始到指定文件的一條路徑,用于指定特定文件。一條路徑,用于指定特定文件。 相對路徑。相對路徑。如:如:DataConfig.INI,.AppDataConfig.INI 絕對路徑。絕對路徑。如:如:d:AppDataConfig.INI由人構(gòu)成的由人構(gòu)成的組織機(jī)構(gòu)組織機(jī)構(gòu)由目錄和文件構(gòu)成的由目錄和文件構(gòu)成的樹型結(jié)構(gòu)樹型結(jié)構(gòu)對照對照單位或部門單位或部門目錄或文件夾目錄或文件夾個人個人文件文件文件的讀文件的讀/ /寫管理和保護(hù)寫管理和保護(hù)(1)(1)文件的讀文件的讀/ /寫管理寫管理 該功能是根據(jù)用戶的請求,從外存中讀取數(shù)據(jù);或?qū)?shù)據(jù)寫入外存。在進(jìn)行文件讀(寫)時,系統(tǒng)先根據(jù)用戶給出的文

15、件名,去檢索文件目錄,從中獲得文件在外存中的位置。然后,利用文件讀(寫)指針,對文件進(jìn)行讀(寫)。一旦讀(寫)完成,便修改讀(寫)指針,為下一次讀(寫)做好準(zhǔn)備。由于讀和寫操作不會同時進(jìn)行,故可合用一個讀/寫指針。(2)(2)文件保護(hù)文件保護(hù) 防止未經(jīng)核準(zhǔn)的用戶存取文件; 防止冒名頂替存取文件; 防止以不正確的方式使用文件。 基本概念基本概念進(jìn)程同步進(jìn)程同步 進(jìn)程通信進(jìn)程通信 在多道程序環(huán)境下,為了加速應(yīng)用程序的運(yùn)行,應(yīng)在系統(tǒng)中建立多個進(jìn)程,并且再為一個進(jìn)程建立若干個線程,由這些進(jìn)程(線程)相互合作去完成一個共同的任務(wù)。而在這些進(jìn)程(線程)之間,又往往需要交換信息。例如,有三個相互合作的進(jìn)程,

16、 它們是輸入進(jìn)程、計(jì)算進(jìn)程和打印進(jìn)程。輸入進(jìn)程負(fù)責(zé)將所輸入的數(shù)據(jù)傳送給計(jì)算進(jìn)程;計(jì)算進(jìn)程利用輸入數(shù)據(jù)進(jìn)行計(jì)算, 并把計(jì)算結(jié)果傳送給打印進(jìn)程;最后,由打印進(jìn)程把計(jì)算結(jié)果打印出來。進(jìn)程通信的任務(wù)就是用來實(shí)現(xiàn)在相互合作的進(jìn)程之間的信息交換。 當(dāng)相互合作的進(jìn)程(線程)處于同一計(jì)算機(jī)系統(tǒng)時,通常在它們之前是采用直接通信方式,即由源進(jìn)程利用發(fā)送命令直接將消息(message)掛到目標(biāo)進(jìn)程的消息隊(duì)列上,以后由目標(biāo)進(jìn)程利用接收命令從其消息隊(duì)列中取出消息。 進(jìn)程調(diào)度進(jìn)程調(diào)度 在后備隊(duì)列上等待的每個作業(yè),通常都要經(jīng)過調(diào)度才能執(zhí)行。在傳統(tǒng)的操作系統(tǒng)中,包括作業(yè)調(diào)度和進(jìn)程調(diào)度兩步。 作業(yè)調(diào)度的基本任務(wù),是從后備隊(duì)列中

17、按照一定的算法,選擇出若干個作業(yè),為它們分配其必需的資源(首先是分配內(nèi)存)。 在將它們調(diào)入內(nèi)存后,便分別為它們建立進(jìn)程,使它們都成為可能獲得處理機(jī)的就緒進(jìn)程,并按照一定的算法將它們插入就緒隊(duì)列。 而進(jìn)程調(diào)度的任務(wù),則是從進(jìn)程的就緒隊(duì)列中選出一新進(jìn)程,把處理機(jī)分配給它,并為它設(shè)置運(yùn)行現(xiàn)場, 使進(jìn)程投入執(zhí)行。 值得提出的是,在多線程OS中,通常是把線程作為獨(dú)立運(yùn)行和分配處理機(jī)的基本單位,為此,須把就緒線程排成一個隊(duì)列,每次調(diào)度時,是從就緒線程隊(duì)列中選出一個線程,把處理機(jī)分配給它。進(jìn)程狀態(tài)進(jìn)程狀態(tài)n進(jìn)程有著“執(zhí)行暫停執(zhí)行 ”的活動規(guī)律,一般說來一個進(jìn)程不是自始至終一口氣運(yùn)行到底的。n各進(jìn)程相互制約,

18、當(dāng)使它暫停的原因消失后,它又可準(zhǔn)備運(yùn)行。因此進(jìn)程有多種狀態(tài)。n三種基本狀態(tài) 1)運(yùn)行狀態(tài) (Running):一個進(jìn)程正在處理機(jī)上運(yùn)行時,稱為運(yùn)行狀態(tài)。 2)就緒狀態(tài) (Ready):一個進(jìn)程獲得了除處理機(jī)外的一切所需資源,一旦得到處理機(jī)即可運(yùn)行,稱此進(jìn)程處于就緒狀態(tài)。 3)等待狀態(tài) (Blocked):一個進(jìn)程正在等待某一事件發(fā)生而暫時停止運(yùn)行,即使這時把處理機(jī)分配給此進(jìn)程也無法運(yùn)行。又稱為阻塞狀態(tài)。RunningReadyBlocked 等待事件 (系統(tǒng)服務(wù)請求,如請求I/O) 被調(diào)度或分派 時間片用完 事件發(fā)生進(jìn)程狀態(tài)變化(一)進(jìn)程狀態(tài)變化(一)進(jìn)程在系統(tǒng)中,其狀態(tài)可以變化,各狀態(tài)間變化

19、如下圖所示:注:處理機(jī)的數(shù)目一般總是少于進(jìn)程數(shù),在單處理機(jī)系統(tǒng)中,只有一個進(jìn)程可真正獲得處理。進(jìn)程狀態(tài)變化(二)進(jìn)程狀態(tài)變化(二) 就緒狀態(tài)的進(jìn)程被進(jìn)程調(diào)度程序選中后,就分配到處理機(jī)來運(yùn)行,進(jìn)入運(yùn)行狀態(tài)。 運(yùn)行狀態(tài)的進(jìn)程時間片用完不得不讓出處理機(jī),變?yōu)榫途w狀態(tài)。 運(yùn)行狀態(tài)的進(jìn)程需等待某一事件發(fā)生后,才能繼續(xù)運(yùn)行,變?yōu)榈却隣顟B(tài)。 等待狀態(tài)的進(jìn)程:若其等待的事件已發(fā)生,變?yōu)榫途w狀態(tài)。內(nèi)存分配(一)內(nèi)存分配(一) OS在實(shí)現(xiàn)內(nèi)存分配時,可采取靜態(tài)和動態(tài)兩種方式。 在靜態(tài)分配方式中,每個進(jìn)程的內(nèi)存空間是在進(jìn)程裝入時確定的;在進(jìn)程裝入后的整個運(yùn)行期間, 不允許該進(jìn)程再申請新的內(nèi)存空間,也不允許進(jìn)程在內(nèi)存

20、中“移動”; 在動態(tài)分配方式中,每個進(jìn)程所要求的基本內(nèi)存空間, 也是在裝入時確定的,但允許進(jìn)程在運(yùn)行過程中,繼續(xù)申請新的附加內(nèi)存空間,以適應(yīng)程序和數(shù)據(jù)的動態(tài)增長,也允許進(jìn)程在內(nèi)存中“移動”。 內(nèi)存分配(二)內(nèi)存分配(二) 為了實(shí)現(xiàn)內(nèi)存分配,在內(nèi)存分配的機(jī)制中應(yīng)具有這樣的結(jié)構(gòu)和功能: 內(nèi)存分配數(shù)據(jù)結(jié)構(gòu), 該結(jié)構(gòu)用于記錄內(nèi)存空間的使用情況, 作為內(nèi)存分配的依據(jù); 內(nèi)存分配功能,系統(tǒng)按照一定的內(nèi)存分配算法,為用戶程序分配內(nèi)存空間; 內(nèi)存回收功能,系統(tǒng)對于用戶不再需要的內(nèi)存,通過用戶的釋放請求,去完成系統(tǒng)的回收功能。內(nèi)存保護(hù)內(nèi)存保護(hù) 內(nèi)存保護(hù)的主要任務(wù),是確保每道用戶程序都只在自己的內(nèi)存空間內(nèi)運(yùn)行,彼

21、此互不干擾。 為了確保每道程序都只在自己的內(nèi)存區(qū)中運(yùn)行,必須設(shè)置內(nèi)存保護(hù)機(jī)制。一種比較簡單的內(nèi)存保護(hù)機(jī)制,是設(shè)置兩個界限寄存器,分別用于存放正在執(zhí)行程序的上界和下界。系統(tǒng)須對每條指令所要訪問的地址進(jìn)行檢查,如果發(fā)生越界,便發(fā)出越界中斷請求,以停止該程序的執(zhí)行。如果這種檢查完全用軟件實(shí)現(xiàn),則每執(zhí)行一條指令,便須增加若干條指令去進(jìn)行越界檢查,這將顯著降低程序的運(yùn)行速度。因此,越界檢查都由硬件實(shí)現(xiàn)。當(dāng)然, 對發(fā)生越界后的處理, 還須與軟件配合來完成。 存儲器管理中的內(nèi)存擴(kuò)充任務(wù),并非是去擴(kuò)大物理內(nèi)存的容量,而是借助于虛擬存儲技術(shù),從邏輯上去擴(kuò)充內(nèi)存容量,使用戶所感覺到的內(nèi)存容量比實(shí)際內(nèi)存容量大得多,

22、讓更多的用戶程序能并發(fā)運(yùn)行。這樣,既滿足了用戶的需要,改善了系統(tǒng)的性能,又基本上不增加硬件投資。 為了能在邏輯上擴(kuò)充內(nèi)存,系統(tǒng)必須具有內(nèi)存擴(kuò)充機(jī)制,用于實(shí)現(xiàn)下述各功能: (1) 請求調(diào)入功能。 (2) 置換功能。 基本方法是將磁盤文件當(dāng)內(nèi)存使用,存放休眠的進(jìn)程或線程相關(guān)的信息。如:Windows中的頁面文件,Unix中交換(SWAP)空間。 設(shè)備管理用于管理計(jì)算機(jī)系統(tǒng)中所有的外圍設(shè)備,而設(shè)備管理的主要任務(wù)是: (1)完成用戶進(jìn)程提出的I/O請求; (2)為用戶進(jìn)程分配其所需的I/O設(shè)備; (3)提高CPU和I/O設(shè)備的利用率; (4)提高I/O速度;方便用戶使用I/O設(shè)備。 為實(shí)現(xiàn)上述任務(wù),設(shè)

23、備管理應(yīng)具有緩沖管理、設(shè)備分配和設(shè)備處理,以及虛擬設(shè)備等功能。 CPU運(yùn)行的高速性和I/O低速性間的矛盾自計(jì)算機(jī)誕生時起便已存在。而隨著CPU速度迅速、大幅度的提高,使得此矛盾更為突出,嚴(yán)重降低了CPU的利用率。 如果在I/O設(shè)備和CPU之間引入緩沖,則可有效地緩和CPU和I/O設(shè)備速度不匹配的矛盾,提高CPU的利用率,進(jìn)而提高系統(tǒng)吞吐量。因此,在現(xiàn)代計(jì)算機(jī)系統(tǒng)中,都毫無例外地在內(nèi)存中設(shè)置了緩沖區(qū),而且還可通過增加緩沖區(qū)容量的方法,來改善系統(tǒng)的性能。 最常見的緩沖區(qū)機(jī)制有單緩沖機(jī)制、能實(shí)現(xiàn)雙向同時傳送數(shù)據(jù)的雙緩沖機(jī)制,以及能供多個設(shè)備同時使用的公用緩沖池機(jī)制。 設(shè)備分配的基本任務(wù),是根據(jù)用戶進(jìn)

24、程的I/O請求、系統(tǒng)的現(xiàn)有資源情況以及按照某種設(shè)備分配策略,為之分配其所需的設(shè)備。如果在I/O設(shè)備和CPU之間,還存在著設(shè)備控制器和I/O通道時,還須為分配出去的設(shè)備分配相應(yīng)的控制器和通道。 為了實(shí)現(xiàn)設(shè)備分配,系統(tǒng)中應(yīng)設(shè)置設(shè)備控制表、控制器控制表等數(shù)據(jù)結(jié)構(gòu),用于記錄設(shè)備及控制器的標(biāo)識符和狀態(tài)。據(jù)這些表格可以了解指定設(shè)備當(dāng)前是否可用,是否忙碌,以供進(jìn)行設(shè)備分配時參考。在進(jìn)行設(shè)備分配時,應(yīng)針對不同的設(shè)備類型而采用不同的設(shè)備分配方式。對于獨(dú)占設(shè)備(臨界資源)的分配,還應(yīng)考慮到該設(shè)備被分配出去后,系統(tǒng)是否安全。 設(shè)備使用完后,還應(yīng)立即由系統(tǒng)回收。 設(shè)備處理程序又稱為設(shè)備驅(qū)動程序。其基本任務(wù)是用于實(shí)現(xiàn)C

25、PU和設(shè)備控制器之間的通信,即由CPU向設(shè)備控制器發(fā)出I/O命令,要求它完成指定的I/O操作;反之由CPU接收從控制器發(fā)來的中斷請求,并給予迅速的響應(yīng)和相應(yīng)的處理。 處理過程是:設(shè)備處理程序首先檢查I/O請求的合法性,了解設(shè)備狀態(tài)是否空閑、有關(guān)的傳遞參數(shù)及設(shè)置設(shè)備的工作方式。然后,便向設(shè)備控制器發(fā)出I/O命令,啟動I/O設(shè)備去完成指定的I/O操作。設(shè)備驅(qū)動程序還應(yīng)能及時響應(yīng)由控制器發(fā)來的中斷請求,并根據(jù)該中斷請求的類型,調(diào)用相應(yīng)的中斷處理程序進(jìn)行處理。對于設(shè)置了通道的計(jì)算機(jī)系統(tǒng),設(shè)備處理程序還應(yīng)能根據(jù)用戶的I/O請求,自動地構(gòu)成通道程序。用戶接口用戶接口(1)聯(lián)機(jī)用戶接口 這是為聯(lián)機(jī)用戶提供的,它由一組鍵盤操作命令及命令解釋程序所組成。當(dāng)用戶在終端或控制臺上每鍵入一條命令后,系統(tǒng)便立即轉(zhuǎn)入命令解釋程序,對該命令加以解釋并執(zhí)行該命令。在完成指定功能后,控制又返回到終端或控制臺上,等待用戶鍵入下一條命令。這樣,用戶可通過先后鍵入不同命令的方式,來實(shí)現(xiàn)對作業(yè)的控制,直至作業(yè)完成。 如:windows中的命令解釋程序cmd.exe,Unix中的shell程序(B shell、C shell等)。用戶接口用戶接口(2)脫機(jī)用戶接口 該

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論