




已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
By Touchkiss第一章 引論【了解和知道】1. 小標(biāo)題,概念,各種名詞,基本控制,(填空選擇)1. 操作系統(tǒng)的目標(biāo):有效性(提高系統(tǒng)資源利用率、提高系統(tǒng)的吞吐量)、方便性、可擴(kuò)充性、開放性。2. 操作系統(tǒng)的作用(1) OS作為用戶與計算機(jī)硬件系統(tǒng)之間的接口;(命令方式、系統(tǒng)調(diào)用方式、圖形窗口方式)(2) OS作為計算機(jī)系統(tǒng)資源的管理者;(3) OS實現(xiàn)了對計算機(jī)資源的抽象。3. 推動操作系統(tǒng)發(fā)展的主要動力(1) 不斷提高計算機(jī)資源的利用率;(2) 方便用戶;(3) 器件的不斷更新?lián)Q代;(4) 計算機(jī)體系結(jié)構(gòu)的不斷發(fā)展。4. 單道批處理系統(tǒng)的特征:(1) 自動性。在順利情況下,在磁帶上的一批作業(yè)能自動地逐個地依次運(yùn)行,而無需人工干預(yù)。(2) 順序性。磁帶上的各道作業(yè)是順序的進(jìn)入內(nèi)存,各道作業(yè)的完成順序與他們進(jìn)入內(nèi)存的順序,在正常情況下應(yīng)完全相同,亦即先調(diào)入內(nèi)存的作業(yè)先完成。(3) 單道性。內(nèi)存中僅有一道程序運(yùn)行,即監(jiān)督程序每次從磁帶上只調(diào)入一道程序進(jìn)入內(nèi)存運(yùn)行,當(dāng)該程序完成或發(fā)生異常情況時,才換入其后繼程序進(jìn)入內(nèi)存運(yùn)行。5. 多道批處理系統(tǒng)特點:(1) 資源利用率高;(2) 系統(tǒng)吞吐量大;(3) 平均周轉(zhuǎn)時間長;(4) 無交互能力。6. 分時系統(tǒng)特點:(1) 多路性;(2) 獨(dú)立性;(3) 及時性;(4) 交互性。7、操作系統(tǒng)的特征: 并發(fā)性、共享性、虛擬性、異步性。最基本的是并發(fā)性?!局攸c】1.4 操作系統(tǒng)的主要功能:處理機(jī)管理功能:1、進(jìn)程控制 2、進(jìn)程同步:為多個進(jìn)程的運(yùn)行進(jìn)行協(xié)調(diào) 進(jìn)程互斥方式:諸進(jìn)程在對臨界資源進(jìn)行訪問時 進(jìn)程同步方式:相互合作去完成共同任務(wù)時 3、進(jìn)程通信:合作的進(jìn)程處于同一計算機(jī)上采用直接通信方式。 4、調(diào)度:作業(yè)調(diào)度:選出若干作業(yè),為他們分配資源 進(jìn)程調(diào)度:從線程隊列中選出一個線程,分配處理機(jī)存儲器管理功能:1、內(nèi)存分配:為每道程序分配內(nèi)存空間,提高存儲器的利用率,以減少不可用的內(nèi)存空間??刹捎脛討B(tài)和靜態(tài) 2、內(nèi)存保護(hù):確保每道程序都在自己的內(nèi)存空間內(nèi)運(yùn)行;決不允許用戶程序訪問操作系統(tǒng)的程序和數(shù)據(jù);不允許用戶程序轉(zhuǎn)移到其他非共享程序中去執(zhí)行 3、地址映射 4、內(nèi)存擴(kuò)充:用來實現(xiàn)請求調(diào)入功能和置換功能。設(shè)備管理功能:1、緩沖管理:為了有效緩和CPU與IO設(shè)備速度不匹配的矛盾,提高CPU的利用率 2、設(shè)備分配 3、設(shè)備處理 4、虛擬設(shè)備文件管理功能:1、文件存儲空間管理:提高外存利用率 2、目錄管理 3、文件的讀/寫管理和保護(hù)操作系統(tǒng)與用戶之間的接口:1、 用戶接口2、 程序接口第二章 進(jìn)程管理1.進(jìn)程的基本概念:前趨圖:有向無循環(huán)圖,必須不存在循環(huán)進(jìn)程與線程的關(guān)系:進(jìn)程和線程都是由操作系統(tǒng)所體會的程序運(yùn)行的基本單元。進(jìn)程與線程的不同點【重點】(簡答) 1、線程的劃分尺度小于進(jìn)程,使得多線程程序的并發(fā)性高。 2、進(jìn)程在執(zhí)行過程中擁有獨(dú)立的內(nèi)存單元,而多個線程共享內(nèi)存,從而極大地提高了程序的運(yùn)行效率。 3、 每個獨(dú)立的線程有一個程序運(yùn)行的入口、順序執(zhí)行序列和程序的出口。但是線程不能夠獨(dú)立執(zhí)行,必須依存在應(yīng)用程序中,由應(yīng)用程序提供多個線程執(zhí)行控制。 4、從邏輯角度來看,多線程的意義在于一個應(yīng)用程序中,有多個執(zhí)行部分可以同時執(zhí)行。但操作系統(tǒng)并沒有將多個線程看做多個獨(dú)立的應(yīng)用,來實現(xiàn)進(jìn)程的調(diào)度和管理以及資源分配。這就是進(jìn)程和線程的重要區(qū)別。 2.進(jìn)程同步:(貌似不考信號量)就緒和轉(zhuǎn)換圖 就緒(IO完成) (進(jìn)程調(diào)度) (時間片完)阻塞 (IO請求) 執(zhí)行 P34 程序順序執(zhí)行時的特征 順序性封閉性可再現(xiàn)性P37 進(jìn)程的特征與狀態(tài)【理解】 結(jié)構(gòu)特征:程序段、相關(guān)的數(shù)據(jù)段、PCB動態(tài)性:最基本的特征。并發(fā)性:進(jìn)程實體能和其他進(jìn)程并發(fā)執(zhí)行,而程序不能。獨(dú)立性:進(jìn)程實體是一個能獨(dú)立運(yùn)行,獨(dú)立分配資源和獨(dú)立接受調(diào)度的基本單位異步性:進(jìn)程按各自獨(dú)立地不可預(yù)知的速度前進(jìn)。P38 進(jìn)程的三種狀態(tài)圖2-5 進(jìn)程的三種基本狀態(tài)及其轉(zhuǎn)換 就緒(IO完成) (進(jìn)程調(diào)度) (時間片完)阻塞 (IO請求) 執(zhí)行 P39 進(jìn)入掛起狀態(tài)的主要原因圖2-6 具有掛起狀態(tài)的進(jìn)程狀態(tài)圖 1、終端用戶的請求2、父進(jìn)程的請求3、負(fù)荷調(diào)節(jié)的需要4、操作系統(tǒng)的需要P40 加了創(chuàng)建和終止的狀態(tài)圖 進(jìn)程控制塊的作用和組織方式對每個進(jìn)程是不是只有一個,記錄進(jìn)程的狀態(tài)及名稱,是不是在主存當(dāng)中 對每個進(jìn)程只有一個作用是使一個在多道程序環(huán)境下不能獨(dú)立運(yùn)行的程序(含數(shù)據(jù)),成為一個能獨(dú)立運(yùn)行的基本單位,一個能與其他進(jìn)程并發(fā)的進(jìn)程. PCB是進(jìn)程存在的唯一標(biāo)志. PCB應(yīng)常駐內(nèi)存. 組織方式:1、鏈接方式:具有統(tǒng)一狀態(tài)的PCB鏈接字鏈接的隊列2、索引方式:根據(jù)所有進(jìn)程的狀態(tài)建立索引表2.2 進(jìn)程控制:掌握各種狀態(tài)的基本含義和過程2.3 進(jìn)程同步:什么叫臨界資源,同步機(jī)制應(yīng)遵循的規(guī)則,信號量的主要應(yīng)用P50 主要目的:同步,還有利用信號量實現(xiàn)前驅(qū)關(guān)系,進(jìn)程互斥臨界資源是一次僅允許一個進(jìn)程使用的共享資源。各進(jìn)程采取互斥的方式,實現(xiàn)共享的資源稱作臨界資源。屬于臨界資源的硬件有打印機(jī)、磁帶機(jī)等,軟件有消息緩沖隊列、變量、數(shù)組、緩沖區(qū)等。 諸進(jìn)程間應(yīng)采取互斥方式,實現(xiàn)對這種資源的共享。每個進(jìn)程中訪問臨界資源的那段代碼稱為臨界區(qū).同步機(jī)制應(yīng)遵循的原則:1、空閑讓進(jìn)2、忙則等待3、有限等待4、讓權(quán)等待 信號量的主要應(yīng)用:1、利用信號量實現(xiàn)進(jìn)程互斥2、利用信號量實現(xiàn)前驅(qū)關(guān)系3、管程機(jī)制:進(jìn)程的同步工具2.5 進(jìn)程通信:進(jìn)程通信的類型 1、共享存儲器系統(tǒng): 基于共享數(shù)據(jù)結(jié)構(gòu)的通信方式 寄語共享存儲區(qū)的通信方式2、消息傳遞系統(tǒng):應(yīng)用最為廣泛3、管道通信2.6 線程的基本概念,P73線程與進(jìn)程在幾方面的比較,P75線程間的同步和通信習(xí)題P81 3、4、7 第三章 處理機(jī)調(diào)度與死鎖3.1處理機(jī)調(diào)度的層次3.1.1 高級調(diào)度1 高級調(diào)度:又稱為作業(yè)調(diào)度或長程調(diào)度,其主要功能是根據(jù)某種算法,把外存上處于后備隊列中的那些作業(yè)調(diào)入內(nèi)存,也就是說,它的調(diào)度對象是作業(yè)。2 作業(yè):是一個比程序更為廣泛的概念,它不僅包含了通常的程序和數(shù)據(jù),而且還應(yīng)配有一份作業(yè)說明書,系統(tǒng)根據(jù)該說明書來對程序的運(yùn)行進(jìn)行控制。在批處理系統(tǒng)中,是以作業(yè)為基本單位從外存調(diào)入內(nèi)存的。3 作業(yè)步:在作業(yè)運(yùn)行期間,每個作業(yè)都必須經(jīng)過若干個相對獨(dú)立又相互關(guān)聯(lián)的順序加工步驟才能得到結(jié)果,我們把其中的每一個加工步驟成為一個作業(yè)步。4 作業(yè)流:若干個作業(yè)進(jìn)入系統(tǒng)后,被依次存放在外存上,這便形成了輸入的作業(yè)流;在操作系統(tǒng)的控制下,逐個作業(yè)進(jìn)行處理,于是便形成了處理作業(yè)流。3.1.2 低級調(diào)度1. 通常把低級調(diào)度稱為進(jìn)程調(diào)度或短程調(diào)度,它所調(diào)度的對象是進(jìn)程。進(jìn)程調(diào)度是最基本的一種調(diào)度,再多道批處理、分時和實時三種類型的OS中,都必須配置這級調(diào)度。2. 功能:(1) 保存處理機(jī)的現(xiàn)場信息(2) 按照某種算法選取進(jìn)程(3) 把處理器分配給進(jìn)程3. 進(jìn)程調(diào)度三個基本機(jī)制(1) 排隊器。為了提高進(jìn)程調(diào)度的效率,應(yīng)事先將系統(tǒng)中所有的就緒進(jìn)程按照一定的方式排成一個或多個隊列,以便調(diào)度程序能最快的找到它。(2) 分派器(分派程序)。分派器把由進(jìn)程調(diào)度程序所選定的進(jìn)程,從就緒隊列中取出該進(jìn)程,然后進(jìn)行上下文切換,將處理機(jī)分配給它。(3) 上下文切換機(jī)制。4. 進(jìn)程調(diào)度方式(1) 非搶占方式:一旦處理機(jī)分配給某進(jìn)程后,不管運(yùn)行多長時間,都不會因時鐘中斷等原因而搶占正在運(yùn)行進(jìn)程的處理機(jī),也不允許其他進(jìn)程搶占已分配給他的處理機(jī)。(2) 搶占方式:優(yōu)先權(quán)原則、短作業(yè)優(yōu)先原則、時間片原則。3.1.3 中級調(diào)度1. 中級調(diào)度:又稱中程調(diào)度。引入的主要目的是為了提高內(nèi)存利用率和系統(tǒng)吞吐量。中級調(diào)度實際上就是存儲器管理中的對換功能。3.3 調(diào)度算法3.3.1先來先服務(wù)和短作業(yè)優(yōu)先調(diào)度算法1. 先來先服務(wù)FCFS2. 短作業(yè)優(yōu)先調(diào)度算法SJ(P)F3.3.2 高優(yōu)先權(quán)優(yōu)先調(diào)度1. 優(yōu)先權(quán)調(diào)度算法類型:非搶占式優(yōu)先權(quán)算法、搶占式優(yōu)先權(quán)調(diào)度算法。2. 優(yōu)先權(quán)的類型:靜態(tài)優(yōu)先權(quán)(進(jìn)程類型、進(jìn)程對資源的需求、用戶要求)、動態(tài)優(yōu)先權(quán)3. 高響應(yīng)比優(yōu)先調(diào)度算法3.3.3基于時間片的輪轉(zhuǎn)調(diào)度算法1. 時間片輪轉(zhuǎn)法2. 多級反饋隊列調(diào)度算法3. 多級反饋隊列調(diào)度算法的性能(1) 終端型作業(yè)用戶。系統(tǒng)只要能使這些作業(yè)在第一隊列所規(guī)定的時間片內(nèi)完成,便可使終端型作業(yè)用戶都感到滿意。(2) 短批處理作業(yè)用戶??梢詽M意(3) 長批處理作業(yè)用戶。用戶不必?fù)?dān)心其作業(yè)長期得不到處理。3.4實時調(diào)度3.4.1實時調(diào)度基本條件1. 提供必要的信息:就緒時間、開始截止時間和完成截止時間、處理時間、資源要求、優(yōu)先級。2. 系統(tǒng)處理能力強(qiáng)3. 采用搶占式調(diào)度機(jī)制4. 具有快速切換機(jī)制:對外部中斷的快速響應(yīng)能力、快速的任務(wù)分派能力。3.4.2實時調(diào)度算法的分類1. 非搶占式調(diào)度算法:非搶占式輪轉(zhuǎn)調(diào)度算法、非搶占式優(yōu)先調(diào)度算法。2. 搶占式調(diào)度算法:基于時鐘中斷的搶占式優(yōu)先權(quán)調(diào)度算法、立即搶占的優(yōu)先權(quán)調(diào)度算法。3.4.3常用的幾種實時調(diào)度算法1. 最早截止時間優(yōu)先即EDF(earliest deadline first)算法:非搶占式調(diào)度算法用于非周期實時任務(wù)、搶占式調(diào)度方式用于周期實時任務(wù)2. 最低松弛度優(yōu)先LLF(least laxity first)算法3.5產(chǎn)生死鎖的原因和必要條件1. 死鎖:是指多個進(jìn)程在運(yùn)行過程中因爭奪系統(tǒng)資源而造成的一種僵局,當(dāng)進(jìn)程處于這種僵持狀態(tài)時,若無外力作用,他們都將無法再向前推進(jìn)。3.5.1產(chǎn)生死鎖的原因(競爭資源、進(jìn)程間推進(jìn)順序非法)1. 競爭資源引起進(jìn)程死鎖(1) 可剝奪和非剝奪性資源(2) 競爭非剝奪性資源(3) 競爭臨時性資源2. 進(jìn)程推進(jìn)順序不當(dāng)引起死鎖3.5.2產(chǎn)生死鎖的必要條件1. 互斥條件:指進(jìn)程對所分配到的資源進(jìn)行排他性使用,即在一段時間內(nèi)某資源只由一個進(jìn)程占用。如果此時還有其他進(jìn)程請求該資源,則請求者只能等待,直至占有該資源的進(jìn)程用畢釋放。2. 請求和保持條件:指進(jìn)程已經(jīng)保持了至少一個資源,但又提出了新的資源請求,而該資源有已被其他進(jìn)程占有,此時請求進(jìn)程阻塞,但又對自己已獲得的其他資源保持不放。3. 不剝奪條件:指進(jìn)程已獲得的資源,在未使用完之前,不能被剝奪,只能在使用完時由自己釋放。4. 環(huán)路等待條件: 3.5.3處理死鎖的基本方法(1) 預(yù)防死鎖。較易實現(xiàn),但會導(dǎo)致系統(tǒng)資源利用率和系統(tǒng)吞吐量降低。(2) 避免死鎖。只需事先施加較弱的限制條件,便可獲得較高的資源利用率和系統(tǒng)吞吐量。(3) 檢測死鎖。(4) 解除死鎖。與檢測死鎖相配套的一種措施。3.6預(yù)防死鎖的方法3.6.1預(yù)防死鎖1. 摒棄“請求和保持”條件2. 摒棄“不剝奪”條件3. 摒棄“環(huán)路等待”條件4. 環(huán)路等待條件嚴(yán)重問題:(1) 為系統(tǒng)中各類資源所分配的序號必須相對穩(wěn)定,這就限制了新類型設(shè)備的增加。(2) 盡管在為資源的類型分配序號時,已經(jīng)考慮到大多數(shù)作業(yè)在實際使用這些資源時的順序,但也經(jīng)常會發(fā)生這種情況:即作業(yè)(進(jìn)程)使用各類資源的順序與系統(tǒng)規(guī)定的順序不同,造成對資源的浪費(fèi)。(3) 為方便用戶,系統(tǒng)對用戶在編程時所施加的限制條件應(yīng)盡量少。然而這種按規(guī)定次序申請的方法,必然會限制用戶簡單、自主的編程。3.6.2系統(tǒng)安全狀態(tài)1. 安全狀態(tài):是指系統(tǒng)能按某種進(jìn)程順序,來為每個進(jìn)程Pi分配其所需資源,直至滿足每個進(jìn)程對資源的最大需求,使每個進(jìn)程都可順利地完成。如果系統(tǒng)無法找到這樣一個安全序列,則稱系統(tǒng)處于不安全狀態(tài)。2. 銀行家算法之例:假定系統(tǒng)中有五個進(jìn)程P0, P1, P2, P3, P4和三類資源A, B, C,各種資源的數(shù)量分別為10、5、7,在T0時刻的資源分配情況如圖 3-15 所示。圖 3-15 T0時刻的資源分配表(1) T0時刻的安全性: 圖 3-16 T0時刻的安全序列(2) P1請求資源:P1發(fā)出請求向量Request1(1,0,2),系統(tǒng)按銀行家算法進(jìn)行檢查:a) Request1(1, 0, 2)Need1(1, 2, 2)b) Request1(1, 0, 2)Available1(3, 3, 2)c) 系統(tǒng)先假定可為P1分配資源,并修改Available, Allocation1和Need1向量,由此形成的資源變化情況如圖 3-15 中的圓括號所示。d) 再利用安全性算法檢查此時系統(tǒng)是否安全。圖 3-17 P1申請資源時的安全性檢查 (3) P4請求資源:P4發(fā)出請求向量Request4(3,3,0),系統(tǒng)按銀行家算法進(jìn)行檢查:a) Request4(3, 3, 0)Need4(4, 3, 1);b) Request4(3, 3, 0) Available(2, 3, 0),讓P4等待。(4) P0請求資源:P0發(fā)出請求向量Requst0(0,2,0),系統(tǒng)按銀行家算法進(jìn)行檢查:a) Request0(0, 2, 0)Need0(7, 4, 3);b) Request0(0, 2, 0)Available(2, 3, 0);c) 系統(tǒng)暫時先假定可為P0分配資源,并修改有關(guān)數(shù)據(jù),如圖 3-18 所示。圖 3-18 為P0分配資源后的有關(guān)資源數(shù)據(jù)(5) 進(jìn)行安全性檢查:可用資源Available(2,1,0)已不能滿足任何進(jìn)程的需要,故系統(tǒng)進(jìn)入不安全狀態(tài),此時系統(tǒng)不分配資源。第四章 存儲器管理4.3 連續(xù)分配方式1. 單一連續(xù)分配2. 固定分區(qū)分配3. 動態(tài)分區(qū)分配4. 伙伴系統(tǒng)5. 哈希算法6. 可重定位分區(qū)分配7. 對換4.3.3 動態(tài)分區(qū)分配1. 首次適應(yīng)算法2. 循環(huán)首次適應(yīng)算法3. 最佳適應(yīng)算法4. 最壞適應(yīng)算法5. 快速適應(yīng)算法內(nèi)存分配流程4.4 基本分頁存儲器管理方式1. 分頁和分段的概念:分段是信息的邏輯單位由原程序的邏輯結(jié)構(gòu)及含義所決定,是用戶可見的,段長由用戶根據(jù)需要來確定,段起始地址可從任何主存地址開始。在分段方式中,源程序經(jīng)鏈接裝配后仍保持二維結(jié)構(gòu),引入目的是滿足用戶模塊化程序設(shè)計的需要。 分頁是信息的物理單位與源程序的邏輯結(jié)構(gòu)無關(guān),是用戶不可見的,頁長由系統(tǒng)確定,頁面只能從頁大小的整數(shù)倍地址開始。在分頁方式中,源程序經(jīng)鏈接裝配后變成一維結(jié)構(gòu),引入目的是實現(xiàn)離散分配并提高主存利用率。2. 區(qū)別和聯(lián)系:(1) 頁是信息的物理單位,分頁是為實現(xiàn)離散分配方式,以消減內(nèi)存的外零頭, 提高內(nèi)存的利用率?;蛘哒f, 分頁僅僅是由于系統(tǒng)管理的需要而不是用戶的需要。段則是信息的邏輯單位,它含有一組其意義相對完整的信息。 分段的目的是為了能更好地滿足用戶的需要。(2) 頁的大小固定且由系統(tǒng)決定,由系統(tǒng)把邏輯地址劃分為頁號和頁內(nèi)地址兩部分,是由機(jī)器硬件實現(xiàn)的,因而在系統(tǒng)中只能有一種大小的頁面;而段的長度卻不固定, 決定于用戶所編寫的程序,通常由編譯程序在對源程序進(jìn)行編譯時,根據(jù)信息的性質(zhì)來劃分。(3) 分頁的作業(yè)地址空間是一維的,即單一的線性地址空間,程序員只需利用一個記憶符,即可表示一個地址; 而分段的作業(yè)地址空間則是二維的,程序員在標(biāo)識一個地址時,既需給出段名, 又需給出段內(nèi)地址。 4.4.3 兩級和多級頁表兩級頁表結(jié)構(gòu)圖 4-15 具有兩級頁表的地址變換機(jī)構(gòu) 4.6 虛擬存儲器的基本概念4.6.1引入1. 定義:是指具有請求調(diào)入功能和置換功能,能從邏輯上對內(nèi)存容量加以擴(kuò)充的一種存儲器系統(tǒng)。其邏輯容量由內(nèi)存容量和外存容量之和決定,其運(yùn)行速度接近于內(nèi)存速度,而每位的成本卻又接近與外存。4.6.2 實現(xiàn)方法1. 分頁請求系統(tǒng)1) 硬件支持:a) 請求分頁的頁表機(jī)制,他是在純分頁的頁表機(jī)制上增加若干項而形成的,作為請求分頁的數(shù)據(jù)結(jié)構(gòu);b) 缺頁中斷機(jī)構(gòu),即每當(dāng)用戶程序要訪問的頁面尚未調(diào)入內(nèi)存時,便產(chǎn)生一缺頁中斷,以請求OS將所缺的頁調(diào)入內(nèi)存;c) 地址變換機(jī)構(gòu),它同樣是在純分頁地址變換機(jī)構(gòu)的基礎(chǔ)上發(fā)展形成的。2) 實現(xiàn)請求分頁的軟件:這里包括有用于實現(xiàn)請求調(diào)頁的軟件和實現(xiàn)頁面置換的軟件。它們在硬件的支持下,將程序正在運(yùn)行時所需的頁面(尚未在內(nèi)存中的)調(diào)入內(nèi)存,再將內(nèi)存中暫時不用的頁面從內(nèi)存中置換到磁盤上。2. 請求分段系統(tǒng):1) 請求分段的段表機(jī)制2) 缺段中斷機(jī)構(gòu)3) 地址變換機(jī)構(gòu)4.6.3 虛擬存儲器的特征1. 多次性:是指一個作業(yè)被分成多次調(diào)入內(nèi)存運(yùn)行,亦即在作業(yè)運(yùn)行時沒有必要將其余全部裝入,只需將當(dāng)前要運(yùn)行的那部分程序和數(shù)據(jù)裝入內(nèi)存即可;以后每當(dāng)要運(yùn)到尚未調(diào)入的那部分程序時,再將它調(diào)入。多次性是虛擬存儲器最重要的特征,任何其他的存儲器管理方式都不具有這一特征。因此,我們以為可以認(rèn)為虛擬存儲器是具有多次性特征的存儲器系統(tǒng)。2. 對換性:是指允許在作業(yè)的運(yùn)行過程中進(jìn)行換進(jìn)、換出,亦即,在進(jìn)程運(yùn)行期間,允許將那些暫不使用的程序和數(shù)據(jù),從內(nèi)存調(diào)至外存的對換區(qū)(換出),待以后需要時再將他們從外存調(diào)至內(nèi)存(換進(jìn)),甚至還允許將暫時不運(yùn)行的進(jìn)程調(diào)至外存,待他們重又具備運(yùn)行條件時再調(diào)入內(nèi)存。換進(jìn)和換出能有效地提高內(nèi)存利用率。3. 虛擬性:是指能夠從邏輯上擴(kuò)充內(nèi)存容量,是用戶所看到的內(nèi)存容量遠(yuǎn)大于實際內(nèi)存容量。這是虛擬存儲器所表現(xiàn)出來的最重要的特征,也是實現(xiàn)虛擬存儲器的最重要目標(biāo)。4.8頁面置換算法4.8.1 最佳置換算法和先進(jìn)先出置換算法1. 最佳置換算法OPT假定系統(tǒng)為某進(jìn)程分配了三個物理塊, 并考慮有以下的頁面號引用串:7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1 進(jìn)程運(yùn)行時, 先將7,0,1三個頁面裝入內(nèi)存。 以后, 當(dāng)進(jìn)程要訪問頁面2時, 將會產(chǎn)生缺頁中斷。此時OS根據(jù)最佳置換算法, 將選擇頁面7予以淘汰。4這是因為頁面0將作為第5個被訪問的頁面,頁面1是第14個被訪問的頁面,而頁面7則要在第18此頁面訪問時才需調(diào)入。下次訪問頁面0時,因它已在內(nèi)存而不必產(chǎn)生缺頁中斷。當(dāng)進(jìn)程訪問頁面3時,又將引起頁面1被淘汰;因為,它在現(xiàn)有的1,2,0三個頁面中,將是以后最晚才被訪問的。 圖 4-25 利用最佳頁面置換算法時的置換圖4.8.2 最近最久未使用置換算法 LRU最近最久未使用的頁面置換算法,是根據(jù)頁面調(diào)入內(nèi)存后的使用情況進(jìn)行決策的。由于無法預(yù)測個頁面將來的使用情況,只能利用“最近的過去”作為“最近的將來”的近似,因此,LRU置換算法是選擇最近最久未使用的頁面予以淘汰。該算法賦予每個頁面一個訪問字段,用來記錄一個頁面自上次被訪問以來所經(jīng)歷的時間t,當(dāng)需淘汰一個頁面時,選在現(xiàn)有頁面中其t值最大的,及最近最久未使用的頁面予以淘汰。第五章 設(shè)備管理5.2 I/O控制方式5.2.1 程序I/O方式又稱忙等待方式,即在處理機(jī)向控制器發(fā)出一條I/O指令啟動輸入設(shè)備輸入數(shù)據(jù)時,要同時把狀態(tài)寄存器中的忙/閑標(biāo)志busy置為1,然后便不斷的循環(huán)測試,直至busy=0。在程序I/O方式中,由于CPU的高速性和I/O設(shè)備的低速性,只是CPU的絕大部分時間都處于等待I/O設(shè)備完成數(shù)據(jù)I/O的循環(huán)測試中,造成對CPU的極大浪費(fèi)。在該方式中,CPU之所以要不斷測試I/O設(shè)備的狀態(tài),就是因為在CPU中無中斷機(jī)構(gòu),使I/O設(shè)備無法向CPU報告它已完成了一個字符的輸入操作。5.2.2 中斷驅(qū)動I/O控制方式5.2.3 直接存儲器訪問(DMA)I/O控制方式1. 特點:(1) 數(shù)據(jù)傳輸?shù)幕締挝皇菙?shù)據(jù)塊,即在CPU和I/O設(shè)備之間,每次傳送至少一個數(shù)據(jù)塊;(2) 所傳送的數(shù)據(jù)是從設(shè)備直接送入內(nèi)存的,或者相反;(3) 僅在傳送一個或多個數(shù)據(jù)塊的開始和結(jié)束時,才需要CPU干預(yù),整塊數(shù)據(jù)的傳送師在控制器的控制下完成的。2. 組成:(1) 命令/狀態(tài)寄存器(CR);(2) 內(nèi)存地址寄存器(MAR);(3) 數(shù)據(jù)寄存器(DR);(4) 數(shù)據(jù)計數(shù)器(DC)。3. 工作過程:5.2.4 I/O通道控制方式1. 進(jìn)一步減少CPU的干預(yù),即把對一個數(shù)據(jù)塊的讀或?qū)憺閱挝坏母深A(yù)減少為對一組數(shù)據(jù)塊的讀或?qū)懠坝嘘P(guān)的控制和管理為單位的干預(yù)。同時又可實現(xiàn)CPU、通道和I/O設(shè)備三者的并行操作,提高整個系統(tǒng)資源利用率。2. 通道指令:操作碼、內(nèi)存地址、計數(shù)、通道程序結(jié)束位P、記錄結(jié)束標(biāo)志R。5.4 I/O軟件5.4.1 I/O軟件的設(shè)計目標(biāo)和原則1. 與具體設(shè)備無關(guān)2. 統(tǒng)一命名3. 對錯誤的處理4. 緩沖技術(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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/IEC 17040:2005 AR Conformity assessment - General requirements for peer assessment of conformity assessment bodies and accreditation bodies
- 2025至2030中國皮卡通行證行業(yè)深度研究及發(fā)展前景投資評估分析
- 2025至2030中國男性不育行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報告
- 2025至2030中國電視媒體行業(yè)發(fā)展研究與產(chǎn)業(yè)戰(zhàn)略規(guī)劃分析評估報告
- 2025至2030中國電動調(diào)節(jié)儀表行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報告
- 2025至2030中國生豬養(yǎng)殖行業(yè)市場發(fā)展分析及投資發(fā)展戰(zhàn)略前景預(yù)測報告
- 2025至2030中國牲豬飼料行業(yè)發(fā)展研究與產(chǎn)業(yè)戰(zhàn)略規(guī)劃分析評估報告
- 工廠秋季消防培訓(xùn)
- 世界環(huán)保日培訓(xùn)課件
- 從國家層面探討兒童的心理健康教育與疏導(dǎo)機(jī)制
- 急性胃腸炎的診斷與治療
- UL4703標(biāo)準(zhǔn)中文版-2020光伏線UL中文版標(biāo)準(zhǔn)
- 酒店前臺案例分析
- 消防應(yīng)急通信培訓(xùn)
- 消防應(yīng)急通信保障
- XX小學(xué)預(yù)防未成年人違法犯罪工作制度
- 火災(zāi)自動報警系統(tǒng)查驗報告
- 業(yè)務(wù)傭金提成協(xié)議書模板
- GB/T 29469-2024潔凈室及相關(guān)受控環(huán)境性能及合理性評價
- 國家開放大學(xué)《城市管理學(xué)》作業(yè)-“城市病”表現(xiàn)及其治理
- 甄嬛傳電子版劇本第01-10集
評論
0/150
提交評論