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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選優(yōu)質文檔-傾情為你奉上第一章 操作系統(tǒng)引論(1)什么是操作系統(tǒng)(參見書中定義)及其主要功能 定義:有效地控制和管理計算機軟硬件資源,合理地組織計算機工作流程,以提高資源利用率,并為用戶提供強有力的使用功能和靈活方便的使用環(huán)境的程序集合。功能: 1.處理機管理功能2.存儲管理3.設備管理4.文件管理5.提供用戶接口,方便用戶使用OS (2)操作系統(tǒng)的基本特征(并發(fā)、共享、虛擬、異步性)(解釋見王道書P2-3)并發(fā):指在計算機系統(tǒng)中同時存在著多道運行的程序(進程), 宏觀上:多道程序同時在執(zhí)行,微觀上:任何時刻只有一道程序在執(zhí)行,即微觀上多道程序在CPU上輪流(交替)執(zhí)行(單機)共享:系統(tǒng)中的

2、資源可供內存中多個并發(fā)執(zhí)行的進程或線程共同使用。虛擬:把一個物理實體變?yōu)槿舾蓚€邏輯上的對應物。異步性:在多道程序環(huán)境下,某個作業(yè)何時執(zhí)行,何時暫停,執(zhí)行時間是不確定的,但只要OS有完善的進程同步機制,且運行環(huán)境相同,輸入相同,結果相同。進程以人們不可預知的速度向前推。(3)虛擬機 計算機在覆蓋了OS軟件后,從用戶角度來看,操作系統(tǒng)提供的功能,特別是系統(tǒng)調用等是擴大了機器指令系統(tǒng),增強了處理機功能,提供了一臺功能更強,使用更方便的處理機,實現(xiàn)了處理機性能上的擴充,為了區(qū)別于真實的物理處理機,稱它為虛擬機 (4)并行和并發(fā) 并發(fā):兩個或多個事件在同一段時間間隔內發(fā)生; 并行:兩個或多個事件在同一時

3、刻發(fā)生(需硬件支持)(5)手工操作階段->聯(lián)機輸入輸出->脫機輸入輸出(P45)脫機I/O:程序和數(shù)據(jù)的輸入和輸出都是在外圍處理機的控制下完成的,脫離主機的情況下進行。優(yōu)點:減少CPU空閑時間,提高速度。聯(lián)機I/O:在主機的直接控制下進行輸入/輸出的方式手工操作缺點:用戶獨占全機(資源浪費);CPU等待人工操作:裝入時、取走時CPU及內存等資源是空閑。CPU即負責計算,又要負責傳輸。(即屬于單控制方式)(6)單道批處理系統(tǒng)和多道批處理系統(tǒng)以及多道程序設計技術單道批處理系統(tǒng):計算機自動的一個作業(yè)一個作業(yè)地進行處理,直到磁盤上的所有作業(yè)全部完成。由于系統(tǒng)對作業(yè)的處理是成批進行的,且內存

4、中始終只保持一道作業(yè)。 特征:自動性,順序性,單道性 缺點:對某些作業(yè)來說,當它發(fā)出輸入/輸出請求后,CPU必須等待I/O的完成,特別因為I/O設備的低速性,從而使機器的利用率很低。多道批處理系統(tǒng):主存中同時放多道作業(yè),若作業(yè)搭配適當,即計算量大的與I/O大的搭配,則一道程序在I/O時,主機可去處理另一道作業(yè),從而能充分利用CPU及其它資源。 特征:1、調度性2、無序性3、多道性優(yōu)點:1、資源的利用率高2、系統(tǒng)吞吐量大缺點:1、平均周轉周期長2、無交互能力多道程序設計技術:同時把多個作業(yè)(程序)放入內存并允許它們交替執(zhí)行,共享系統(tǒng)中各種資源,當一道程序程序由于某種原因暫停執(zhí)行時,CPU可以立即

5、轉去執(zhí)行另一道程序。好處:提高利用率;提高內存和設備利用率;增加系統(tǒng)吞吐量。(7)分時&實時操作系統(tǒng)分時系統(tǒng)的特征: 人機交互性好、共享主機(多路性、同時性)、用戶獨立性、及時性實時操作系統(tǒng):指系統(tǒng)能及時(或即時)響應外部事件的請求,并控制所有實時任務協(xié)調一致地運行。特征:實時性和可靠性;多路性、獨立性、交互性三種基本的操作系統(tǒng):批處理操作系統(tǒng)、分時操作系統(tǒng)和實時操作系統(tǒng)通用操作系統(tǒng):如果一個操作系統(tǒng)兼有批處理、分時和實時系統(tǒng)三者或二者的功能 ,則稱該操作系統(tǒng)為通用操作系統(tǒng)。第二章 進程管理· 21重點內容1)前趨圖及其描述前趨圖:一個有向無環(huán)圖,描述進程之間執(zhí)行的前后關系。

6、2)程序并發(fā)執(zhí)行的條件以及程序并發(fā)執(zhí)行的特征條件:不存在前趨關系特征:間斷性:具有“走走停停”的規(guī)律,原因:缺乏共享資源,可能要等。幾個程序合作完成一項任務時的相互間的制約。失去封閉性:程序并發(fā)執(zhí)行,共享系統(tǒng)中的各個資源,資源的狀態(tài)由多個程序來改變,致使程序運行失去封閉性。不可再現(xiàn)性:程序在并發(fā)執(zhí)行由于失去了封閉性所以失去了可再現(xiàn)性。3)進程的定義:可并發(fā)執(zhí)行的程序再一個數(shù)據(jù)集合上的運行過程。書上:進程實體的運行過程,是系統(tǒng)進行資源分配和調度的一個獨立單位。特性:結構特征:程序段數(shù)據(jù)段動態(tài)性:程序靜態(tài),進程實體有生命期并發(fā)性:進程可并發(fā),程序不可獨立性:獨立運行獨立分配資源獨立接受調度的基本單

7、位異步性:各自獨立不可預知的速度向前推進,異步方式運行· 4)進程與程序的比較· 進程和程序是兩個截然不同的概念。進程具有五個基本特征,而程序則不具備這些特征。 · (1)動態(tài)性 · 進程是程序的一次執(zhí)行過程,因此,屬于動態(tài)概念,是進程的最重要的特征。動態(tài)性還表現(xiàn)為:“它由創(chuàng)建而產生,由調度而執(zhí)行,因得不到資源而暫停執(zhí)行,以及由撤消而消亡”??梢?進程有一定的生命期。而程序只是一組有序指令的集合,并長期存放在某種介質上,本身并無運動的含義,因此,程序是個靜態(tài)實體。另外,進程和程序不是一一對應的,如幾個進程可同時執(zhí)行一個程序。· (2)并發(fā)性&#

8、183; 這是指多個進程實體,同存于內存中,能在一段時間內同時運行。并發(fā)性是進程的第二個最重要特征。引人進程的目的也正是為了使其程序能并發(fā)執(zhí)行,而程序是不能并發(fā)執(zhí)行的。 · (3)獨立性 · 這是指進程實體是一個能獨立運行的基本單位,同時也是系統(tǒng)中獨立獲得資源和獨立調度的基本單位。凡未建立進程的程序,都不能作為一個獨立的單位參加運行。 · (4)異步性 · 這是指進程按各自獨立的、不可預知的速度向前推進;而程序無此特征。 · (5)結構特征 · 從結構上看,進程實體是由程序段、數(shù)據(jù)段及進程控制塊三部分組成,而程序不具有進程控制塊的概念

9、。 5)進程的狀態(tài)及其轉換(包括基本的狀態(tài)轉換和帶有掛起狀態(tài)的轉換),PCB及其作用 :記錄所需的、用于描述進程當前情況以及控制進程運行的全部信息。作用:使一個在多道程序環(huán)境下不能獨立運行的程序(含數(shù)據(jù)),成為一個獨立運行的基本單位,一個能與其他進程并發(fā)執(zhí)行的進程。(根據(jù)來對并發(fā)執(zhí)行的進程進行控制和管理。)(每種狀態(tài)的定義及轉換條件見王道書P25-27)引起掛起狀態(tài)的原因:終端用戶的需要:終端用戶在自己程序運行中發(fā)現(xiàn)問題要求使正在 執(zhí)行的進程暫停執(zhí)行而使進程處于掛起狀態(tài)。父進程的需要:父進程為了考查和修改某個子進程,或者協(xié)調各子進 程間的活動,需要將該子進程掛起。操作系統(tǒng)的需要:操作系統(tǒng)為了檢

10、查運行中的資源使用情況或進行記 帳,而將某些進程掛起。對換的需要:為了提高內存的利用率,而將內存中某些進程掛起,以 調進其它程序運行。負荷調節(jié)的需要:由于工作負荷較重,而將一些不重要的進程掛起, 以保證系統(tǒng)能正常運行(實時操作系統(tǒng))6)進程同步主要任務:對多個相關進程在執(zhí)行次序上進行協(xié)調,以使并發(fā)執(zhí)行的各個進程能有效地共享資源和相互合作,從而使程序的執(zhí)行具有可再現(xiàn)性。7)臨界資源和臨界區(qū)臨界資源:每次只能由一個進程訪問的資源臨界區(qū):進程重訪問臨界資源的那段代碼8)同步機制應該遵循的原則空閑讓進忙則等待有限等待讓權等待9)信號量機制和P、 V操作信號量是表示資源的物理量,并且與隊列有關,其值只能

11、由P、 V操作原語改變,系統(tǒng)可以利用信號量對進程進行控制和管理,即控制進程對臨界資源或公共變量的訪問,以實現(xiàn)進程的同步與互斥。10)記錄型信號量的物理意義S.Value >0 表示某類可用資源的數(shù)量 <=0表示其絕對值為因請求該資源而被阻塞的進程數(shù)S.Value的初值為1時,表示只允許一個進程訪問臨界資源,此時的信號量轉化為互斥信號量。11)信號量的應用:進程互斥、前驅關系互斥 使諸進程互斥地進入臨界區(qū)同步 使相互合作的進程協(xié)調運行前趨關系 處理程序或語句間的前趨關系12)經典同步問題讀者寫者、生產者消費者13)進程通信的類型共享存儲器系統(tǒng):共享數(shù)據(jù)結構、共享存儲區(qū)消息傳遞系統(tǒng):直

12、接通信、間接通信管道通信14)消息緩沖隊列通信機制15)線程的概念及其與進程的異同· 線程是進程內的一個相對獨立的可執(zhí)行單元,是操作系統(tǒng)中的基本調度單位,一個線程與同屬于一個進程的其它線程共享進程擁有的全部資源,其也具有生命周期。· 線程與進程的異同主要體現(xiàn)在以下一個方面:· (1)調度,線程是調度的單位,進程是資源分配的單位,并且在同一個進程中的線程切換不會引起進程的切換,在不同進程之間的線程切換則會引起進程的切換,· (2)資源擁有,進程是資源的擁有者,而線程共享進程的資源,本身除了運行需要的少量資源外不擁有資源。· (3)并發(fā)性,引入線程

13、后,不僅進程之間可以并發(fā)執(zhí)行,進程內的各線程之間也可以并發(fā)執(zhí)行,從而提高了OS的并發(fā)程度,也就提高了程序的執(zhí)行效率。· (4)系統(tǒng)開銷,撤銷進程的開銷比撤銷線程的開銷要大得多。· 另外,線程之間同步與通信可以在進程內部實現(xiàn),可以不需要OS的干預。第三章 處理機調度與死鎖1)高級調度、中級調度和低級調度(作業(yè)調度、進程調度和對換)高級調度:又稱為作業(yè)調度或長程調度(Long-team Scheduling),決定把外存上處于后備隊列中的哪些作業(yè)調入內存,并為它們創(chuàng)建進程、分配必要的資源,然后,再將新創(chuàng)建的進程排在就緒隊列上,準備執(zhí)行。作業(yè)調度也稱為接納調度(Admission

14、 Scheduling)。適合批處理系統(tǒng)。分時直接送入內存。中級調度:中級調度又稱為中程調度(Medium-Term Scheduling)目的: 為了提高內存的利用率和系統(tǒng)吞吐量。中級調度實際上就是存儲器管理中的對換功能低級調度:低級調度通常又稱為進程調度、短程調度(Short-Term Scheduling)。它決定就緒隊列中的哪個進程將獲得處理機、然后由分派程序(Dispatcher)執(zhí)行把處理機分配給該進程的操作。2)基本調度算法(FCFS、SJF、高優(yōu)先權優(yōu)先和響應比高者優(yōu)先)3)產生死鎖的的必要條件原因:競爭資源引起進程死鎖;進程推進順序不當必要條件:互斥條件;請求和保持條件;不剝

15、奪條件;環(huán)路等待條件。4)處理死鎖的基本方法(預防、避免、檢測和解除)預防:實現(xiàn)采取各種限制措施破換必要條件。避免:在運行過程中,防止系統(tǒng)進入不安全狀態(tài)。檢測:允許發(fā)生死鎖。通過檢測機構及時地檢測出死鎖的發(fā)生。精確鎖定,清除死鎖。解除:撤銷或掛起一些進程。 5)安全序列和系統(tǒng)安全狀態(tài)· 系統(tǒng)安全狀態(tài):是指在某時刻,系統(tǒng)能按某種進程順序,如<P1,P2,P3,Pn>來為每個進程進行資源分配,并且使每個進程都能得到其所需資源直至順利運行完畢,則把此時的系統(tǒng)狀態(tài)稱為安全狀態(tài),此時的進程序列就稱為安全序列。6)銀行家算法7)資源分配圖及其簡化和死鎖定理為死鎖狀態(tài)的充分條件為:當?shù)?/p>

16、資源分配是不可完全簡化的。第四章 存儲器管理1. 源程序到可在內存中執(zhí)行的程序的三個步驟:編譯->鏈接->裝入· (1)絕對裝入方式· 指程序經編譯后產生的是絕對地址的目標代碼,運行這種程序時按照程序中指定的絕對地址裝入內存· (2)(靜態(tài))可重定位裝入方式· 指程序經編譯后產生的是以0開始的邏輯地址的目標代碼,在裝入這種目標代碼時,實際的物理內存地址與邏輯地址是不一致的,要進行目標程序中的指令和數(shù)據(jù)中地址修改,既重定位,而且這種重定位的地址變換是在程序裝入時一次完成。· (3)動態(tài)運行時裝入方式· 指裝入程序在把裝入模塊

17、裝入內存后并不立即進行相對地址到絕對地址的轉換,而是推遲到程序指令正真執(zhí)行時才進行。2.程序的鏈接方式· 鏈接程序的功能,是將經過編譯或匯編后所得到的一組目標模塊以及它們所需要的庫函數(shù),裝配成一個完整的裝入模塊。實現(xiàn)鏈接的方法有三種:靜態(tài)鏈接、裝入時動態(tài)鏈接和運行時動態(tài)鏈接。· 靜態(tài)鏈接:鏈接時,把各目標模塊的相對地址修改為統(tǒng)一的以0為始址的線性地址或多維地址空間,外部調用變?yōu)橄鄬Φ刂?#183; 裝入時動態(tài)鏈接:是在目標模塊裝入內存時,邊裝入邊鏈接,即在裝入一個目標模塊時若發(fā)生一個外部模塊調用事件,將引起裝入程序去查找相應的外部目標模塊,將其裝入內存并修改目標模塊中的相對

18、地址。· 運行時動態(tài)鏈接:指將運行程序的某些模塊推遲到執(zhí)行時才進行,在執(zhí)行過程中,當發(fā)現(xiàn)一個被調用模塊尚未裝入內存則立即由OS去找該模塊并裝入內存,然后將其鏈接到調用模塊上。4.內存連續(xù)分配方式· 單一連續(xù)分配(單用戶、單任務操作系統(tǒng))系統(tǒng)區(qū)、用戶區(qū)。優(yōu)點:簡單易行缺點:內存利用率低、利用率低、只支持單道程序運行,需等地址空間用戶區(qū),要用覆蓋技術。· 固定分區(qū)分配(可運行多道程序)內存固定劃分為若干固定大小的區(qū)域,分區(qū)可相同也可不同。占一區(qū),其余每分區(qū)裝一道作業(yè)。建立一張分區(qū)使用表,起始地址、大小、狀態(tài)。優(yōu)點:簡單易行(靜態(tài)重定位)不需硬件支持,用重定位裝配程序一

19、次修改地址,將作業(yè)裝入。缺點:內外零頭都有。· 動態(tài)分區(qū)分配可解決內零頭問題??臻e分區(qū)表或空閑分區(qū)鏈· 可重定位分區(qū)分配可解決外零頭問題方法:緊湊,移動內存中的作業(yè),使分散的小分區(qū)拼接成一個大分區(qū)。5.對換的概念及方法提高內存利用率的有效措施。概念:把內存中暫時不能運行的進程或者暫時不用的程序和數(shù)據(jù)調出到外存上,以便騰出足夠的內存空間,再把已具備運行條件的進程或進程所需要的程序和數(shù)據(jù)調入內存。方法:整體對換(進程對換)、部分對換(頁面對換、分段對換)外存分為文件區(qū)(離散存放)和對換區(qū)(連續(xù)存放)6.基本離散分配方法· (1)基本分頁方法· 頁面、物理塊、

20、地址結構、頁表頁面:進程的邏輯地址空間分成大小相等的片物理塊:內存空間分成與頁相同大小的物理塊(頁框),以塊為單位將進程中的若干頁分別裝入可以不相鄰接的塊中, (最后一頁裝不滿,形成碎片)。· 地址變換機構、快表快表:一個具有并行查詢能力的特殊高速緩沖存儲器,聯(lián)想存儲器。目的:為了提高地質變換速度作用:設置在地址變換機構中,用以存放當前訪問的那些頁表項。特點:查快表與頁表可以并行工作.快表是在訪問內存過程中動態(tài)形成,由硬件自動生成。在Intel 80486 CPU中有32個聯(lián)想寄存器,命中率約98%.· 兩級頁表· (2)基本分段方法· 為什么要分段滿足

21、用戶(程序員)在編程和使用上多方面的要求。方便編程、信息共享、信息保護、動態(tài)增長、動態(tài)鏈接。· 段、地址結構、段表段:作業(yè)的地址空間被劃分為若干個段,每個段定義了一組邏輯信息。每個段都從0開始編址,并采用一段連續(xù)的地址空間,各段長度可不等整個作業(yè)的地址空間是二維的,其邏輯地址由段號(段名)和段內地址所組成。段表:為能從物理內存中找出每個邏輯段所對應的位置,系統(tǒng)為每個進程建立的一張段映射表。· 段和頁的主要區(qū)別· (1)頁是信息的物理單位,分頁是為實現(xiàn)離散分配方式,以消減內存外零頭,由機器硬件機械劃分,對用戶透明;段是信息的邏輯單位,含有一組意義相對完整的信息。分段

22、的目的是為了能更好地滿足用戶的需要,用戶“可見”、可控制。· (2)頁的大小固定且由系統(tǒng)確定;段的長度卻不固定,通常由編譯程序在對源程序進行編譯時,根據(jù)信息的性質來劃分。· (3)分頁的作業(yè)地址空間是一維的,分段的作業(yè)地址空間是二維的,程序員在標識一個地址時,既需給出段名,又需給出段內地址。· 段和頁的共享信息方式· (3)段頁式· 基本原理和地址變換過程原理:分段和分頁的結合。先將用戶程序分成若干個段,再把每個段分成若干個頁,并未每一個段賦予一個段名。分段方法分配虛存,分頁方法管理實存。7.虛擬存儲管理(以CPU時間和外存空間換取昂貴的內存空

23、間)· 了解局部性原理即在一較短時間內,程序的執(zhí)行僅局限于某個部分;相應地他所訪問的存儲空間也局限于某個區(qū)域。 大多數(shù)情況下順序執(zhí)行, 過程調用深度不超過,在一段時間內局限在這些過程范圍內。 循環(huán)結構,將多次執(zhí)行。 對數(shù)據(jù)結構的處理,局限于小的范圍內。還體現(xiàn)在兩個方面:時間局限性(不久再次執(zhí)行,原因:大量循環(huán))和空間局限性(附近也將被訪問,典型狀況:順序執(zhí)行)· 虛擬存儲器的定義(P126)具有請求調入功能和置換功能,能從邏輯上對內存容量加以擴充的一種存儲器系統(tǒng)。主要技術:部分裝入,部分對換· 請求分頁中的硬件支持 頁表機制,在頁表中加入請求分頁的數(shù)據(jù)結構。 缺頁

24、中斷機構。 地址變換機構。為實現(xiàn)請求調頁還須得到OS的支持。軟硬結合。· 各種頁面置換算法最佳置換算法優(yōu)點:可保證獲得最低的缺頁率。問題:無法實現(xiàn)作用:課利用該算法評價其他算法FIFO:優(yōu)點:實現(xiàn)簡單缺點:會淘汰頻繁重復被訪問的頁面。方法:為分配給進程的頁框先后次序建成一個先進先出隊列即可。LRU:· 例題:有人說,對換擴充了內存,因此對換也實現(xiàn)了虛擬內存,這句話是否正確,并說明理由。· 答:不正確,對換是指把內存中暫不能運行或暫不用的程序和數(shù)據(jù),換出到外存上,以騰出足夠的內存空間,把已具備運行條件的進程,或進程所需要的程序和數(shù)據(jù),換入內存。對換是提高內存利用率的

25、有效措施。· 而虛擬存儲器是基于把程序的一部分裝入內存便可以運行的原理,以離散內存分配方法為基礎,具有請求調入和置換功能,能從邏輯上對內存容量進行擴充的一種存儲器系統(tǒng)。· 對換雖然提高了內存的利用率,但對換技術,并沒有實現(xiàn)程序部分裝入就能運行,也沒有相應請求調入和置換功能支持,是不能實現(xiàn)虛擬存儲器的。第五章 設備管理1.I/O系統(tǒng)(了解)直接用于I/O和存儲信息的設備:設備控制器和I/O通道由這些設備以及相應的總線構成了I/O系統(tǒng)兩類:微機I/O系統(tǒng)和主機I/O系統(tǒng)微機:總線I/O系統(tǒng)結構,CPU和內存直接連接到總線上,I/O設備通過設備控制器連接到總線。Cpu與設備控制器

26、通信,并通過設備控制器去控制相應設備。ISA,EISA,VESA,PCI主機:I/O通道代替CPU與設備控制器進行通信· 2.主要I/O控制方式程序I/O方式(忙則等待,使CPU絕大多時間都在等待,無中斷,不斷測試)中斷驅動I/O控制方式(以字節(jié)進行干預,效率低)直接存儲器訪問DMA控制方式(基本單位是數(shù)據(jù)塊,從設備直接到內存,開始和結束時需要CPU干預)一次讀一個塊,一次讀多個塊分別送到不同的內存,需要CPU發(fā)出多條I/O指令進行多次中斷I/O通道控制方式(進一步減少CPU干涉,對一組數(shù)據(jù)塊的讀寫及相關控制和管理為單位的干預,實現(xiàn)CPU、通道、和I/O設備三者并行操作。)只需發(fā)一套

27、I/O指令,和所要執(zhí)行的通道程序首地址和要訪問的I/O設備,通道接到該指令后,通過執(zhí)行通道程序便可完成。3.緩沖管理· 工作方式相同類型的緩沖區(qū)鏈成隊列:空緩沖隊列emq,輸入隊列inq,輸出隊列outq。收容輸入、提取輸入、收容輸出、提取輸出四個工作緩沖區(qū)收容輸入:在輸入進程需要輸入數(shù)據(jù)時,調用getbuf(emq),從emq隊列的隊首摘下一空緩沖區(qū),把它作為hin,輸入數(shù)據(jù)到hin,裝滿后,調用putbuf(inq,hin),將其掛入imq隊尾。提取輸入:當計算進程需要輸入數(shù)據(jù)時,調用getbuf(inq),從inq隊列的隊首摘下一緩沖區(qū),把他作為sin,提取數(shù)據(jù),用完后,調用p

28、utbuf(emq,sin),將其掛入emq隊尾。收容輸出:當計算進程需要輸出數(shù)據(jù)時,調用getbuf(emq),從emq隊列的隊首摘下一空緩沖區(qū),把它作為hout,輸入數(shù)據(jù)到hout,裝滿后,調用putbuf(outq,hout),將其掛入outq隊尾提取輸出:由輸出進程調用getbuf(outq),從outq隊列的隊首摘下一緩沖區(qū),把它作為sout,提取數(shù)據(jù),用完后,調用putbuf(emq,sout),將其掛入emq隊尾· 緩沖的使用(互斥與同步)為每一個隊列設置一個互斥信號量MS(type),為每個緩沖隊列設置一個資源信號量RS(type)Procedure GetBuf(t

29、ype)BeginWait(RS(type);Wait(MS(type)Buffer=takebuf(type);Signal(MS(type):EndProcedure PutBuf(type,number)BeginWait(MS(type)AddBuf(type,number);Signal(MS(type);Signal(RS(type);End4.設備分配· 設備分配中的數(shù)據(jù)結構及其關系設備控制表DCT 每一個設備一張,用于記錄本設備情況控制器控制表COCT 為每一個控制器都設置了一張記錄本控制器情況的控制器控制表。通道控制表CHCT 每個通道都配有一張通道控制表系統(tǒng)設備表

30、SDT 系統(tǒng)范圍的數(shù)據(jù)結構,記錄了系統(tǒng)中全部設備的情況。每個設備占一個表目。關系:SDT->DCT->COCT->CHCT· 設備獨立性的概念(P163)也稱設備無關性,應用程序獨立于具體使用的物理設備。邏輯設備和物理設備,在應用程序中,使用邏輯設備名稱來請求使用某類設備;在系統(tǒng)實際執(zhí)行時,使用物理設備名稱。好處:設備分配時的靈活性;易于實現(xiàn)I/O重定向。· 虛擬設備與SPOOLing系統(tǒng)· 虛擬設備:通過對設備的分時使用,使得一個物理設備虛擬為多個邏輯上的對應物,便于用戶共享使用。· SPOOLing系統(tǒng):將一臺獨占設備改造成共享設備

31、的一種行之有效的技術。一道程序(進程)來模擬脫機輸入時的外圍控制機功能:把低速I/O設備上的數(shù)據(jù)傳送到高速磁盤上。另一道程序來模擬脫機輸出時的外圍控制機的功能:把數(shù)據(jù)從磁盤傳送到低速設備上。是在主機的直接控制下,實現(xiàn)脫機輸入輸出功能,此時外圍操作和CPU對數(shù)據(jù)的處理同時進行,把這種在聯(lián)機情況下實現(xiàn)的同時外圍操作稱為SPOOLing,或者為假脫機操作。組成:1. 輸入井,輸出井。在磁盤上開辟兩大存儲空間。輸入井模擬脫機輸入時的磁盤,用于收容I/O設備輸入的數(shù)據(jù)。輸出井模擬脫機輸出時的磁盤,用于收容用戶程序輸出的數(shù)據(jù)。2. 輸入緩沖區(qū)和輸出緩沖區(qū)。在內存上開辟兩個大的存儲空間。輸入緩沖區(qū)用于暫存由

32、輸入設備送來的數(shù)據(jù),再傳送給輸入井。輸出緩沖區(qū)用于暫存從輸出井來的數(shù)據(jù),再傳給輸出設備。3. 輸入進程SPi和輸出進程SPo原理:SPi模擬脫機輸入時的外圍控制機,將用戶要求的數(shù)據(jù)從輸入機,通過輸入緩沖區(qū)到輸入井。當CPU需要輸入數(shù)據(jù)的時候,直接從輸入井讀入內存。SPo模擬脫機輸出時的外圍控制機,將用戶要求輸出的數(shù)據(jù)先從內存送到輸出井,再將輸出井中的數(shù)據(jù)經過輸出緩沖去送至輸出設備。特點:提高I/O速度;將獨占設備改為共享設備;實現(xiàn)了虛擬設備的功能5.設備驅動程序和中斷處理程序的處理過程是I/O進程與設備控制器之間的通信程序,常以進程形式存在,簡稱設備驅動進程。主要任務:接受上層軟件發(fā)來的抽象要

33、求,把它轉換為具體要求后發(fā)送給設備控制器,啟動設備去執(zhí)行。也要將設備控制器發(fā)來的信號傳給上層軟件。用戶進程獨立于設備的軟件設備驅動程序中斷處理程序硬件中斷處理程序處理過程1. 喚醒被阻塞的驅動程序進程2. 保護被中斷進程的CPU環(huán)境3. 分析中斷原因,轉入相應的設備中斷處理程序。4. 進行中斷處理5. 恢復被中斷進程的現(xiàn)場6. 返回被中斷的進程,繼續(xù)執(zhí)行· 6.磁盤管理· 了解磁盤的基本組成· 磁盤訪問時間的組成尋道時間Ts、旋轉延遲時間Tr、傳輸時間Tt· 磁盤調度算法FCFS(優(yōu)點:簡單公平。缺點:效率不高)相鄰兩次請求可能造成最內到最外的柱面尋道,

34、是磁頭反復移動,增加了服務時間,對機械不利SSTF(易造成饑餓。優(yōu)點:改善了磁盤平均服務時間。缺點:造成某些訪問請求長期等待得不到服務)SCAN(剛過即來,等待2T。優(yōu)點:克服了SSTF的缺點,既考慮了距離有考慮了方向)CSCAN(解決長期等待T+Smax)以上均易造成磁臂粘著(一個方向上請求的訪問過多)NStepScan和FScan解決了上述問題,將密度減小。· 磁盤性能優(yōu)化的方法· 磁盤高速緩存一組邏輯上屬于磁盤而物理上屬于內存中的盤塊。利用內存空間來暫時存放從磁盤中讀出的一系列盤塊中的信息。· 提前讀、延遲寫和優(yōu)化物理塊的分布提前讀:文件的順序訪問比較多延遲

35、寫:減少I/O次數(shù)· 虛擬盤(注意與磁盤高速緩存的區(qū)別)利用內存仿真磁盤區(qū)別:RAM:用戶控制,有專門的驅動程序,提供標準的磁盤操作。磁盤高速緩存:系統(tǒng)控制第六章 文件管理· 1.文件操作原則:對用戶是透明的。兩大類:一類是對文件自身的操作(creat,delete,read,copy,rename)另一類是對記錄的操作(檢索一個文件中的所有記錄或者單個記錄,插入、刪除、修改一個記錄)創(chuàng)建:分配必要的外存空間,在文件系統(tǒng)的目錄中,建立一個目錄項(記錄文件名及其在外存的地址等屬性)刪除:從目錄中找出目錄項,成為空項,然后回收文件所占用存儲空間讀文件:在系統(tǒng)調用中給出文件名和文

36、件被讀入的內存目標地址。查找目錄,找到指定目錄項,從中得到所在外存的位置,目錄項中還有一個指針用于對文件的讀寫。寫文件:在系統(tǒng)調用中給出文件名及文件在內存中的源地址。查找目錄,找到指定目錄項,再利用目錄中的寫指針進行寫。截斷:需要全部更新文件內容時,一是將此文件刪除,再重新創(chuàng)建一個新文件。二是截斷,將原有文件的長度設為0,或說放棄原有的文件內容。設置讀寫位置:用于設置文件讀寫指針的位置,以便每次讀寫文件時不是從起始端而是從所設位置開始進行??筛捻樞虼嫒殡S機存取。為什么要有文件的打開和關閉操作?答:OS對文件的操作大致分兩步:一是通過檢索目錄來找到指定文件的屬性和在外存的位置。二是對文件實施相

37、應的操作。當用戶對文件實施多次讀寫或者其他操作時,每次都要從檢索開始。為了避免多次重復地檢索目錄。引入打開這一操作。打開是指系統(tǒng)將指明文件的屬性(含位置)從外存拷貝到內存打開文件表中的一個表目中,并將該表目的編號(索引)返回給用戶,以后當用戶再要求對文件進行相應的操作時,便可利用系統(tǒng)所返回的索引號向系統(tǒng)提出操作請求。系統(tǒng)直接利用索引號到打開文件表中查找,從而避免對文件的字詞檢索。節(jié)省了大量檢索開銷,也顯著提高了對文件的操作速度。如果用戶已經不再需要對該文件實施相應的操作時,利用關閉系統(tǒng)調用來關閉此文件,OS將會把文件從打開文件表中的表目上刪掉。· 2.文件的邏輯結構從用戶的觀點出發(fā),所觀察到的文件組織形式,是用戶可以直接處理的數(shù)據(jù)及其結構,它獨立于物理特性,又稱為文件組織?;疽螅禾岣邫z索效率;便于修改;降低文件存儲費用。兩類:有結構文件(記錄構成)和無結構文件(字符流構成)有結構文件:定長記錄 變長記錄(兩種處理前每個記錄的長度都是可知的)組織方式:順序文件、索引文件(記錄為可變長度)、索順序文件(前兩種結合,為文件建立索引表,為每一組記錄中的第一個記錄設置一個表項)。數(shù)據(jù)結構、數(shù)據(jù)庫無結構文件

溫馨提示

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

評論

0/150

提交評論