第3章-操作系統(tǒng)_第1頁
第3章-操作系統(tǒng)_第2頁
第3章-操作系統(tǒng)_第3頁
第3章-操作系統(tǒng)_第4頁
第3章-操作系統(tǒng)_第5頁
已閱讀5頁,還剩139頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

計算機(jī)軟件技術(shù)基礎(chǔ)天津職業(yè)技術(shù)師范大學(xué)電子工程學(xué)院童勇木第3章操作系統(tǒng)

3.1操作系統(tǒng)概述3.2處理機(jī)管理3.3存儲管理3.4設(shè)備管理3.5文件管理3.1.1操作系統(tǒng)的地位

●現(xiàn)代計算機(jī)系統(tǒng)通常擁有數(shù)量可觀的硬件資源和軟件資源。

中央處理機(jī)硬件資源存儲器等物理資源I/O設(shè)備它們是利用電、磁、光、機(jī)械等原理構(gòu)成的各種物理部件的組合;各種程序軟件資源

數(shù)據(jù)3.1.1操作系統(tǒng)的地位●操作系統(tǒng)

◆是計算機(jī)中的一種系統(tǒng)軟件;

◆是用以控制和管理各種硬件資源和軟件資源、合理組織計算機(jī)工作流程、方便用戶使用的程序的集合。

操作系統(tǒng)是資源管理程序。

計算機(jī)硬件操作系統(tǒng)各種工具軟件應(yīng)用軟件用戶開發(fā)人員操作系統(tǒng)設(shè)計人員圖3.1

操作系統(tǒng)的地位圖3.1表示計算機(jī)硬件和軟件的層次關(guān)系,從圖上可以看出:操作系統(tǒng)是對硬件的首次擴(kuò)充。因此,操作系統(tǒng)是軟件系統(tǒng)的核心。3.1.1操作系統(tǒng)的地位●一般來說,系統(tǒng)的軟硬件資源分為4大類:

處理機(jī)、存儲器、I/O設(shè)備信息(程序和數(shù)據(jù)等)

3.1.1操作系統(tǒng)的地位●操作系統(tǒng)相應(yīng)地就應(yīng)包括這樣的幾個部分:控制和管理處理機(jī)的程序;控制和管理存儲器的程序;控制和管理I/O設(shè)備的程序;控制和管理程序以及數(shù)據(jù)的程序。

3.1.2操作系統(tǒng)的基本概念和術(shù)語●用戶:指要計算機(jī)為他工作的人?!褡鳂I(yè)步和進(jìn)程:作業(yè):用戶要求計算機(jī)給以計算(或處理)的工作的集合。作業(yè)步:一個作業(yè)一般可以分成n個必須順序處理的步驟,稱其為作業(yè)步。

例如,一個用高級語言寫的用戶作業(yè),在計算機(jī)上運行要分成3個作業(yè)步:

編譯;將編譯后的主程序中所用到的庫程序和子程序都連接裝配成一個完整的程序;運行該裝配好的程序并獲得結(jié)果。3.1.2操作系統(tǒng)的基本概念和術(shù)語●進(jìn)程:一旦操作系統(tǒng)接受了某一用戶的作業(yè),它可以為此作業(yè)創(chuàng)建一個或多個進(jìn)程。進(jìn)程是程序的一次執(zhí)行,即進(jìn)程是在給定內(nèi)存區(qū)域中的一組指令序列的執(zhí)行過程。一個進(jìn)程可能要執(zhí)行多個程序。

3.1.2操作系統(tǒng)的基本概念和術(shù)語●進(jìn)程和程序是既有聯(lián)系又有區(qū)別的兩個概念,其主要區(qū)別有:程序:只是指令的有序集合,本身沒有運行的含義,因此它是靜止的。

進(jìn)程:

(1)指程序的一次執(zhí)行,它是動態(tài)的概念;

(2)它由“創(chuàng)建”而產(chǎn)生,由“調(diào)度”而運行,因得不到資源而暫停,以致最后由“撤銷”而消亡。

(3)進(jìn)程是有一定生命期的,在它的存在期間,其狀態(tài)在不斷地變化,是動態(tài)地產(chǎn)生和消亡的。3.1.2操作系統(tǒng)的基本概念和術(shù)語3.1.3操作系統(tǒng)的形成和發(fā)展1.早期批處理系統(tǒng)2.通道技術(shù)3.多道程序系統(tǒng)3.1.4操作系統(tǒng)的作用●其主要作用有以下一些。處理機(jī)管理存儲器管理I/O設(shè)備管理信息管理3.1.4操作系統(tǒng)的作用●操作系統(tǒng)除具備上述4個主要功能外,還應(yīng)提供:中斷管理功能——它與中斷硬件一起處理系統(tǒng)中各種中斷事件。輸入/輸出功能——系統(tǒng)提供的標(biāo)準(zhǔn)輸入/輸出功能,以便用戶調(diào)用。錯誤處理功能——分析并處理系統(tǒng)中出現(xiàn)的有關(guān)錯誤。3.1.5現(xiàn)代操作系統(tǒng)的新特性

并行性:主存中存放有多道程序,各道程序同時在處理機(jī)上交替、穿插執(zhí)行,這種運行狀態(tài)就稱為并行運行;3.1.5現(xiàn)代操作系統(tǒng)的新特性共享性:管理并行程序?qū)PU的共享,即負(fù)責(zé)在并行程序之間調(diào)度對CPU的使用;管理對主存的共享;管理對外部存儲器的共享使用以及對系統(tǒng)中數(shù)據(jù)(或文件)正確的共享,維護(hù)數(shù)據(jù)的完整性。3.1.5現(xiàn)代操作系統(tǒng)的新特性不確定性:多道程序運行過程中提出的對資源的請求、從外部設(shè)備來的輸入/輸出請求、程序運行過程中產(chǎn)生的錯誤處理請求等,這些不確定事件發(fā)生的時間是不確定的。3.1.6操作系統(tǒng)的類型●大型機(jī)操作系統(tǒng)從機(jī)器硬件的角度分為小型機(jī)操作系統(tǒng)微型機(jī)操作系統(tǒng)3.1.6操作系統(tǒng)的類型按照所提供的功能進(jìn)行分類,可將操作系統(tǒng)分為:多道批處理操作系統(tǒng);分時操作系統(tǒng);實時操作系統(tǒng);個人計算機(jī)操作系統(tǒng);網(wǎng)絡(luò)操作系統(tǒng);分布式操作系統(tǒng);視窗操作系統(tǒng)等。下面分別對這幾類操作系統(tǒng)的特性加以簡要介紹。3.1.6操作系統(tǒng)的類型1.多道批處理操作系統(tǒng)2.分時操作系統(tǒng)3.實時操作系統(tǒng)4.個人計算機(jī)操作系統(tǒng)5.網(wǎng)絡(luò)操作系統(tǒng)6.分布式操作系統(tǒng)7.視窗操作系統(tǒng)1.多道批處理操作系統(tǒng)●多道批處理操作系統(tǒng)不同于早期的單道批處理系統(tǒng),二者的區(qū)別在于:

√作業(yè)通道數(shù)——單道批處理系統(tǒng)中只有一道作業(yè)在主存中運行,而多道批處理系統(tǒng)中同時有多道作業(yè)在運行;●分時:

指多個用戶分享使用同一臺計算機(jī),把計算機(jī)的系統(tǒng)資源(尤其是CPU時間)進(jìn)行時間上的分割,即將一段工作時間分成一個個的時間段,每個時間段稱為一個時間片,從而可以將CPU工作時間分別提供給多個用戶使用,每個用戶依次地輪流使用時間片。2.分時操作系統(tǒng)2.分時操作系統(tǒng)●分時系統(tǒng)具有如下一些特征:同時性——計算機(jī)系統(tǒng)與若干臺遠(yuǎn)程、近程終端相連,每個用戶通過終端能夠同時使用計算機(jī)。即微觀上是各個用戶輪流使用,而宏觀上看是各個用戶在并行工作。

2.分時操作系統(tǒng)獨占性:每個用戶的感覺仍然認(rèn)為自己好像獨占著計算機(jī)系統(tǒng),用戶之間彼此獨立地操作,而不會發(fā)生相互混淆或破壞現(xiàn)象。2.分時操作系統(tǒng)及時性——用戶能在很短的時間內(nèi)獲得對系統(tǒng)所提要求的回答。交互作用性——用戶能與系統(tǒng)進(jìn)行人一機(jī)對話。3.實時操作系統(tǒng)●廣泛地應(yīng)用于科學(xué)計算、數(shù)據(jù)處理,也廣泛地應(yīng)用于諸如導(dǎo)彈發(fā)射的自動控制、工業(yè)生產(chǎn)的過程控制、票證預(yù)訂管理等方面,通常我們稱之為實時控制?!瘛皩崟r”——指對隨機(jī)發(fā)生的外部事件做出及時的響應(yīng)并對其進(jìn)行處理。

——在規(guī)定的時間限制內(nèi)完成對該事件的處理。3.實時操作系統(tǒng)一般來說,實時系統(tǒng)具備如下的一些功能。實時時鐘管理實時系統(tǒng)控制的實時任務(wù)可以分為定時和延時兩大類任務(wù):定時任務(wù)是根據(jù)用戶所規(guī)定的時間來啟動該任務(wù)的執(zhí)行;延時任務(wù)則是延時某一確定時間后再予以執(zhí)行。3.實時操作系統(tǒng)高可靠性任何錯誤或信息的丟失都可能造成嚴(yán)重的后果,所以,必須采取相應(yīng)的硬件和軟件措施來提高系統(tǒng)的可靠性。4.個人計算機(jī)操作系統(tǒng)●個人計算機(jī)操作系統(tǒng)每次只允許一個用戶使用計算機(jī),即系統(tǒng)在同一時間內(nèi)僅為一個用戶提供服務(wù),是一種聯(lián)機(jī)交互的單用戶操作系統(tǒng)●為用戶提供良好的工作環(huán)境成了這類操作系統(tǒng)的首要目標(biāo)。

特別注意用戶界面的友好性和操作的方便性。5.網(wǎng)絡(luò)操作系統(tǒng)●網(wǎng)絡(luò)操作系統(tǒng)——在原有操作系統(tǒng)的基礎(chǔ)上,按照網(wǎng)絡(luò)體系結(jié)構(gòu)的各個協(xié)議標(biāo)準(zhǔn)開發(fā)的操作系統(tǒng)。

網(wǎng)絡(luò)管理通信包括資源共享系統(tǒng)安全多種網(wǎng)絡(luò)應(yīng)用服務(wù)等6.分布式操作系統(tǒng)●分布式操作系統(tǒng)——通過通信網(wǎng)絡(luò)將物理上分布的具有自治功能的數(shù)據(jù)處理系統(tǒng)或計算機(jī)系統(tǒng)互聯(lián)起來,實現(xiàn)信息交換和資源共享,協(xié)作完成任務(wù)。●分布式操作系統(tǒng)能使系統(tǒng)中若干臺計算機(jī)相互協(xié)作完成一個共同的任務(wù);或者說,可把一個任務(wù)分布在幾臺計算機(jī)上進(jìn)行操作。6.分布式操作系統(tǒng)●分布式操作系統(tǒng)通常是基于網(wǎng)絡(luò)的,但分布式操作系統(tǒng)是網(wǎng)絡(luò)系統(tǒng)的更高級形式?!窬W(wǎng)絡(luò)中的計算機(jī)沒有主次之分,既無控制這個系統(tǒng)的主機(jī),也無受控于其他計算機(jī)的從機(jī),網(wǎng)絡(luò)任意兩臺計算機(jī)都可以通過通信透明地交換信息。7.視窗操作系統(tǒng)●視窗操作系統(tǒng)正是為整個目標(biāo)而設(shè)計的,它向用戶提供友好的界面,使用戶能夠通過簡單、明了而且又非常醒目的提示,以盡可能少的鍵盤操作來使用計算機(jī)。7.視窗操作系統(tǒng)●視窗操作系統(tǒng)將計算機(jī)的屏幕劃分為多個區(qū)域,每個區(qū)域稱為一個窗口,每個窗口負(fù)責(zé)處理和顯示某一類信息。7.視窗操作系統(tǒng)●Windows產(chǎn)品已幾經(jīng)更新?lián)Q代。Windows3.1Windows95Windows98Windows2000WindowsXPWindowsVistaWindows7Windows8第3章操作系統(tǒng)

3.1操作系統(tǒng)概述3.2處理機(jī)管理3.3存儲管理3.4設(shè)備管理3.5文件管理

3.2處理機(jī)管理 處理機(jī)分配問題,或稱處理機(jī)調(diào)度問題●處理機(jī)管理有3個重要任務(wù):作業(yè)調(diào)度——這是粗的調(diào)度,即確定哪一個作業(yè)進(jìn)入運行狀態(tài)。進(jìn)程調(diào)度——這是細(xì)的調(diào)度,用來確定哪些進(jìn)程進(jìn)入執(zhí)行狀態(tài),即占有CPU。交通控制——進(jìn)程的各種狀態(tài)(執(zhí)行、就緒、阻塞)的互相轉(zhuǎn)換和進(jìn)程間的同步通訊。3.2處理機(jī)管理3.2.1作業(yè)調(diào)度3.2.2進(jìn)程調(diào)度3.2.3調(diào)度算法3.2.4交通控制3.2.1作業(yè)調(diào)度作業(yè)從提交給系統(tǒng)直到它完成后離開系統(tǒng)前的整個活動示于圖3.4中。提交后備設(shè)備管理完成作業(yè)調(diào)度執(zhí)行運行就緒阻塞進(jìn)程調(diào)度交通控制輔存圖3.4多道程序中作業(yè)的信息流及狀態(tài)變換

3.2.1作業(yè)調(diào)度●系統(tǒng)中的作業(yè)通常分為以下4種狀態(tài):提交狀態(tài)——一個作業(yè)被提交給機(jī)房后或用戶通過終端鍵盤向計算機(jī)中鍵入其作業(yè)時所處的狀況為提交狀態(tài)后備狀態(tài)——作業(yè)的全部信息都已通過輸入機(jī)輸入,并由操作系統(tǒng)將其存放在磁盤上等待運行,則稱為后備狀態(tài)運行狀態(tài)——作業(yè)一旦被作業(yè)調(diào)度程序選中而被調(diào)入主存中投入運行,則稱之為運行狀態(tài)完成狀態(tài)——作業(yè)完成其全部運行,釋放出其占用的全部資源,準(zhǔn)備退出系統(tǒng)時的作業(yè)狀況稱之為完成狀態(tài)提交后備設(shè)備管理完成作業(yè)調(diào)度執(zhí)行運行就緒阻塞進(jìn)程調(diào)度交通控制輔存3.2.1作業(yè)調(diào)度●所謂作業(yè)調(diào)度——按照某種調(diào)度算法從后備隊列中挑選作業(yè)進(jìn)入主存中運行。為了管理和調(diào)度作業(yè),系統(tǒng)為每個作業(yè)設(shè)置一個作業(yè)控制塊(JCB)它記錄了作業(yè)的有關(guān)信息。3.2.1作業(yè)調(diào)度●通常作業(yè)調(diào)度要完成以下工作:按照某種調(diào)度算法從后備隊列中挑選作業(yè)進(jìn)入主存;調(diào)用存儲管理和設(shè)備管理程序,為被選中的作業(yè)分配內(nèi)存和外設(shè);為選中的作業(yè)建立相應(yīng)的進(jìn)程;構(gòu)造和填寫作業(yè)運行所需的表格,如作業(yè)表(登記所有在主存中的各作業(yè)的有關(guān)信息)等;作業(yè)運行完畢或運行過程中因某種原因要撤離時的善后處理工作。3.2.2進(jìn)程調(diào)度●通常一個進(jìn)程至少可劃分為3種基本狀態(tài):執(zhí)行狀態(tài)(running)——進(jìn)程正在處理機(jī)上執(zhí)行;就緒狀態(tài)(ready)

——進(jìn)程獲得了除處理機(jī)外的一切所需資源,一旦得到處理機(jī)即可執(zhí)行;阻塞狀態(tài)(locked)

——又稱等待狀態(tài)。進(jìn)程正在等待某一事件發(fā)生而暫時停止執(zhí)行,這時即使把處理機(jī)分配給該進(jìn)程它也無法執(zhí)行。3.2.2進(jìn)程調(diào)度●進(jìn)程各狀態(tài)之間的轉(zhuǎn)換示意圖3.5中。執(zhí)行就緒阻塞事件發(fā)生進(jìn)程調(diào)度等待事件時間片完圖3.5進(jìn)程狀態(tài)變化圖3.2.2進(jìn)程調(diào)度程序●進(jìn)程由3部分組成數(shù)據(jù)進(jìn)程控制塊●進(jìn)程控制塊(PCB)——用以記錄進(jìn)程的有關(guān)信息的一塊主存,它是由系統(tǒng)為每個進(jìn)程分別建立的。3.2.2進(jìn)程調(diào)度●進(jìn)程控制塊的主要作用是:記錄進(jìn)程的有關(guān)信息——如標(biāo)識、狀態(tài)、調(diào)度、通訊、占用資源、中斷現(xiàn)場等;標(biāo)志進(jìn)程的存在3.2處理機(jī)管理3.2.1作業(yè)調(diào)度3.2.2進(jìn)程調(diào)度3.2.3調(diào)度算法3.2.4交通控制3.2.3調(diào)度算法常用的調(diào)度算法有:

(1)先來先服務(wù)(FCFS)

FCFS(FirstComeFirstService)的基本原則:按照作業(yè)到達(dá)系統(tǒng)或進(jìn)程進(jìn)入就緒隊列的先后次序來選擇,屬于不可搶占策略。一旦一個進(jìn)程占有了處理機(jī),它就一直運行下去,直到該進(jìn)程完成或因等待某事件時才釋放出處理機(jī)。該算法只考慮了等待時間的長短而沒有考慮要求服務(wù)的時間長短。

3.2.3調(diào)度算法

(2)優(yōu)先級調(diào)度算法(priority)

系統(tǒng)對每個進(jìn)程給一個優(yōu)先數(shù)。優(yōu)先數(shù)的確定可以根據(jù)外部設(shè)備使用的頻繁程度、算題的重要程度、計算時間的長短等因素來確定;確定進(jìn)程的優(yōu)先數(shù)可以基于靜態(tài)特性也可以基于動態(tài)特性。

3.2.3調(diào)度算法

(3)時間片輪轉(zhuǎn)(roundrobin)

時間片輪轉(zhuǎn)主要用于進(jìn)程調(diào)度。進(jìn)程一旦占有處理機(jī)僅使用一個時間片,然后被迫讓出處理機(jī)。對分時系統(tǒng)來說,定時輪轉(zhuǎn)是一種簡單而又必要的策略。

3.2.3調(diào)度算法

(4)最短作業(yè)優(yōu)先算法(SJF)SJF(ShortestJobFirstScheduling)

根據(jù)后緩存儲器中作業(yè)申請的計算時間,優(yōu)先選取計算時間短的作業(yè)為下一次服務(wù)對象。這一算法將由于系統(tǒng)不斷接受短作業(yè)而使長作業(yè)等待時間過長。3.2.3調(diào)度算法

(5)最高響應(yīng)比優(yōu)先調(diào)度算法(HRRN)

HRRN(HighestResponseRatioNext)的策略是:

每個作業(yè)都有一個優(yōu)先數(shù),該優(yōu)先數(shù)不但是要求服務(wù)時間的函數(shù),而且是該作業(yè)為得到服務(wù)所花費的等待時間的函數(shù)。動態(tài)優(yōu)先數(shù)的計算公式如下。3.2.3調(diào)度算法●因為要求服務(wù)的時間是分母,所以對短作業(yè)是有利的,其優(yōu)先數(shù)高,可優(yōu)先運行;●因為等待時間是分子,所以長作業(yè)由于其等待了較長時間,從而提高了其調(diào)度優(yōu)先數(shù)而被分給了處理機(jī)?!駨纳厦娴墓街形覀兛梢钥闯觯簝?yōu)先數(shù)值實際上也是響應(yīng)時間與服務(wù)時間的比值,稱為響應(yīng)比。

3.2處理機(jī)管理3.2.1作業(yè)調(diào)度3.2.2進(jìn)程調(diào)度3.2.3調(diào)度算法3.2.4交通控制3.2.4交通控制●系統(tǒng)中的進(jìn)程在不同時刻處于不同的狀態(tài)(就緒、執(zhí)行、阻塞),為了表明各進(jìn)程所處的狀態(tài),每個進(jìn)程都有一個進(jìn)程控制塊(PCB),●每當(dāng)一種資源狀態(tài)變化時就調(diào)用交通控制程序,它是實現(xiàn)進(jìn)程3種狀態(tài)轉(zhuǎn)換的模塊。3.2.4交通控制●交通控制程序記錄進(jìn)程各種狀態(tài)并實現(xiàn)各狀態(tài)之間轉(zhuǎn)換外;實現(xiàn)各進(jìn)程之間的通信聯(lián)絡(luò),即同步問題?!瘛巴健笔侵竷蓚€事件的發(fā)生有著某種時序上的關(guān)系,而進(jìn)程之間的同步關(guān)系是指系統(tǒng)中往往有n個進(jìn)程共同完成一個任務(wù),因此它們之間必須互相配合,甚至需要交換信息——進(jìn)程間的通訊。3.2.4交通控制●互斥關(guān)系:各進(jìn)程要共享資源,而有些資源往往要求排它性地使用,因此,進(jìn)程間往往要互相競爭,以使用這些互斥的資源?;コ庖部煽醋魇且环N特殊的同步關(guān)系。●解決進(jìn)程間的同步和互斥的方法很多,利用信號量作為同步工具就是其中方法之一?!裥盘枱簟煌ü芾碇械囊环N常用設(shè)備,交通管理人員利用信號燈的狀態(tài)(顏色)來實現(xiàn)交通管理。P、V操作3.2.4交通控制●發(fā)生兩個或多個進(jìn)程因無限期地等待永遠(yuǎn)不會發(fā)生的條件的問題,我們稱此時的系統(tǒng)處于死鎖狀態(tài)。●產(chǎn)生死鎖的原因很多,一般可歸結(jié)為:系統(tǒng)資源不足進(jìn)程推進(jìn)順序不合理3.2.4交通控制對共享設(shè)備占有引起的死鎖可以用圖3.6的環(huán)路圖來表示,圖中方塊表示資源,圓圈表示進(jìn)程。當(dāng)箭頭由進(jìn)程指向資源時,表示進(jìn)程請求資源;當(dāng)箭頭由資源指向進(jìn)程時,表示該資源已分配給此進(jìn)程。那么,當(dāng)設(shè)備共享發(fā)生死鎖時,P1、P2、R1、R2就形成一個環(huán)路,這是死鎖的充要條件。R1R2圖3.6死鎖的循環(huán)等待條件示意圖●當(dāng)系統(tǒng)一旦發(fā)現(xiàn)死鎖,通常用下述兩種方法立即把系統(tǒng)從死鎖中解脫出來。資源剝奪——從其它進(jìn)程剝奪足夠多的資源給死鎖進(jìn)程,以解除死鎖狀態(tài)。撤銷進(jìn)程——根據(jù)不同情況,撤銷一部分進(jìn)程,直到有足夠的資源可用、死鎖狀態(tài)消除為止。R1R2圖3.6死鎖的循環(huán)等待條件示意圖第3章操作系統(tǒng)

3.1操作系統(tǒng)概述3.2處理機(jī)管理3.3存儲管理3.4設(shè)備管理3.5文件管理

3.3存儲管理存儲管理的目的有兩個:一是方便用戶,使用戶減少以至盡可能完全擺脫麻煩的存儲分配問題;二是提高主存儲器的利用率。3.3存儲管理●在單道程序系統(tǒng)中,是采用覆蓋技術(shù)來解決內(nèi)存容量不足的問題;●而在多道程序系統(tǒng)中,除了解決存儲容量問題外,還要解決存儲空間的分配問題,即要防止各道程序問互相干擾和破壞。3.3存儲管理●主存儲器管理的主要研究課題有:主存分配——各種主存分配算法以及每種算法所要求的數(shù)據(jù)結(jié)構(gòu)。地址映象或重定位——各種軟、硬件的地址轉(zhuǎn)換技術(shù)和機(jī)構(gòu)。存儲保護(hù)——如何保護(hù)各程序區(qū)中信息不被破壞和偷竊。存儲器擴(kuò)充—用存儲管理軟件來實現(xiàn)邏輯上的擴(kuò)充--即所謂的虛擬存儲技術(shù)。3.3存儲管理●主存儲器管理技術(shù)可分為兩大類:

3.3.1實存儲器管理技術(shù)3.3.2虛擬存儲器管理技術(shù)3.3存儲管理3.3.1實存儲器管理技術(shù)3.3.2虛擬存儲器管理技術(shù)3.3.1實存儲器管理技術(shù)1.單一連續(xù)區(qū)分配2.分區(qū)式分配3.覆蓋技術(shù)4.交換技術(shù)1.單一連續(xù)區(qū)分配●從概念上講,存儲器被分成兩個連續(xù)區(qū):一部分固定分配給操作系統(tǒng),它通常駐留在存儲器的頂部或底部,其余部分供用戶使用或空白。3.3.1實存儲器管理技術(shù)1.單一連續(xù)區(qū)分配2.分區(qū)式分配3.覆蓋技術(shù)4.交換技術(shù)2.分區(qū)式分配●分區(qū)的方式通??煞譃椋汗潭ㄊ椒謪^(qū)可變式分區(qū)可重定位分區(qū)2.分區(qū)式分配固定式分區(qū)固定式分區(qū)——指存儲器在處理作業(yè)之前,就被劃分成若干個區(qū),除操作系統(tǒng)本身占用一個分區(qū)外,每個分區(qū)可分配一道作業(yè)。可使多個作業(yè)共享主存,但仍不能充分利用主存。因為作業(yè)的大小,不可能剛好等于某個分區(qū)的大小,所以,在每個分區(qū)中,都可能有一塊被浪費掉的區(qū)域,有時這種浪費還相當(dāng)嚴(yán)重。2.分區(qū)式分配可變式分區(qū)可變式分區(qū)——指在處理作業(yè)的過程中建立分區(qū),使分區(qū)大小正好適應(yīng)作業(yè)的需要,且分個數(shù)也可以調(diào)整。這種技術(shù)又被稱為動態(tài)分區(qū)或動態(tài)存儲分配。由于各作業(yè)大小和完成的時間是各不相同的,這樣經(jīng)過一段時間后,主存由原來一個完整分區(qū)被分割成多個分區(qū),這些分區(qū)中有些被作業(yè)占據(jù)使用,有些分區(qū)卻是空閑的(也稱為碎片)。2.分區(qū)式分配可重定位分區(qū)盡管可變式分區(qū)與固定式分區(qū)相比,其存儲空間的利用率要高一些,但是仍然存在著一些分散的、較小的空白區(qū)仍然不能加以充分利用的問題。解決上述問題最簡單又直觀的方法是:定時地、或者當(dāng)發(fā)生上述情況時,把所有的空白區(qū)合并為一個連續(xù)區(qū)。2.分區(qū)式分配可重定位分區(qū)實現(xiàn)的方法是移動某些已分配區(qū)中的信息,使所有分配區(qū)緊挨著存儲器的一端,而空白區(qū)全部留在另一端。這種由于程序在存儲空間中移動所進(jìn)行的與位置有關(guān)的地址調(diào)整過程也稱為“重定位”或“浮動”。3.3.1實存儲器管理技術(shù)1.單一連續(xù)區(qū)分配2.分區(qū)式分配3.覆蓋技術(shù)4.交換技術(shù)3.覆蓋技術(shù)●所謂“覆蓋”是指一個作業(yè)的若干個程序段(或數(shù)據(jù)段)之間,或幾個作業(yè)的某些部分之間共享某一主存空間。3.3.1實存儲器管理技術(shù)1.單一連續(xù)區(qū)分配2.分區(qū)式分配3.覆蓋技術(shù)4.交換技術(shù)4.交換技術(shù)●所謂“交換”——主存中的信息以文件的形式寫到輔存,接著將指定的信息從輔存讀入主存,并將控制轉(zhuǎn)給它。4.交換技術(shù)●通常,調(diào)度程序從進(jìn)程就緒隊列中挑選某一進(jìn)程運行時,就把該進(jìn)程調(diào)入主存運行一個時間片,●一旦時間片到,或進(jìn)程因等待事件而不能運行時,它不但要讓出CPU,而且也要釋放出其所占有的主存空間,并且,把該進(jìn)程的程序和數(shù)據(jù)以文件形式保存在輔存上,●直到調(diào)度程序再次調(diào)度到它時,才重新進(jìn)入主存運行,這時又要把它的程序和所需的數(shù)據(jù)送入主存。●有時也稱這種交換技術(shù)為“滾進(jìn)滾出”。3.3存儲管理3.3.1實存儲器管理技術(shù)3.3.2虛擬存儲器管理技術(shù)3.3.2虛擬存儲器管理技術(shù)●應(yīng)用較為廣泛的3種虛擬存儲管理技術(shù)1.分頁存儲管理2.分段存儲管理3.段頁式存儲管理1.分頁存儲管理●分頁存儲管理基本作法是:等分主存把主存劃分成相同大小的存儲塊,稱為頁架。對于一個特定的計算機(jī)系統(tǒng)而言,頁架大小通常是固定不變的,頁架號為0、1、2…。等分虛存把用戶的邏輯地址空間(虛存空間)劃分成若干個與頁架大小相同的部分,稱為頁,頁號為0、1、2…。

1.分頁存儲管理邏輯地址表示用戶的邏輯地址一般是從基地址“0”開始連續(xù)編址。在分頁系統(tǒng)中,每個虛擬地址用一個數(shù)對(P、d)表示,其中P是頁面號,d是該虛擬地址在頁面號為P的頁中的相對地址(稱為頁內(nèi)地址)。主存分配原則分頁情況下,系統(tǒng)以頁架為單位把主存分給作業(yè)或進(jìn)程,進(jìn)程或作業(yè)的一個頁面裝入系統(tǒng)分給的某個頁架中,分給一個作業(yè)的各頁架不一定是相鄰的。1.分頁存儲管理頁表與頁表地址寄存器由于一個作業(yè)的各頁并不全在主存中,只是將最近需要的幾頁放在主存中,而這幾頁又可能被分散地裝入各頁架。因此當(dāng)進(jìn)程訪問某個虛地址時,系統(tǒng)如何知道該頁在不在主存中?若在,則又放在哪個頁架中呢?為此,系統(tǒng)為每個作業(yè)建立一個頁面映象表(PMT——PageMappingTable),簡稱頁表。除此之外,系統(tǒng)還設(shè)置一個頁表地址寄存器以指出當(dāng)前運行作業(yè)的頁表起始地址和頁表長。1.分頁存儲管理頁面大小應(yīng)是2的冪因為2的冪與機(jī)器內(nèi)部的二進(jìn)制的表示法是一致的,這樣,給出一個邏輯地址后,要決定其頁號P和頁內(nèi)地址d就十分簡單了。方法是:頁的大小是2的幾次冪,就把地址從第幾位分開成兩部分,其高位部分所表示的數(shù)即為頁號P,其低位部分所代表的數(shù)即為頁內(nèi)地址d。1.分頁存儲管理●例如,設(shè)頁的大小為1K(1024)字節(jié),則十進(jìn)制表示的邏輯地址(4101)10的頁號、頁內(nèi)地址可以這樣確定:1K=1024=210,所以,頁內(nèi)地址占10位(第0位到第9位)。又因為(4101)10=212+22+20=210×22+22+20,所以,高位部分的數(shù)即頁數(shù)(P)為22=4頁,頁內(nèi)地址d=22+20=5,因此,(4101)10←→(4,5)。1.分頁存儲管理●分頁存儲管理能更有效地利用主存,因為不用的部分根本不用裝入主存;●作業(yè)的地址空間不再受實際主存大小的限制。3.3.2虛擬存儲管理技術(shù)1.分頁存儲管理2.分段存儲管理3.段頁式存儲管理2.分段存儲管理●分頁管理比較適用于線性程序,但程序設(shè)計一般都采用模塊化的結(jié)構(gòu),程序設(shè)計者都希望按模塊分段。●“段”是一個相對完整的信息:如一個主程序、一個子程序或一個數(shù)組等。這樣便于程序調(diào)用,而且可以實現(xiàn)多道程序共享的功能?!竦泊嬖谥T如在輔存中管理可變尺寸的分段比較困難、以及分段的最大尺寸受到主存大小的限制等缺點。2.分段存儲管理●分段存儲管理的基本思想:

作業(yè)的邏輯地址空間分段情況下要求每個作業(yè)的地址空間按照程序自身的自然邏輯關(guān)系分成若干段;每個段有自己的段名(由程序員給出);每段都從“0”開始編址成連續(xù)的線性地址。20030005000主程序100000分段MAIN(主程序)分段x(子主程序)分段A(數(shù)組)分段B(工作區(qū))圖3.8分段地址空間可見,分段存儲情況下,作業(yè)的邏輯地址空間是二維的,每個虛地址有兩個部分:段號s和段內(nèi)地址w,如圖3.8所示。2.分段存儲管理2.分段存儲管理

程序的地址結(jié)構(gòu)假定指令的地址長為24位,圖3.9是地址結(jié)構(gòu)。圖3.9所示的地址結(jié)構(gòu)就限定了一個作業(yè)最多的段數(shù)為256段,段長最大為64K字節(jié)。圖3.9地址結(jié)構(gòu)2.分段存儲管理

主存分配以段為單位,每一段分配一塊連續(xù)的主存分區(qū),一個作業(yè)的各段所分到的主存分區(qū)不要求是相鄰連續(xù)的分區(qū)。

段表和段表地址寄存器與分頁存儲管理一樣,系統(tǒng)為每個作業(yè)建立一個段映象表(段表)以實現(xiàn)動態(tài)地址轉(zhuǎn)換;還要設(shè)立一個段表地址寄存器以指出運行作業(yè)(進(jìn)程)的段表在主存中的起始地址和段表的長度。3.3.2虛擬存儲管理技術(shù)1.分頁存儲管理2.分段存儲管理3.段頁式存儲管理3.段頁式存儲管理●為了獲得分段在邏輯上的優(yōu)點和分頁在管理存儲空間方面的優(yōu)點,兼用分段和分頁兩種方法,即所謂段頁式存儲管理。●段頁式存儲管理的基本思想用分段的方法來分配和管理虛存,而用分頁的方法來分配和管理主存。但這種方法處理過程比較復(fù)雜。第3章操作系統(tǒng)

3.1操作系統(tǒng)概述3.2處理機(jī)管理3.3存儲管理

3.4設(shè)備管理

3.5文件管理

3.4設(shè)備管理3.4.1外部設(shè)備的種類3.4.2計算機(jī)訪問外設(shè)的方式3.4.3設(shè)備管理的任務(wù)3.4設(shè)備管理3.4.1外部設(shè)備的種類3.4.2計算機(jī)訪問外設(shè)的方式3.4.3設(shè)備管理的任務(wù)3.4.1外部設(shè)備的種類●外部設(shè)備的種類很多,下面是一些最典型的I/O設(shè)備。3.4設(shè)備管理3.4.1外部設(shè)備的種類3.4.2計算機(jī)訪問外設(shè)的方式3.4.3設(shè)備管理的任務(wù)3.4.2計算機(jī)訪問外設(shè)的方式1.循環(huán)測試I/O的方式2.程序中斷I/O方式3.通道I/O方式1.循環(huán)測試I/O的方式●CPU啟動外設(shè)后不斷地詢問外設(shè)的忙/閑情況:當(dāng)外設(shè)為“忙”時(即數(shù)據(jù)沒準(zhǔn)備好),CPU不斷地對它進(jìn)行測試,在此期間CPU不能另作它用。直到外設(shè)為“閑”時(即數(shù)據(jù)已準(zhǔn)備好),才將外設(shè)緩沖區(qū)中的數(shù)據(jù)傳送到內(nèi)存中。3.4.2計算機(jī)訪問外設(shè)的方式1.循環(huán)測試I/O方式2.程序中斷I/O方式3.通道I/O方式2.程序中斷I/O方式●CPU啟動外設(shè)后轉(zhuǎn)向其它程序,●當(dāng)外設(shè)完成I/O操作時便向CPU匯報(即提出中斷請求),●這時CPU才將緩沖區(qū)中數(shù)據(jù)傳送到內(nèi)存。3.4.2計算機(jī)訪問外設(shè)的方式1.循環(huán)測試I/O的方式2.程序中斷I/O方式3.通道I/O方式3.通道I/O方式●雖然中斷已大大改善了CPU的利用率,但I(xiàn)/O操作畢竟還是直接由CPU控制,每傳送一個字或字符,往往就要做一次中斷請求?!裢ǖ赖某霈F(xiàn)便建立了I/O的獨立管理機(jī)構(gòu),它不僅使數(shù)據(jù)傳送獨立于CPU,而且I/O操作的組織、管理、結(jié)束等也獨立于CPU。3.4設(shè)備管理3.4.1外部設(shè)備的種類3.4.2計算機(jī)訪問外設(shè)的方式3.4.3設(shè)備管理的任務(wù)3.4.3設(shè)備管理的任務(wù)●按用戶要求啟動具體設(shè)備進(jìn)行數(shù)據(jù)傳輸操作,并且處理設(shè)備的中斷,完成這部分功能的程序叫做設(shè)備處理程序。●設(shè)備處理程序的主要功能有:接受用戶的輸入輸出請求,并檢查該請求的合法性;啟動該設(shè)備工作;處理來自設(shè)備的中斷,包括結(jié)束中斷、傳輸錯誤中斷、設(shè)備故障中斷等。3.4.3設(shè)備管理的任務(wù)●在多道程序系統(tǒng)中,進(jìn)程數(shù)總是多于I/O設(shè)備數(shù),因此必將引起進(jìn)程對設(shè)備的競爭,所以,設(shè)備管理的另一個重要任務(wù):是按照一定的算法在諸進(jìn)程中調(diào)度和分配設(shè)備。完成這部分功能的程序叫I/O調(diào)度程序。它要依據(jù)設(shè)備的特點及要求,考慮按什么原則或策略將設(shè)備分配給誰、以及何時分配等問題。3.4.3設(shè)備管理的任務(wù)如何充分而有效地使用這些設(shè)備;盡可能提高它們的并行操作程度第3章操作系統(tǒng)

3.1操作系統(tǒng)概述3.2處理機(jī)管理3.3存儲管理3.4設(shè)備管理

3.5文件管理3.5文件管理●前面所講的處理機(jī)管理、存儲管理、設(shè)備管理都是對計算機(jī)系統(tǒng)硬件資源的管理,●文件管理——通過把它所管理的信息(程序和數(shù)據(jù))組織成一個個文件的方式來實現(xiàn)對某些軟件資源的管理。3.5文件管理3.5.1文件和文件系統(tǒng)3.5.2文件分類3.5.3文件系統(tǒng)的功能3.5.4文件的邏輯組織和物理組織3.5.5文件目錄3.5.6文件的共享與文件系統(tǒng)的安全性3.5文件管理3.5.1文件和文件系統(tǒng)3.5.2文件分類3.5.3文件系統(tǒng)的功能3.5.4文件的邏輯組織和物理組織3.5.5文件目錄3.5.6文件的共享與文件系統(tǒng)的安全性3.5.1文件和文件系統(tǒng)●文件——是指具有符號名的數(shù)據(jù)項的集合。符號名是用戶用以標(biāo)識文件的,稱為文件名?!裼涗洝募梢杂扇舾蓚€記錄組成,它是一些相關(guān)信息項的集合?!裎募到y(tǒng)——是指負(fù)責(zé)存取和管理文件信息的機(jī)構(gòu)。

3.5文件管理3.5.1文件和文件系統(tǒng)3.5.2文件分類3.5.3文件系統(tǒng)的功能3.5.4文件的邏輯組織和物理組織3.5.5文件目錄3.5.6文件的共享與文件系統(tǒng)的安全性3.5.2文件分類●按其性質(zhì)和用途分:系統(tǒng)文件-與操作系統(tǒng)有關(guān)的信息(程序或數(shù)據(jù))組成的文件。庫文件-由系統(tǒng)提供給用戶調(diào)用的各種標(biāo)準(zhǔn)過程、函數(shù)及應(yīng)用程序等。用戶文件-由用戶信息組成的文件?!癜创嫒”Wo(hù)來分:

執(zhí)行文件-用戶可以執(zhí)行此程序,但不能讀也不能修改。只讀文件-允許文件授權(quán)者讀出、執(zhí)行但不能修改。讀寫文件-文件授權(quán)者可以讀、寫此文件。不保護(hù)文件-沒有任何訪問限制。3.5.2文件分類●按文件中數(shù)據(jù)說來分:源文件——指源程序或數(shù)據(jù)構(gòu)成的文件。相對地址形式文件——指由各種語言編譯程序所輸出的相對地址形式的程序文件??蓤?zhí)行的目標(biāo)文件——指由鏈接裝配程序連接后所生成的可執(zhí)行的目標(biāo)程序文件?!癜幢4鏁r間來分:臨時文件永久文件3.5.2文件分類●按文件信息的流向來分:輸入文件——只能讀入的文件。輸出文件——只能寫的文件。輸入輸出文件——既可讀又可寫的文件?!癜次募拇嫒》绞絹矸郑喉樞虼嫒∥募涗浀拇嫒∈前错樞蜻M(jìn)行的。直接存取文件——用戶能以任意次序直接得到某個記錄。此時,用戶除了給出文件名外,還顯式地說明需要的記錄號i。3.5文件管理3.5.1文件和文件系統(tǒng)3.5.2文件分類3.5.3文件系統(tǒng)的功能3.5.4文件的邏輯組織和物理組織3.5.5文件目錄3.5.6文件的共享與文件系統(tǒng)的安全性3.5.3文件系統(tǒng)的功能●使用戶能建立、修改和刪除一個文件?!裼脩魬?yīng)能以符號名對文件進(jìn)行訪問?!裼脩魬?yīng)能在文件間進(jìn)行數(shù)據(jù)傳輸以及共享其它用戶的文件?!駷榉乐挂馔馐鹿?,文件系統(tǒng)應(yīng)有轉(zhuǎn)儲和恢復(fù)文件的能力?!駪?yīng)提供可靠的保護(hù)和保密措施。

3.5文件管理3.5.1文件和文件系統(tǒng)3.5.2文件分類3.5.3文件系統(tǒng)的功能3.5.4文件的邏輯組織和物理組織3.5.5文件目錄3.5.6文件的共享與文件系統(tǒng)的安全性3.5.4文件的邏輯組織和物理組織●用戶和系統(tǒng)程序人員常從不同的角度來看待同一個文件。

(1)文件邏輯組織:用戶以其編制時的組織方式來看待文件的組織形式。它有兩種形式:記錄式文件——每條記錄有邏輯記錄號,如“學(xué)生成績表”等;非記錄式(順序式)文件——它是有序的相關(guān)數(shù)據(jù)項的集合,如源程序、目標(biāo)程序等類的文件。3.5.4文件的邏輯組織和物理組織(2)文件的物理組織:它是指一個邏輯文件在輔存上是如何存放的。常見的有3種形式:順序結(jié)構(gòu)——邏輯文件的信息依次存放于輔存的若干連續(xù)的物理塊中,常用于磁帶、打印機(jī)等設(shè)備上。鏈接結(jié)構(gòu)——文件不需要存放在存儲介質(zhì)連續(xù)的物理塊中。各物理塊之間有鏈接指針指示。例如磁盤和磁鼓,往往就需要采用緊縮技術(shù)以保證足夠的連續(xù)空閑空間。索引結(jié)構(gòu)——它是實現(xiàn)非連續(xù)分配的另一種方案,適合于隨機(jī)直接存取。3.5文件管理3.5.1文件和文件系統(tǒng)3.5.2文件分類3.5.3文件系統(tǒng)的功能3.5.4文件的邏輯組織和物理組織3.5.5文件目錄3.5.6文件的共享與文件系統(tǒng)的安全性硬盤的數(shù)據(jù)結(jié)構(gòu)1.磁道,扇區(qū),柱面和磁頭數(shù)2.簇“簇”是硬盤上存儲數(shù)據(jù)進(jìn)行分配的最小單位。當(dāng)創(chuàng)建一個很小的文件時,如是一個字節(jié),則它在磁盤上并不是只占一個字節(jié)的空間,而是占有整個一簇。操作系統(tǒng)視不同的存儲介質(zhì)(如軟盤,硬盤),不同容量的硬盤,簇的大小也不一樣。FAT32系統(tǒng)一簇對應(yīng)8個邏輯相鄰的扇區(qū)存儲容量=磁頭數(shù)×磁道(柱面)數(shù)×每道扇區(qū)數(shù)×每扇區(qū)字節(jié)數(shù)格式化低級格式化就是將磁盤內(nèi)容重新清空,恢復(fù)出廠時的狀態(tài),劃分出的柱面和磁道,再將磁道劃分為若干個扇區(qū),每個扇區(qū)又劃分出標(biāo)識部分ID、間隔區(qū)GAP和數(shù)據(jù)區(qū)DATA等??梢?,低級格式化是高級格式化之前的一件工作,它不僅能在DOS環(huán)境來完成,也能在WindowsNT系統(tǒng)下完成。而且低級格式化只能針對一塊硬盤而不能支持單獨的某一個分區(qū)。每塊硬盤在出廠時,已由硬盤生產(chǎn)商進(jìn)行低級格式化,因此通常使用者無需再進(jìn)行低級格式化操作。高級格式化清除數(shù)據(jù)(寫刪除標(biāo)記);檢查扇區(qū);重新初始化引導(dǎo)信息;初始化分區(qū)表信息;可以在DOS和操作系統(tǒng)上進(jìn)行,只能對分區(qū)操作。高級格式化只是存儲數(shù)據(jù),但如果存在壞扇區(qū)可能會導(dǎo)致長時間磁盤讀寫。快速格式化刪除文件分配表;不檢查扇區(qū)損壞情況格式化好的硬盤,整個磁盤按所記錄數(shù)據(jù)的作用不同可分為五部分:主引導(dǎo)記錄(MBR:MainBootRecord),操作系統(tǒng)引導(dǎo)記錄(OBR

溫馨提示

  • 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

提交評論