版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第1 1章 引 論 第1 1章 引 論 1.1 操作系統(tǒng)的基本概念操作系統(tǒng)的基本概念1.2 操作系統(tǒng)的發(fā)展操作系統(tǒng)的發(fā)展1.3 操作系統(tǒng)的特征與功能操作系統(tǒng)的特征與功能1.4 操作系統(tǒng)的結(jié)構(gòu)設(shè)計操作系統(tǒng)的結(jié)構(gòu)設(shè)計第1 1章 引 論 1.1 操作系統(tǒng)的基本概念操作系統(tǒng)的基本概念 我們將未配置任何軟件的計算機稱為裸機,即由中央處理器(CPU)、存儲器、輸入/輸出(I/O)設(shè)備等硬件組成的計算機。裸機是無法充分發(fā)揮硬件性能的,不適合一般的用戶使用,只有配備了軟件以后,計算機才可以更好地完成對信息的存儲、檢索和處理等一系列工作。所以我們可以把計算機系統(tǒng)劃分為兩大部分:硬件和軟件。硬件是計算機系統(tǒng)的物質(zhì)
2、基礎(chǔ),它包括多種多樣的物理設(shè)備。而軟件可以分為應(yīng)用軟件和系統(tǒng)軟件。應(yīng)用軟件,例如字處理軟件Word、圖像處理軟件Photoshop、Web瀏覽器 IE、編譯軟件等,可以為用戶解決具體的問題。而系統(tǒng)軟件是指使計算機能夠工作的一些基礎(chǔ)軟件,只有在系統(tǒng)軟件的支持下,應(yīng)用軟件才能夠正常的運行。我們將要研究的操作系統(tǒng)(Operating System)就是系統(tǒng)軟件的典型代表。 1.1.1 操作系統(tǒng)的定義操作系統(tǒng)的定義 第1 1章 引 論 圖1-1 計算機系統(tǒng)組成用戶1Word用戶2Photoshop用戶3IE用戶nDelphi應(yīng)用軟件與部分系統(tǒng)軟件操作系統(tǒng)(Operating System)硬件(物理設(shè)
3、備)第1 1章 引 論 從操作系統(tǒng)在計算機系統(tǒng)中所處的位置,我們可以看到,操作系統(tǒng)處在硬件與其它軟件之間的一個特殊位置上,引入操作系統(tǒng)主要可完成以下兩個方面的工作: (1) 方便用戶使用。操作系統(tǒng)應(yīng)該提供給用戶一個良好的界面,用戶不必了解硬件和其它軟件的細(xì)節(jié),就可以方便地使用計算機。 (2) 充分利用資源。操作系統(tǒng)應(yīng)該最大限度地發(fā)揮計算機系統(tǒng)資源的使用效率,合理地組織工作流程,使得計算機資源能為多用戶共享。 據(jù)此,我們可以給出操作系統(tǒng)的定義:操作系統(tǒng)是為了方便用戶和提高計算機的利用率,而對計算機資源進(jìn)行組織和管理的程序集合。其中,用戶是一個廣義的概念,包括一般用戶和軟件開發(fā)人員等;資源包括處理
4、器、存儲器、輸入/輸出設(shè)備等硬件資源和程序與數(shù)據(jù)等軟件資源。第1 1章 引 論 1.1.2 操作系統(tǒng)在計算機系統(tǒng)中的作用操作系統(tǒng)在計算機系統(tǒng)中的作用 1對外職能對外職能用戶與計算機之間的接口用戶與計算機之間的接口 操作系統(tǒng)作為用戶與計算機之間的接口,必須為用戶提供良好的界面,使用戶能夠感覺計算機是可用而且易用的。這是一個最主要的職能。早期的計算機沒有操作系統(tǒng),使用計算機時只能使用機器語言,既繁瑣又費時,沒有計算機專業(yè)知識的人使用計算機時會感到困難重重。有了操作系統(tǒng),用戶通過操作系統(tǒng)提供的操作命令和系統(tǒng)調(diào)用命令就可以方便、快捷、安全、可靠地操縱計算機,運行自己的程序。這些命令對于用戶來說要容易掌
5、握得多。而隨著圖形用戶接口的出現(xiàn),使用戶尤其是普通用戶操作計算機變得更為簡單。第1 1章 引 論 2對內(nèi)職能組織和管理計算機資源,充分發(fā)揮資源的效能,提高利用率在一個計算機系統(tǒng)中,通常包含了多種硬件與軟件資源,為了實現(xiàn)某種功能需要使用相應(yīng)的資源,在分配資源時首先不能“張冠李戴”,比如某用戶程序要求打印一篇文檔,系統(tǒng)就不應(yīng)該為其分配一臺掃描儀。另外,系統(tǒng)的資源數(shù)目是有限的,因此在一些環(huán)境下用戶程序在執(zhí)行過程中會發(fā)生資源競爭的現(xiàn)象,引起沖突,造成系統(tǒng)的一些工作無法繼續(xù)進(jìn)行,這就需要一個仲裁者在相互競爭資源的程序間有序地控制資源的分配,操作系統(tǒng)就起這樣的作用。操作系統(tǒng)可以跟蹤資源的使用情況,滿足用戶
6、資源請求,做到合理分配,盡可能使得系統(tǒng)中的各類資源處于“忙”狀態(tài),縮短任務(wù)完成時間,提高資源利用率。第1 1章 引 論 1.1.3 研究操作系統(tǒng)的幾種觀點研究操作系統(tǒng)的幾種觀點 操作系統(tǒng)本身是一個相當(dāng)復(fù)雜的系統(tǒng),為了徹底了解它,我們可以從不同的角度研究操作系統(tǒng)。 1用戶觀點用戶觀點 用戶是計算機的使用主體,軟件開發(fā)的主要目的就是讓用戶能夠方便地使用計算機。用戶觀點是指站在用戶立場上對計算機提出要求。用戶對操作系統(tǒng)的內(nèi)部結(jié)構(gòu)沒有太大興趣,他們主要從功能要求、服務(wù)質(zhì)量、使用維護(hù)及安裝價格等方面提出要求。作為使用者,最關(guān)心的是如何利用操作系統(tǒng)提供的服務(wù)有效地使用計算機,即操作系統(tǒng)提供什么樣的用戶界面
7、。第1 1章 引 論 2資源管理的觀點資源管理的觀點 資源管理的觀點是從系統(tǒng)資源的角度刻畫整個操作系統(tǒng)的組成及其功能。通常把計算機系統(tǒng)資源按性質(zhì)歸納為四類:CPU、內(nèi)存、外部設(shè)備以及信息文件,這些資源是操作系統(tǒng)和用戶程序賴以活動的物質(zhì)基礎(chǔ)和工作環(huán)境。用戶使用計算機的過程就是通過使用這些資源達(dá)到解決問題的一個過程。 資源管理是指對上述硬、軟件資源進(jìn)行管理。一般說來,一個計算機系統(tǒng)中常常同時運行多個程序,操作系統(tǒng)的任務(wù)就是在相互競爭資源的程序之間有序地控制資源的分配。對于操作系統(tǒng)來說,資源管理要做如下工作:第1 1章 引 論 (1) 對資源使用情況進(jìn)行登記,這是資源管理的依據(jù)。 (2) 決定分配策
8、略。根據(jù)資源使用情況分析分配的可行性,并決定分配所應(yīng)采取的策略。 (3) 提供分配與回收算法。通過資源分配的具體程序達(dá)到資源分配的目的,為了保證資源的后續(xù)利用,在當(dāng)前使用完該資源后應(yīng)該立即釋放,即執(zhí)行資源回收程序。第1 1章 引 論 如圖1-2所示,系統(tǒng)中存在兩個不同的隊列,分別為請求分配資源隊列和請求釋放資源隊列。這兩個隊列按照某種原則形成,系統(tǒng)首先根據(jù)它們不同的請求方式加以判斷。如果是請求分配資源方式,系統(tǒng)將進(jìn)一步判斷所需資源是否可用,如果資源可用并且夠用,就進(jìn)行資源分配并修改資源分配狀態(tài)表,否則這次請求就沒有被成功響應(yīng),該請求將被插入到請求分配資源隊列,等待下一次系統(tǒng)響應(yīng)。如果不是請求分
9、配資源方式,那么就有兩種可能:一種是請求釋放資源方式,這時系統(tǒng)正?;厥召Y源;另一種是異常方式,系統(tǒng)將調(diào)用出錯處理程序進(jìn)行相應(yīng)的處理。第1 1章 引 論 圖1-2 資源分配與釋放過程請求分配?該資源可用?釋放?資源夠用?插隊NYYN分配Y回收修改資源分配狀態(tài)表請求分配資源隊列按原則進(jìn)入請求釋放資源隊列NYN出錯處理第1 1章 引 論 3進(jìn)程觀點進(jìn)程觀點 通過以前的學(xué)習(xí),我們了解到計算機是通過運行程序來滿足用戶要求的,但是我們并不清楚程序在計算機內(nèi)運行的基本過程和一些規(guī)則,只是“知其然而不知其所以然”,操作系統(tǒng)將會解決一些存在于我們思想中的疑問。在澄清這些疑問的過程中,有一個非常重要的動態(tài)對象進(jìn)程
10、,它是分析計算機操作系統(tǒng)在處理過程中的基本對象,是系統(tǒng)中的活動實體。我們在后面的章節(jié)中會詳細(xì)描述并經(jīng)常用到它來研究系統(tǒng)的工作狀況。第1 1章 引 論 1.2 操作系統(tǒng)的發(fā)展操作系統(tǒng)的發(fā)展1.2.1 問題的提出問題的提出 1速度問題速度問題 20世紀(jì)40年代出現(xiàn)的第一臺計算機由電子真空管和插板組成。這種機器運算速度很低。在計算機出現(xiàn)的早期,每臺計算機都有一個小組專門進(jìn)行設(shè)計、編程和維護(hù)。所有的程序都采用機器語言,計算機上沒有操作系統(tǒng),更沒有其它軟件。機器的使用方式是程序員提前預(yù)約機時,上機時用手工方式啟動設(shè)備。將記錄程序的卡片或紙帶用輸入機送入計算機,接著在控制臺上用按鈕啟動程序運行。在程序運行
11、的幾個小時里用戶獨占計算機,他既是程序員又是操作員。第1 1章 引 論 20世紀(jì)60年代,晶體管的發(fā)明改變了計算機的狀況,使處理機的速度提高了幾十倍。當(dāng)時計算機的價格十分昂貴,大學(xué)或研究所的機房已經(jīng)配有專門的操作員。程序員要使用計算機時,將程序?qū)懺诩埳希么┛讬C制成卡片,稱為一個作業(yè),然后交給操作員。由于在計算機的使用過程中操作員需要手工操作的工作很多,例如取一個作業(yè),操作運行,打印輸出,再取下一個作業(yè)等,造成機器長時間空閑,人工操作的速度和處理機的計算速度嚴(yán)重不匹配。由此可見,減少人工干預(yù)對提高機器利用率有著重要意義,人們開始希望有專門的監(jiān)督程序或管理程序來進(jìn)行作業(yè)的自動依次處理。第1 1
12、章 引 論 2作業(yè)差異作業(yè)差異 除了速度問題之外,由于每個作業(yè)使用的語言不同,也給操作員帶來了很大的麻煩。因為不同語言的作業(yè)在進(jìn)行處理前,首先必須將相應(yīng)的編譯系統(tǒng)裝入計算機并置換舊的程序,這樣就使計算機的大量時間耗費在輸入/輸出上。例如,為了完成一道也許計算機處理只需要兩分鐘的程序,而將相應(yīng)的編譯系統(tǒng)裝入也許會花費兩個小時,且在這兩個小時中,寶貴的CPU資源卻一直處于空閑狀態(tài),白白浪費,另外也使操作員不勝其煩。因此設(shè)計使用專門程序進(jìn)行作業(yè)自動轉(zhuǎn)換和處理的想法被提了出來。第1 1章 引 論 另外,作業(yè)也有I/O繁忙型與CPU繁忙型之分。對于I/O繁忙型作業(yè),在完成過程中大部分時間利用外部設(shè)備進(jìn)行
13、I/O操作,在這些時間內(nèi),寶貴的CPU資源卻處于空閑狀態(tài),成為一種嚴(yán)重的資源浪費。對于CPU繁忙型作業(yè),雖然CPU利用率比較高,但是外部設(shè)備卻經(jīng)常處于空閑狀態(tài),仍然屬于一種資源浪費。也就是說,對于不同應(yīng)用的作業(yè)來說,計算機系統(tǒng)給予了“一視同仁”的對待。雖然在控制上比較簡單,卻付出了寶貴的時間代價。第1 1章 引 論 1.2.2 解決辦法解決辦法 1減少人工干預(yù)減少人工干預(yù) 為了盡量減少多個作業(yè)交接時的人工負(fù)擔(dān),批處理技術(shù)應(yīng)運而生。操作員把用戶提交的作業(yè)分類,把一批作業(yè)編成一個作業(yè)執(zhí)行序列,成批地提交給計算機進(jìn)行輸入、運行和輸出,同時也專門編制了監(jiān)督程序或管理程序,對它們進(jìn)行自動地依次處理,實現(xiàn)
14、作業(yè)的自動轉(zhuǎn)換。在早期的批處理中,操作員通過輸入設(shè)備將多個作業(yè)一次存入磁帶,然后監(jiān)督程序先從磁帶上讀入一個作業(yè),接著又調(diào)入編譯程序來將用戶作業(yè)翻譯成目標(biāo)代碼,經(jīng)連接和裝配后執(zhí)行并輸出結(jié)果。緊接著又調(diào)入下一個作業(yè),不斷地循環(huán)反復(fù)操作。這樣大大減少了人工操作的時間,這種處理方式被稱為聯(lián)機批處理方式。第1 1章 引 論 2改善速度匹配改善速度匹配 批處理方式解決了作業(yè)的自動轉(zhuǎn)接,但其缺點是無論成批輸入還是作業(yè)的轉(zhuǎn)接執(zhí)行都是在主機CPU控制下完成的。在系統(tǒng)進(jìn)行慢速的輸入/輸出工作的時候,CPU只好停止工作,處于等待狀態(tài)。為了改善速度匹配問題,產(chǎn)生了脫機批處理技術(shù)。該技術(shù)是增加不與主機相連而專門用于輸入
15、/輸出的外圍計算機,由外圍輸入計算機負(fù)責(zé)將作業(yè)送入磁帶,由主機和磁帶機配合讀入作業(yè),主機完成程序的執(zhí)行后將輸出結(jié)果送到磁帶,再由外圍輸出計算機將結(jié)果送到輸出設(shè)備并顯示給用戶。 這樣,主機不是直接與慢速的輸入/輸出設(shè)備打交道,而是與速度相對快得多的磁帶機發(fā)生聯(lián)系。主機和外圍計算機分工明確,在監(jiān)督程序的管理下,充分發(fā)揮了主機的高速度處理能力,大大減少了因手工操作而帶來的主機機時浪費,提高了主機的使用效率,比較明顯地緩解了高速主機和低速輸入/輸出設(shè)備之間的矛盾。第1 1章 引 論 3實現(xiàn)多道程序系統(tǒng)實現(xiàn)多道程序系統(tǒng) 20世紀(jì)60年代中期,處理機速度進(jìn)一步提高,主存容量加大,出現(xiàn)了大容量的輔助存儲器。
16、計算機的系統(tǒng)結(jié)構(gòu)從以中央處理機為中心改變?yōu)橐灾鞔鏋橹行?。其中最重要的是中斷技術(shù)和通道技術(shù)的出現(xiàn)和發(fā)展,使操作系統(tǒng)有了進(jìn)一步發(fā)展。借助通道和中斷技術(shù),主機可以在中斷的時刻向I/O通道中的緩沖區(qū)進(jìn)行讀/寫操作,更迅速地完成輸入/輸出任務(wù)。但是包括CPU和I/O設(shè)備在內(nèi)的各種資源不能并行工作仍然是造成系統(tǒng)性能低效的主要原因,所以在硬件系統(tǒng)的支持下,通過軟件技術(shù)使得系統(tǒng)中的CPU和其它的I/O設(shè)備并行工作,推出了多道程序系統(tǒng)。我們從圖1-3中可以了解CPU與I/O并行的大致協(xié)調(diào)過程。第1 1章 引 論 所謂多道程序系統(tǒng),是指允許多個相互獨立的程序同時存在于內(nèi)存中,而且處于同時運行的過程中。各道程序輪流
17、占用CPU,交替執(zhí)行。這里需要解決一些技術(shù)問題,例如,如何共享硬件、軟件資源,怎樣解決同步和互斥的問題,如何提高內(nèi)存的使用效率,如何保證程序的安全等,這些將是操作系統(tǒng)這門課程要介紹的重要內(nèi)容。第1 1章 引 論 圖1-3 CPU與I/O并行圖程序A程序B程序C調(diào)度程序I/O請求I/O請求I/O請求I/O結(jié)束A再調(diào)度I/O結(jié)束B再調(diào)度A完成B完成CPU執(zhí)行:I/O操作:T第1 1章 引 論 1.2.3 基本操作系統(tǒng)類型基本操作系統(tǒng)類型 1批處理系統(tǒng)批處理系統(tǒng) 批處理系統(tǒng)中,用戶的作業(yè)分批提交并處理,即系統(tǒng)將作業(yè)成批地輸入系統(tǒng)并暫存在外存中,組成后備作業(yè)隊列,每次按一定的調(diào)度原則從后備作業(yè)中選擇一
18、個或多個裝入主存進(jìn)行處理,作業(yè)完成后退出。這些操作由系統(tǒng)自動實現(xiàn),大大縮短了兩個作業(yè)之間的轉(zhuǎn)接時間,在系統(tǒng)中形成了一個自動轉(zhuǎn)接的作業(yè)流,當(dāng)一批作業(yè)運行完畢,輸出結(jié)果后,系統(tǒng)便接收下一批作業(yè)。第1 1章 引 論 在批處理系統(tǒng)中,用戶不能直接干預(yù)作業(yè)的運行過程,而是將其對作業(yè)的控制意圖在作業(yè)提交之前用作業(yè)控制語言編制成作業(yè)說明書或作業(yè)控制卡,這些控制意圖可以是作業(yè)運行時的資源請求,或是對可能產(chǎn)生的運行錯誤的相應(yīng)處理等。作業(yè)說明書或作業(yè)控制卡在提交作業(yè)時,與程序和數(shù)據(jù)一起提交給系統(tǒng),由作業(yè)控制程序或命令解釋程序解釋執(zhí)行,并且提供相應(yīng)的服務(wù)。 在引入多道程序設(shè)計技術(shù)后,批處理系統(tǒng)具有以下的特征: (1
19、) 多道性:在內(nèi)存中同時駐留多道程序,它們并發(fā)執(zhí)行,以提高系統(tǒng)的資源利用率和系統(tǒng)的吞吐量。第1 1章 引 論 (2) 無序性:作業(yè)的執(zhí)行順序與作業(yè)進(jìn)入系統(tǒng)的先后順序沒有嚴(yán)格的對應(yīng)關(guān)系。 (3) 調(diào)度性:作業(yè)從提交到運行完成需要經(jīng)過兩次調(diào)度,即作業(yè)調(diào)度和進(jìn)程調(diào)度。作業(yè)調(diào)度是指按照一定作業(yè)調(diào)度算法,從后備作業(yè)隊列中選擇一個或幾個作業(yè)調(diào)入內(nèi)存。進(jìn)程調(diào)度是指按照一定進(jìn)程調(diào)度算法,從在內(nèi)存的進(jìn)程中選擇一個進(jìn)程,將處理機分配給它,使之執(zhí)行。 批處理系統(tǒng),特別是多道批處理系統(tǒng)的主要優(yōu)點是資源利用率高。由于在內(nèi)存中裝入了多道程序,系統(tǒng)中的資源被它們充分共享和利用,而且它們之間的切換所造成的系統(tǒng)開銷較小,使系統(tǒng)
20、在單位時間內(nèi)所完成的總的工作量增加,即提高了系統(tǒng)的吞吐量。 第1 1章 引 論 批處理系統(tǒng)的缺點主要體現(xiàn)在以下兩個方面: (1) 平均周轉(zhuǎn)時間長。作業(yè)的周轉(zhuǎn)時間是指從作業(yè)進(jìn)入系統(tǒng)開始,直到作業(yè)完成并退出系統(tǒng)為止所經(jīng)歷的時間。在批處理系統(tǒng)中,由于作業(yè)需要排隊來依次進(jìn)行處理,因而作業(yè)的周轉(zhuǎn)時間較長。 (2) 無交互能力。在作業(yè)提交后,用戶不能與自己的作業(yè)進(jìn)行交互,不便于對作業(yè)的控制。 第1 1章 引 論 2分時系統(tǒng)分時系統(tǒng) 所謂“分時”,就是多個用戶對系統(tǒng)資源進(jìn)行時間上的分享。在分時操作系統(tǒng)中,一個計算機系統(tǒng)與若干臺本地或遠(yuǎn)程終端相連,每個用戶可以在所使用的終端上以人機會話的交互方式使用計算機。微
21、觀上,每個用戶作業(yè)輪流運行一個時間片;宏觀上,多個用戶同時工作,共享系統(tǒng)資源。當(dāng)用戶通過鍵盤或者鼠標(biāo)向系統(tǒng)提交一個請求后,會在1 s(甚至更短)之內(nèi)給出響應(yīng),實現(xiàn)了及時交互。 “分時”的設(shè)想最初是在20世紀(jì)60年代提出的,但是具體的分時系統(tǒng)的設(shè)計實現(xiàn)是很困難的,成本非常昂貴,所以直到20世70年代才得到逐步推廣。目前盡管批處理系統(tǒng)仍然在某些方面繼續(xù)使用,但是分時系統(tǒng)作為多道程序系統(tǒng)的一個典型代表,集中體現(xiàn)了多道程序系統(tǒng)的一些技術(shù)特征,成為當(dāng)今的計算機操作系統(tǒng)主流,所以我們將會以分時系統(tǒng)為主要對象來學(xué)習(xí)操作系統(tǒng)。第1 1章 引 論 3實時系統(tǒng)實時系統(tǒng) “實時”是指系統(tǒng)能夠及時響應(yīng)發(fā)生的外部事件(
22、一般為一些隨機事件),并以足夠快的速度完成對事件的處理。從這個定義中我們可以看到,在對時間響應(yīng)的要求上,實時系統(tǒng)比分時系統(tǒng)要嚴(yán)格得多,一般在毫秒級、微秒級;而批處理系統(tǒng)甚至可以不作響應(yīng)時間的要求。為了保證程序可靠運行,系統(tǒng)應(yīng)提供安全措施,比如多級容錯、硬件冗余等,避免因發(fā)生錯誤或丟失信息而造成重大經(jīng)濟損失甚至導(dǎo)致災(zāi)難性的后果。實時系統(tǒng)相對于其它操作系統(tǒng)來說,其優(yōu)點是系統(tǒng)的及時響應(yīng)以及系統(tǒng)的可靠性。 第1 1章 引 論 實時系統(tǒng)可以分為兩種類型:一種稱作硬實時系統(tǒng),另一種稱作軟實時系統(tǒng)。硬實時系統(tǒng)對響應(yīng)時間的要求最為嚴(yán)格,一個實時任務(wù)絕對不允許出現(xiàn)等待的情況。一旦有實時任務(wù)到來,系統(tǒng)核心必須立即
23、中止正在處理的任務(wù)而轉(zhuǎn)去處理它,一定要在規(guī)定的延遲時間之內(nèi)作出信息反饋。從輔存中存取數(shù)據(jù)的方式在硬實時系統(tǒng)中是被限制使用甚至被禁止使用的,數(shù)據(jù)被存放在可以高速訪問的內(nèi)存或者只讀存儲器ROM中。ROM是一種系統(tǒng)斷電后仍然能夠保留其信息的存儲介質(zhì),而內(nèi)存中存儲的信息在系統(tǒng)斷電后將會丟失。實際上大部分先進(jìn)的系統(tǒng)并不采用這種硬實時方式,因為在這些系統(tǒng)中更傾向于使用戶能夠與計算機硬件盡可能分離,這種分離會導(dǎo)致延遲時間難以確定。比如我們將要在存儲器管理中學(xué)習(xí)的虛擬存儲技術(shù),在實時系統(tǒng)當(dāng)中幾乎都沒有使用,而且硬實時系統(tǒng)與分時系統(tǒng)會產(chǎn)生沖突,沒有一個通用的分時系統(tǒng)支持硬實時功能,所以我們在本書中對這種技術(shù)不予
24、分析。第1 1章 引 論 在軟實時系統(tǒng)中,系統(tǒng)通過用戶任務(wù)的優(yōu)先級來保證實時性。一個實時任務(wù)需要在一定的截止時間內(nèi)作出反饋,它的優(yōu)先級通常是高于其它任務(wù)的。軟實時系統(tǒng)可以應(yīng)用于多媒體、虛擬現(xiàn)實、海底探測等科學(xué)領(lǐng)域以及一些工業(yè)自動化控制領(lǐng)域和軍事自動化控制領(lǐng)域中。軟實時系統(tǒng)有相對“寬松”的延遲,允許它很好地與其它類型的操作系統(tǒng)相混合,比如在UNIX中我們就可以看到軟實時的控制技術(shù)。 以上介紹的是三種基本的操作系統(tǒng)類型,實際的操作系統(tǒng)可能兼有三者或其中兩種系統(tǒng)的功能。第1 1章 引 論 1.2.4 新型操作系統(tǒng)新型操作系統(tǒng) 操作系統(tǒng)經(jīng)過一個大發(fā)展時期,到20世紀(jì)80年代已趨于成熟,隨著集成電路技術(shù)
25、和計算機體系結(jié)構(gòu)的發(fā)展,操作系統(tǒng)也在不斷地發(fā)展,先后形成了微型計算機操作系統(tǒng)、多處理機操作系統(tǒng)、網(wǎng)絡(luò)操作系統(tǒng)和分布式操作系統(tǒng)。 1微機操作系統(tǒng)微機操作系統(tǒng) 隨著超大規(guī)模集成電路(簡稱VLSI)的發(fā)展而產(chǎn)生了微型計算機,配置在微型計算機上的操作系統(tǒng)稱為微型計算機操作系統(tǒng)(簡稱微機操作系統(tǒng))。微機操作系統(tǒng)按照處理機的字長可分成8位、16位以及32位等操作系統(tǒng)。典型的操作系統(tǒng)有DOS、Windows、OS/2,以及近年來引起廣泛關(guān)注的Linux等一些自由軟件操作系統(tǒng)。第1 1章 引 論 MSDOS是單用戶單任務(wù)操作系統(tǒng)的代表。單用戶單任務(wù)的操作系統(tǒng)每次只允許一個用戶上機,且一個用戶程序只能作為一個任
26、務(wù)運行。早期的DOS因為配置在IBMPC機上,而隨著該機種及其兼容機的暢銷,MSDOS操作系統(tǒng)事實上也就成了當(dāng)時的個人計算機操作系統(tǒng)的標(biāo)準(zhǔn)。DOS中提供了許多命令接口,該操作系統(tǒng)具有較強的功能及性能優(yōu)良的文件系統(tǒng)。第1 1章 引 論 1990年Microsoft公司在MSDOS的基礎(chǔ)上推出了Windows 3.0操作系統(tǒng),它憑借友好的圖形用戶界面、支持多任務(wù)等優(yōu)點而迅速流行開來,占領(lǐng)了操作系統(tǒng)大部分的市場份額,成為單用戶多任務(wù)操作系統(tǒng)的代表。單用戶多任務(wù)操作系統(tǒng)是指每次只允許一個用戶上機,但允許將一個用戶的工作分為若干個任務(wù),使它們并發(fā)執(zhí)行,從而提高系統(tǒng)的性能。Microsoft公司于1993
27、年推出了全新的32位操作系統(tǒng)Windows NT,它具有很強的網(wǎng)絡(luò)功能。隨著新一代Windows系列操作系統(tǒng)的陸續(xù)推出與應(yīng)用,它們已經(jīng)成為目前個人計算機操作系統(tǒng)的主流。第1 1章 引 論 前面介紹的DOS、Windows操作系統(tǒng)都是單用戶操作系統(tǒng),每次只允許一個用戶上機,上機的用戶獨自占有了系統(tǒng)中的所有資源。UNIX操作系統(tǒng)克服了這種資源被獨占的問題。UNIX是一種多用戶多任務(wù)的操作系統(tǒng),允許多個用戶通過各自的終端使用一臺主機,共享主機系統(tǒng)的各類資源,而每個用戶工作又可以分為幾個任務(wù),使它們并行執(zhí)行,從而可以提高資源的利用率和增加系統(tǒng)的吞吐量。目前許多大、中、小型計算機上配置的都是多用戶多任務(wù)
28、的操作系統(tǒng)。第1 1章 引 論 2多處理機操作系統(tǒng)多處理機操作系統(tǒng) 較早的計算機系統(tǒng)基本上都是單處理機系統(tǒng),后來出現(xiàn)了多處理機系統(tǒng)MPS(Multiprocessor System),從計算機體系結(jié)構(gòu)上來改善系統(tǒng)性能。隨著系統(tǒng)中處理機數(shù)目的增多,既提高了系統(tǒng)的吞吐量,又可以共用其它部件以節(jié)約成本。而且多處理機系統(tǒng)的系統(tǒng)重構(gòu)功能提高了系統(tǒng)的可靠性,即當(dāng)其中任何一臺處理機發(fā)生故障時,系統(tǒng)能立即將該處理機上所處理的任務(wù)遷移到其它的一個或多個處理機上去處理,整個系統(tǒng)仍能正常運行,僅使系統(tǒng)的性能略有降低。根據(jù)各處理機之間的緊密程度,我們可以把多處理機系統(tǒng)從硬件結(jié)構(gòu)上分為緊密耦合型和松散耦合型兩大類。第1
29、 1章 引 論 多處理機系統(tǒng)所配置的操作系統(tǒng)可以分為對稱式和非對稱式(又稱為主從式)的。對稱式是每個處理機上運行著同一操作系統(tǒng)的拷貝,這些拷貝可以與其它拷貝之間根據(jù)任務(wù)需要進(jìn)行通信。非對稱式是指每個處理機執(zhí)行特定的任務(wù),由一臺主處理機控制整個系統(tǒng),其它處理機根據(jù)主處理機的指令完成指定的任務(wù),主處理機和其它處理機之間具有主-從關(guān)系。目前大多數(shù)多處理機系統(tǒng)采用的是對稱式操作系統(tǒng)。第1 1章 引 論 3網(wǎng)絡(luò)操作系統(tǒng)網(wǎng)絡(luò)操作系統(tǒng) 計算機網(wǎng)絡(luò)定義為一些具有獨立處理能力的計算機在網(wǎng)絡(luò)協(xié)議控制下實現(xiàn)通信和相互合作的計算機復(fù)合系統(tǒng),是在計算機技術(shù)和通信技術(shù)高度發(fā)展的基礎(chǔ)上相互結(jié)合的產(chǎn)物。 計算機網(wǎng)絡(luò)的發(fā)展,尤
30、其是Internet和WWW(World Wide Web)的出現(xiàn),對當(dāng)今操作系統(tǒng)的發(fā)展起到了深遠(yuǎn)影響。當(dāng)PC機在20世紀(jì)70年代出現(xiàn)時,僅僅面向個人獨立使用。20世紀(jì)80年代,隨著人們開始通過Internet發(fā)送電子郵件E-mail、進(jìn)行文件傳輸FTP等工作,許多PC機被連接到計算機網(wǎng)絡(luò)上。到20世紀(jì)90年代中期,網(wǎng)絡(luò)連接被認(rèn)為是計算機系統(tǒng)最基本的功能之一,于是操作系統(tǒng)開始提供有關(guān)網(wǎng)絡(luò)的管理,比如TCP/IP和PPP協(xié)議、網(wǎng)絡(luò)瀏覽器等。第1 1章 引 論 4分布式操作系統(tǒng)分布式操作系統(tǒng) 分布式處理系統(tǒng)是指由多個分散的處理單元經(jīng)互連網(wǎng)絡(luò)的連接而形成的,且可以實現(xiàn)分布處理的系統(tǒng)。其中,每個處理單
31、元既具有高度的自治性,又相互協(xié)調(diào),能在系統(tǒng)范圍內(nèi)實現(xiàn)資源管理、動態(tài)地分配任務(wù),并能并行地運行分布式程序。 在分布式系統(tǒng)上配置的操作系統(tǒng),稱為分布式操作系統(tǒng)。網(wǎng)絡(luò)操作系統(tǒng)與分布式操作系統(tǒng)的特點如表1-1所示。第1 1章 引 論 表表1-1 網(wǎng)絡(luò)操作系統(tǒng)與分布式系統(tǒng)比較網(wǎng)絡(luò)操作系統(tǒng)與分布式系統(tǒng)比較操作系統(tǒng)分布性并行性透明性共享性健壯性網(wǎng)絡(luò)操作系統(tǒng)分布處理,集中控制任務(wù)在本地計算機上運行操作透明,但需指明物理位置一般只能共享服務(wù)器上的資源控制集中于服務(wù)器,可靠性弱分布式操作系統(tǒng)分布處理,分布控制多任務(wù)在多處理單元中并行執(zhí)行操作透明,而且物理位置透明各站點資源可供全系統(tǒng)共享容錯能力強,可靠性高第1 1
32、章 引 論 1.3 操作系統(tǒng)的特征與功能操作系統(tǒng)的特征與功能1.3.1 操作系統(tǒng)的特征操作系統(tǒng)的特征 1并發(fā)(并發(fā)(Concurrence) 并行性和并發(fā)性是描述計算機工作時經(jīng)常使用的兩個概念,它們既相似又有區(qū)別。并行性是指兩個或多個事件在同一時刻發(fā)生;而并發(fā)性是指兩個或多個事件在同一時間間隔內(nèi)發(fā)生。在多道程序環(huán)境下,并發(fā)性是指宏觀上在一段時間內(nèi)有多道程序表現(xiàn)為同時運行。在單處理機系統(tǒng)中,每一時刻僅能執(zhí)行一道程序,故微觀上這些程序是在交替執(zhí)行的。而在多處理機系統(tǒng)中,它們可以做到真正并行執(zhí)行。但是在這里我們需要指出,對于程序來說,它屬于一個靜態(tài)對象,是不能并發(fā)執(zhí)行的,為了描述一個執(zhí)行過程,在操作
33、系統(tǒng)中引入一個動態(tài)對象進(jìn)程,而程序則僅僅是一個進(jìn)程包含的一部分內(nèi)容。第1 1章 引 論 2共享(共享(Sharing) 共享是指內(nèi)存中多個并發(fā)執(zhí)行的進(jìn)程共同使用系統(tǒng)中的資源。根據(jù)資源的屬性不同,進(jìn)程采取兩種資源共享方式。一種方式是當(dāng)一個進(jìn)程正在訪問某資源時,其它欲訪問該資源的進(jìn)程必須等待,僅當(dāng)該進(jìn)程訪問完畢并釋放該資源后,才允許另一個進(jìn)程對該資源進(jìn)行訪問,例如對于打印機、磁帶機的共享。另一種方式是允許在一段時間內(nèi)由多個進(jìn)程同時訪問的資源,例如訪問磁盤、共享文件等。這里所謂的“同時”往往是宏觀上的,而在微觀上,這些進(jìn)程是交替地對該資源進(jìn)行訪問。第1 1章 引 論 并發(fā)和共享是操作系統(tǒng)的兩個最基本
34、的特征,它們又是互為存在條件的。一方面,資源共享是以程序(進(jìn)程)的并發(fā)執(zhí)行為條件的,若系統(tǒng)不允許程序并發(fā)執(zhí)行,自然不存在資源共享問題;另一方面,若系統(tǒng)不能對資源共享實施有效的管理,則也必將影響到程序的并發(fā)執(zhí)行,甚至根本無法并發(fā)執(zhí)行。第1 1章 引 論 3虛擬(虛擬(Virtual) “虛擬”是指通過某種技術(shù)把一個物理實體變成若干個邏輯上的對應(yīng)體。在計算機系統(tǒng)中,采用了大量的虛擬技術(shù),從而可以方便用戶應(yīng)用并提高工作效率。例如在分時系統(tǒng)中,多個用戶通過聯(lián)機終端使用一個CPU,通過劃分適當(dāng)?shù)臅r間片,使各個用戶輪流使用CPU,但是因為切換速度非???,使用戶感覺上是各自擁有一個CPU。第1 1章 引 論
35、 4異步性(異步性(Asynchronism) 多道程序環(huán)境下多個進(jìn)程并發(fā)執(zhí)行,但由于資源等因素的限制,一個進(jìn)程的執(zhí)行可能會受到其它進(jìn)程的影響,以不可預(yù)知的速度向前推進(jìn),這種推進(jìn)方式稱為進(jìn)程異步執(zhí)行。例如進(jìn)程A與一組進(jìn)程并發(fā)執(zhí)行,因為競爭某類資源,在完成過程中有三個階段的暫停;但A與另外一組進(jìn)程并發(fā)執(zhí)行時可能會有五個階段的暫停,或者說沒有出現(xiàn)暫停,但無論如何,只要運行環(huán)境相同,這兩次運行應(yīng)該獲得完全相同的結(jié)果。這種異步特征的出現(xiàn)是隨操作系統(tǒng)保證資源共享而產(chǎn)生的。第1 1章 引 論 1.3.2 操作系統(tǒng)的功能操作系統(tǒng)的功能 1處理機管理的功能處理機管理的功能 1) 進(jìn)程控制 在多道程序環(huán)境下,為
36、完成作業(yè)而進(jìn)行的進(jìn)程創(chuàng)建,進(jìn)程在運行過程中的狀態(tài)轉(zhuǎn)換控制,撤消已結(jié)束的進(jìn)程等細(xì)節(jié)實現(xiàn),以及相關(guān)的進(jìn)程的基本特征描述等。 2) 進(jìn)程同步 進(jìn)程同步的主要任務(wù)是對諸進(jìn)程的運行進(jìn)行協(xié)調(diào),保證各進(jìn)程可以安全、有效地訪問系統(tǒng)資源,或者實現(xiàn)它們之間的相互合作。第1 1章 引 論 3) 進(jìn)程通信 在多道程序環(huán)境下,系統(tǒng)為一個應(yīng)用程序建立多個進(jìn)程,進(jìn)程之間相互合作去完成一個共同任務(wù)。在此過程中,進(jìn)程往往需要交換信息,如何實現(xiàn)和保證這些交換,就是進(jìn)程通信的任務(wù)。 4) 調(diào)度 調(diào)度包括進(jìn)程調(diào)度和作業(yè)調(diào)度,是指采用適當(dāng)?shù)恼{(diào)度策略(即調(diào)度算法)來調(diào)度作業(yè)進(jìn)入內(nèi)存或者調(diào)度進(jìn)程進(jìn)入CPU獲得執(zhí)行。在不同類型的操作系統(tǒng)中,
37、所需的環(huán)節(jié)可能會有所差異。而其中的某些作業(yè)調(diào)度算法與進(jìn)程調(diào)度算法策略上是相似的,比如先來先服務(wù)(FCFS)調(diào)度算法等。第1 1章 引 論 2存儲器管理的功能存儲器管理的功能 存儲器管理是為多道程序的運行提供良好的環(huán)境,方便用戶使用存儲器,提高存儲器的利用率,以及能從邏輯上來擴充內(nèi)存。 1) 內(nèi)存分配 內(nèi)存分配的主要任務(wù)是為每道程序分配足夠完整運行的內(nèi)存空間,而且要提高存儲器的利用率。第1 1章 引 論 為了實現(xiàn)內(nèi)存分配,在內(nèi)存分配的機制中應(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)存空
38、間。 內(nèi)存回收功能:系統(tǒng)對用戶不再需要的內(nèi)存根據(jù)釋放請求進(jìn)行回收。第1 1章 引 論 2) 內(nèi)存保護(hù) 內(nèi)存保護(hù)是指通過設(shè)置內(nèi)存保護(hù)機制來確保每道用戶程序都在自己的內(nèi)存空間中運行,不能訪問操作系統(tǒng)存放在系統(tǒng)區(qū)中的程序和數(shù)據(jù),也不允許訪問非共享的其它用戶程序內(nèi)存區(qū)。 3) 地址變換 用戶應(yīng)用程序(源程序)經(jīng)編譯、鏈接而形成的可裝入程序,它所形成的邏輯單元編號(即邏輯地址)與裝入內(nèi)存后具體的內(nèi)存存儲單元編號(即物理地址)之間的對應(yīng)變換,需借助于相應(yīng)的地址變換硬件機構(gòu)實現(xiàn),以保證程序在執(zhí)行過程中可以在正確的內(nèi)存單元訪問所需的指令或數(shù)據(jù)。第1 1章 引 論 4) 內(nèi)存擴充 請求調(diào)入功能。允許在僅裝入一部
39、分用戶程序和數(shù)據(jù)的情況下,啟動該進(jìn)程運行。在運行過程中,當(dāng)發(fā)現(xiàn)繼續(xù)運行時所需的程序和數(shù)據(jù)尚未裝入內(nèi)存時,可向OS發(fā)出請求,由OS將所需部分調(diào)入內(nèi)存,以便繼續(xù)運行。 對換功能。若內(nèi)存中已無足夠的空間來裝入需要調(diào)入的部分時,系統(tǒng)應(yīng)將內(nèi)存中的一部分暫時不用的程序和數(shù)據(jù)調(diào)至磁盤上,以便騰出內(nèi)存空間,然后再將所需部分調(diào)入內(nèi)存。第1 1章 引 論 3設(shè)備管理的功能設(shè)備管理的功能 設(shè)備管理是指根據(jù)用戶的I/O請求分配相應(yīng)的I/O設(shè)備,控制I/O操作過程,達(dá)到提高I/O速度和設(shè)備利用率的目的。設(shè)備管理具體包括以下內(nèi)容。 1) 緩沖管理 緩沖管理的基本任務(wù)是管理好各種類型的緩沖區(qū),以緩和CPU和I/O速度不匹配
40、的矛盾,最終達(dá)到提高CPU和I/O設(shè)備利用率,進(jìn)而提高系統(tǒng)吞吐量的目的。對于不同的系統(tǒng),可以采用不同類型的緩沖區(qū)機制。最常見的緩沖區(qū)機制有單緩沖機制,可實現(xiàn)雙向同時傳送數(shù)據(jù)的雙緩沖機制,以及可供多個設(shè)備同時使用的公用緩沖池機制。第1 1章 引 論 2) 設(shè)備分配 設(shè)備分配的基本任務(wù)是根據(jù)用戶的I/O請求,為其分配所需的設(shè)備,其中包括可能需要的相應(yīng)的控制器和通道。在設(shè)備分配中,系統(tǒng)應(yīng)配置系統(tǒng)設(shè)備表、設(shè)備控制表、控制器控制表、通道控制表等數(shù)據(jù)結(jié)構(gòu),用于記錄設(shè)備、控制器及通道的標(biāo)識符和狀態(tài)。這些控制表可用以說明該設(shè)備是否可用、是否忙碌,以供設(shè)備分配時參考,另外還可根據(jù)設(shè)備的資源屬性進(jìn)行共享時的同步管
41、理。第1 1章 引 論 3) 設(shè)備處理 設(shè)備處理程序又稱為設(shè)備驅(qū)動程序。其基本任務(wù)通常是實現(xiàn)CPU和設(shè)備控制器之間的通信,由CPU向設(shè)備控制器發(fā)出I/O指令,要求它完成指定的I/O操作,并能接收由設(shè)備控制器發(fā)來的中斷請求,給予及時的響應(yīng)和相應(yīng)的處理。 4) 設(shè)備獨立性和虛擬設(shè)備 設(shè)備獨立性是指應(yīng)用程序使用的邏輯設(shè)備名獨立于具體的物理設(shè)備,以使用戶編制的程序與實際使用的物理設(shè)備無關(guān)。虛擬設(shè)備就是虛擬技術(shù)在設(shè)備管理中的一種具體應(yīng)用。 第1 1章 引 論 4文件管理的功能文件管理的功能 文件管理是指對存儲在磁盤或磁帶上的文件進(jìn)行管理,以方便用戶使用,并保證文件的安全性。文件管理具體包括對文件存儲空間
42、的管理,目錄管理,文件的讀、寫管理以及文件的共享與保護(hù)等功能。 1) 文件存儲空間的管理 由文件系統(tǒng)對諸多文件在存儲空間的占用情況進(jìn)行記錄,以供分配和回收空間時參考。分配和回收是以提高存儲空間的利用率為目標(biāo)的。第1 1章 引 論 2) 目錄管理 目錄管理的主要任務(wù)是為每個文件建立目錄項,并對眾多的目錄項加以有效的組織,以實現(xiàn)方便的按名存?。从脩糁恍杼峁┪募?,即可對該文件進(jìn)行存?。F浯?,目錄管理還應(yīng)能實現(xiàn)文件共享,這樣只需在外存上保留一份該共享文件的副本即可。此外,目錄管理還應(yīng)能提供快速的目錄查詢手段,以提高對文件的檢索速度。 3) 文件的讀、寫管理和存取控制 該功能規(guī)定文件讀、寫的具體方
43、式,以提高讀寫效率。為了保障文件系統(tǒng)的安全,應(yīng)對文件存取施加限制措施,保證各個用戶以適當(dāng)?shù)臋?quán)限來使用文件系統(tǒng),達(dá)到系統(tǒng)的安全性要求。第1 1章 引 論 5. 用戶接口用戶接口 為了方便用戶使用計算機,操作系統(tǒng)向用戶提供了更易理解和進(jìn)行工作的命令接口、程序接口和圖形接口。這些接口對于不同層次、不同水平的用戶提供了快速、高效訪問計算機的手段,對于計算機的普及與發(fā)展起到了非常重要的促進(jìn)作用。第1 1章 引 論 1.4 操作系統(tǒng)的結(jié)構(gòu)設(shè)計操作系統(tǒng)的結(jié)構(gòu)設(shè)計1.4.1 整體式系統(tǒng)整體式系統(tǒng) 整體式系統(tǒng)是一種非模塊化的簡單結(jié)構(gòu)。它把操作系統(tǒng)寫成一系列的過程,每個過程都有明確定義的接口,一個過程只要需要就可
44、以隨意調(diào)用任何其它過程,即任意一個過程都是不透明的。 為了構(gòu)造操作系統(tǒng)的實際目標(biāo)程序,需要首先分別編譯所有的單個過程或包含過程的文件,然后用連接程序把它們組合成一個單一的目標(biāo)文件。第1 1章 引 論 整體式結(jié)構(gòu)的操作系統(tǒng)與外部程序有統(tǒng)一的接口,即一組系統(tǒng)調(diào)用命令。所有的用戶程序和系統(tǒng)應(yīng)用程序都必須使用系統(tǒng)調(diào)用命令請求操作系統(tǒng)提供的服務(wù)。整體式結(jié)構(gòu)的操作系統(tǒng)通常會在系統(tǒng)態(tài)(管態(tài))下運行,而用戶程序和系統(tǒng)應(yīng)用程序都在用戶態(tài)(目態(tài))下運行。系統(tǒng)調(diào)用命令的執(zhí)行把機器從用戶態(tài)切換到系統(tǒng)態(tài),將控制傳遞給操作系統(tǒng)。操作系統(tǒng)解釋調(diào)用參數(shù),然后查找相應(yīng)的系統(tǒng)過程并進(jìn)行調(diào)用,最后完成系統(tǒng)調(diào)用并把控制返回給用戶態(tài)程
45、序。第1 1章 引 論 雖然整體式系統(tǒng)是非模塊化的,但它蘊含著一種基本的結(jié)構(gòu)關(guān)系: (1) 一個主過程,它接受和解釋系統(tǒng)調(diào)用命令,并調(diào)用相應(yīng)的過程。 (2) 一組執(zhí)行系統(tǒng)調(diào)用的服務(wù)過程,每個系統(tǒng)調(diào)用都有對應(yīng)的服務(wù)過程。 (3) 一組支持服務(wù)過程的實用過程,每個實用過程完成若干個服務(wù)過程所必須執(zhí)行的公共事務(wù)。 所有過程可大致分成三層,如圖1-4所示。第1 1章 引 論 圖1-4 整體式操作系統(tǒng)簡單結(jié)構(gòu)模型主過程服務(wù)過程公用過程第1 1章 引 論 1.4.2 模塊層次式系統(tǒng)模塊層次式系統(tǒng) 模塊層次式系統(tǒng)是一種模塊化的系統(tǒng)結(jié)構(gòu),它把操作系統(tǒng)劃分成若干模塊,并按這些模塊的控制或服務(wù)關(guān)系進(jìn)行分層,每層包
46、含一個或若干個模塊。底層(第0層)是宿主機(即硬件系統(tǒng)),最高層(第N層)是用戶接口。層與層之間存在著一種單向依賴關(guān)系高層依賴于低層,而低層不依賴于高層,即高層模塊可以調(diào)用低層模塊,反之則不行。如果同層中的各模塊之間不存在相互調(diào)用關(guān)系,則這種分層結(jié)構(gòu)是全序的,否則是半序的。模塊分層結(jié)構(gòu)通常也稱為有序分層結(jié)構(gòu)。 構(gòu)造分層結(jié)構(gòu)的操作系統(tǒng)有兩種基本方法:自底向上法和自頂向下法。第1 1章 引 論 圖1-5 自底向上分層設(shè)計AnAiA2A1A0自底向上第1 1章 引 論 1自底向上(自底向上(Bottom-up)法)法 以宿主系統(tǒng)A0(底層)為基礎(chǔ),對A0的各項功能(如CPU、存儲器、外部設(shè)備等)進(jìn)行
47、第一次擴充,得到一個比A0功能更強的虛擬機A1;然后再以A1為基礎(chǔ)進(jìn)行第二次擴充,得到新虛擬機A2。如此自底向上一層層地依次擴充,最終達(dá)到目標(biāo)系統(tǒng)An(頂層),如圖1-5所示。在擴充過程中,各級虛擬機具有下列性質(zhì): (1) Ai所提供的資源和功能構(gòu)成了建立Ai+1的全部基礎(chǔ)(單向依賴關(guān)系)。第1 1章 引 論 (2) 從Ai擴充到Ai+1時,并不一定是Ai的全部功能都同時被擴充了,Ai的那些未經(jīng)擴充的功能被看成是延續(xù)到Ai+1中去,故Ai+1中有一些功能等同于Ai的功能,在建立Ai+2時,把它看成是Ai+1的功能。 (3) 在定義Ai+1的新資源時所用到的Ai的資源,在Ai+1中不應(yīng)再出現(xiàn)。
48、(4) 頂層An的正確性可通過逐步證明以下的每一級虛擬機Ai的正確性來得到證實。第1 1章 引 論 2自頂向下(自頂向下(Top-down)法)法 與自底向上法相反,自頂向下法是從目標(biāo)系統(tǒng)An出發(fā),過渡到宿主系統(tǒng)A0的。為了實現(xiàn)An,設(shè)計一個適當(dāng)?shù)奶摂M機An-1,使得An能在An-1上實現(xiàn)。但An-1本身還無法獨立運行,因此再設(shè)計一個新的虛擬機An-2來實現(xiàn)An-1。如此重復(fù),便產(chǎn)生虛擬機序列An,An-1,A1,A1能在A0上獨立運行,如圖1-6所示。 圖1-6 自頂向下分層設(shè)計AnAiA2A1A0自頂向下第1 1章 引 論 模塊分層結(jié)構(gòu)的最主要優(yōu)點是模塊化,它總是把整體局部化,使得對系統(tǒng)的設(shè)計、調(diào)試及維護(hù)變得很容易。第一層僅依賴于硬件系統(tǒng),設(shè)計時僅利用硬件來實現(xiàn)該層的功能,在調(diào)試時與系統(tǒng)的其它部分無關(guān);當(dāng)?shù)谝粚颖徽{(diào)試通過后,第二層就可以在正確的第一層上進(jìn)行調(diào)試;依此類推,直至最高層被調(diào)試通過,整個系統(tǒng)的正確性可得以保證。如果在調(diào)試某一層時發(fā)現(xiàn)錯誤,則錯誤的搜索定位是很容易的,由于在該層下的各層均已調(diào)試通過了,故這種錯誤必定是該層引起的。此外,每一層都向較高層隱蔽了一些數(shù)據(jù)結(jié)構(gòu)、過程或硬件的存在,任一層的實現(xiàn)都依賴于較低層提供的一些操作,但它無需清楚這些操作是如何實現(xiàn)的,而只需知道這些操作是做什么的以及如何調(diào)用。這種信息隱蔽特點
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人借款電子合同電子簽名技術(shù)應(yīng)用指南4篇
- 二零二五年度智能車間承包合同模板:航空航天制造領(lǐng)域4篇
- 2025年度個人房地產(chǎn)過橋貸款合同2篇
- 2025年度虛擬現(xiàn)實技術(shù)合作開發(fā)合同4篇
- 2025年度承包車隊輪胎市場分析與風(fēng)險評估合同范本4篇
- 2025年度出租車租賃車輛保養(yǎng)及維修合同3篇
- 2025年度清潔公司服務(wù)質(zhì)量監(jiān)督及考核合同4篇
- 2025版電子支付系統(tǒng)接入服務(wù)合同4篇
- 二零二五年度互聯(lián)網(wǎng)平臺出資轉(zhuǎn)讓服務(wù)合同4篇
- 二零二五版碼頭集裝箱碼頭貨物跟蹤與查詢服務(wù)合同3篇
- 非誠不找小品臺詞
- 2024年3月江蘇省考公務(wù)員面試題(B類)及參考答案
- 患者信息保密法律法規(guī)解讀
- 老年人護(hù)理風(fēng)險防控PPT
- 充電樁采購安裝投標(biāo)方案(技術(shù)方案)
- 醫(yī)院科室考勤表
- 鍍膜員工述職報告
- 春節(jié)期間化工企業(yè)安全生產(chǎn)注意安全生產(chǎn)
- 保險行業(yè)加強清廉文化建設(shè)
- Hive數(shù)據(jù)倉庫技術(shù)與應(yīng)用
- 數(shù)字的秘密生活:最有趣的50個數(shù)學(xué)故事
評論
0/150
提交評論