版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第一章 操作系統(tǒng)引論,1.1 前言 1.2 操作系統(tǒng)的目標(biāo)和作用 1.3 操作系統(tǒng)的發(fā)展過程 1.4 操作系統(tǒng)的基本特性 1.5 操作系統(tǒng)的主要功能 1.6 操作系統(tǒng)的結(jié)構(gòu)設(shè)計,1.1前言,1.1.1 操作系統(tǒng)的地位 1.1.2 教學(xué)目的 1.1.3 教學(xué)內(nèi)容 1.1.4 學(xué)習(xí)基礎(chǔ) 1.1.5 課程安排和要求,1.1.1操作系統(tǒng)的地位,1.計算機系統(tǒng)管理中心 2.最復(fù)雜最精確的人工開發(fā)的管理系統(tǒng); 3.在計算機系統(tǒng)中不可缺少,少了操作系統(tǒng),用戶不可能上機使用計算機資源。,1.1.2教學(xué)目的,1.掌握操作系統(tǒng)概念 2.了解操作系統(tǒng)結(jié)構(gòu) 3.熟悉操作系統(tǒng)算法 4.為高級程序設(shè)計和操作系統(tǒng)使用、管理
2、、開發(fā)打基礎(chǔ) 5.為其他課程學(xué)習(xí)提供知識保障,1.1.3教學(xué)內(nèi)容,1.主要介紹操作系統(tǒng)原理 2.操作系統(tǒng)的四大管理:處理機,存儲器,設(shè)備,文件 3.操作系統(tǒng)的安全性,1.1.4學(xué)習(xí)基礎(chǔ),1.數(shù)據(jù)結(jié)構(gòu); 2.程序設(shè)計; 3.計算機原理; 4.匯編語言。,1.1.5課程安排和要求,總學(xué)時 48 平時成績: 上機,作業(yè),出勤,1.2 操作系統(tǒng)的目標(biāo)和作用,1.2.1 操作系統(tǒng)的目標(biāo),目前存在著多種類型的OS,不同類型的OS,其目標(biāo)各有所側(cè)重。通常在計算機硬件上配置的OS,其目標(biāo)有以下幾點: 1. 方便性 2. 有效性 3. 可擴充性 4. 開放性,1.2.2 操作系統(tǒng)的作用,1.OS作為用戶與計算機
3、硬件系統(tǒng)之間的接口,(1) 命令方式。這是指由OS提供了一組聯(lián)機命令(語言), 用戶可通過鍵盤輸入有關(guān)命令,來直接操縱計算機系統(tǒng)。 (2) 系統(tǒng)調(diào)用方式。OS提供了一組系統(tǒng)調(diào)用,用戶可在自己的應(yīng)用程序中通過相應(yīng)的系統(tǒng)調(diào)用,來操縱計算機。 (3) 圖形、窗口方式。用戶通過屏幕上的窗口和圖標(biāo)來操縱計算機系統(tǒng)和運行自己的程序。,2. OS作為計算機系統(tǒng)資源的管理者 OS的主要功能對計算機軟硬資源進(jìn)行管理 處理機管理: 用于分配和控制處理機; 存儲器管理:主要負(fù)責(zé)內(nèi)存的分配與回收; I/O設(shè)備管理:負(fù)責(zé)I/O設(shè)備的分配與操縱; 文件管理:負(fù)責(zé)文件的存取、共享和保護。,3. OS用作擴充機器 裸機:一臺
4、完全無軟件的計算機系統(tǒng) 虛機器:配置了軟件, 比裸機功能更強、使用更方便的機器。,終端用戶,應(yīng)用程序,實用程序,操作系統(tǒng),計算機硬件,程序員,操作系統(tǒng)設(shè)計者,1.2.3 推動操作系統(tǒng)發(fā)展的主要動力,1.不斷提高計算機資源利用率 2. 方便用戶 3. 器件的不斷更新?lián)Q代 4. 計算機體系結(jié)構(gòu)的不斷發(fā)展,1.3 操作系統(tǒng)的發(fā)展過程,1.3.1 無操作系統(tǒng)的計算機系統(tǒng),1. 人工操作方式 未出現(xiàn)OS。 采用人工操作方式直接使用計算機硬件系統(tǒng),,特點:沒有OS,沒有軟件 效率低:,手工裝卸紙帶 計算機各部件串行工作,2. 脫機輸入/輸出(Off-Line I/O)方式,這種脫機I/O方式的主要優(yōu)點如下
5、: 減少了CPU的空閑時間。 (2) 提高I/O速度。,圖 1-2 脫機I/O示意圖,1.3.2 單道批處理系統(tǒng),單道批處理系統(tǒng)的中心思想是,通過應(yīng)用一種被 稱為監(jiān)控器的軟件,使用戶不必再直接接觸機 器,而是先通過卡片機和紙帶機向計算機控制器 提交作業(yè),由監(jiān)控器將作業(yè)組織在一起構(gòu)成一批 作業(yè),然后將整批作業(yè)放入由監(jiān)控器管理的輸入 設(shè)備上,每當(dāng)一個程序執(zhí)行完畢返回監(jiān)控器時, 監(jiān)控器已自動裝入下一個程序。,1. 單道批處理系統(tǒng)(Simple Batch Processing System)的處理過程,圖 1-3 單道批處理系統(tǒng)的處理流程,2. 單道批處理系統(tǒng)的特征 (1) 自動性。 (2) 順序性
6、。 (3) 單道性。,1.3.3 多道批處理系統(tǒng),1. 多道程序設(shè)計的基本概念 通過軟件技術(shù)使同時進(jìn)入計算機內(nèi)存的幾個相互獨立的程序,在管理程序控制穿插運行,圖 1-4 單道和多道程序運行情況,2. 多道批處理系統(tǒng)的特征,多道性。 (2)宏觀上并行 (3) 微觀上串行。,3. 多道批處理系統(tǒng)的優(yōu)缺點,資源利用率高。 (2) 系統(tǒng)吞吐量大。 (3) 平均周轉(zhuǎn)時間長。 (4) 無交互能力。,4. 多道批處理系統(tǒng)需要解決的問題,處理機管理問題。 (2) 內(nèi)存管理問題。 (3) I/O設(shè)備管理問題。 (4) 文件管理問題。 (5) 作業(yè)管理問題。,設(shè)想一臺電腦配備256KB的可用內(nèi)存空間(未被OS占用
7、的),一個磁盤,一個終端和一臺打印機。3個程序JOB1、JOB2和JOB3,同時被提交執(zhí)行,如下表所列。,多道程序設(shè)計在提高資源利用率方面產(chǎn)生的效果,1.3.4 分時系統(tǒng),1. 分時系統(tǒng)(Time-Sharing System)的概念 一臺主機上連接多個鍵盤顯示終端,用戶可以通過各自的終端,以交互方式使用計算機,共享計算機軟硬資源。 (1) 人機交互。 (2) 共享主機。 (3) 便于用戶上機。,2. 分時系統(tǒng)實現(xiàn)中的關(guān)鍵問題,為實現(xiàn)分時系統(tǒng),其中,最關(guān)鍵的問題是如何使用戶能與自己的作業(yè)進(jìn)行交互,即當(dāng)用戶在自己的終端上鍵入命令時, 系統(tǒng)應(yīng)能及時接收并及時處理該命令,再將結(jié)果返回給用戶。 此后,
8、 用戶可繼續(xù)鍵入下一條命令,此即人機交互。應(yīng)強調(diào)指出,即使有多個用戶同時通過自己的鍵盤鍵入命令,系統(tǒng)也應(yīng)能全部地及時接收并處理,(1) 及時接收。,(2) 及時處理。,3. 分時系統(tǒng)的特征,多路性。 (2) 獨立性。 (3) 及時性。 (4) 交互性。,1.3.5 實時系統(tǒng),所謂“實時”,是表示“及時”,而實時系統(tǒng)(Real-Time System)是指系統(tǒng)能及時(或即時)響應(yīng)外部事件的請求,在規(guī)定的時間內(nèi)完成對該事件的處理,并控制所有實時任務(wù)協(xié)調(diào)一致地運行。,1. 應(yīng)用需求,實時控制。 (2) 實時信息處理。,2. 實時任務(wù),1) 按任務(wù)執(zhí)行時是否呈現(xiàn)周期性來劃分 周期性實時任務(wù)。 (2)
9、非周期性實時任務(wù)。,外部設(shè)備所發(fā)出的激勵信號并無明顯的周期性,但都必須聯(lián)系著一個截止時間(Deadline)。它又可分為: 開始截止時間任務(wù)在某時間以前必須開始執(zhí)行; 完成截止時間任務(wù)在某時間以前必須完成。,2) 根據(jù)對截止時間的要求來劃分 (1) 硬實時任務(wù)(hard real-time task)。系統(tǒng)必須滿足任務(wù)對截止時間的要求,否則可能出現(xiàn)難以預(yù)測的結(jié)果。 (2) 軟實時任務(wù)(Soft real-time task)。它也聯(lián)系著一個截止時間, 但并不嚴(yán)格,若偶爾錯過了任務(wù)的截止時間, 對系統(tǒng)產(chǎn)生的影響也不會太大。,3. 實時系統(tǒng)與分時系統(tǒng)特征的比較 多路性。 (2) 獨立性。 (3)
10、及時性。 (4) 交互性。 (5) 可靠性。,1.4 操作系統(tǒng)的基本特性,1.4.1 并發(fā)(Concurrence),并行性和并發(fā)性是既相似又有區(qū)別的兩個概念 并行性是指兩個或多個事件在同一時刻發(fā)生; 并發(fā)性是指兩個或多個事件在同一時間間隔內(nèi)發(fā)生。,1.4.2 共享(Sharing) 所謂共享是指系統(tǒng)中的資源可供內(nèi)存中多個并發(fā)執(zhí)行的進(jìn)程(線程)共同使用。由于資源屬性的不同,進(jìn)程對資源共享的方式也不同,目前主要有以下兩種資源共享方式。,1. 互斥共享方式 互斥共享規(guī)定在一段時間內(nèi)只允許一個進(jìn)程(線程)訪問該資源。為此,當(dāng)一個進(jìn)程A要訪問某資源時,必須先提出請求, 如果此時該資源空閑,系統(tǒng)便可將之
11、分配給請求進(jìn)程A使用, 此后若再有其它進(jìn)程也要訪問該資源時(只要A未用完)則必須等待。 僅當(dāng)A進(jìn)程訪問完并釋放該資源后, 才允許另一進(jìn)程對該資源進(jìn)行訪問。我們把這種資源共享方式稱為互斥式共享,而把在一段時間內(nèi)只允許一個進(jìn)程訪問的資源稱為臨界資源或獨占資源。,2. 同時訪問方式 系統(tǒng)中還有另一類資源,允許在一段時間內(nèi)由多個進(jìn)程“同時”對它們進(jìn)行訪問。這里所謂的“同時”往往是宏觀上的,而在微觀上,這些進(jìn)程可能是交替地對該資源進(jìn)行訪問。典型的可供多個進(jìn)程“同時”訪問的資源是磁盤設(shè)備,一些用重入碼編寫的文件,也可以被“同時”共享,即若干個用戶同時訪問該文件。,1.4.3 虛擬(Virtual) 操作系
12、統(tǒng)中的所謂“虛擬”,是指通過某種技術(shù)把一個物理實體變?yōu)槿舾蓚€邏輯上的對應(yīng)物。物理實體(前者)是實的, 即實際存在的;而后者是虛的,是用戶感覺上的東西。相應(yīng)地,用于實現(xiàn)虛擬的技術(shù),稱為虛擬技術(shù)。 虛擬技術(shù)分時分復(fù)用技術(shù)和空分復(fù)用技術(shù),1.4.4 異步性(Asynchronism),所謂異步性指進(jìn)程是以人們不可預(yù)知的速度向前推進(jìn)。 盡管進(jìn)程的運行時異步的,但只要運行環(huán)境相同,作業(yè)經(jīng)多次運行,都會獲得完全相同的結(jié)果。因此,異步運行方式是允許的,是操作系統(tǒng)的一個重要特征。,1.5 操作系統(tǒng)的主要功能,1.5.1 處理機管理功能,1. 進(jìn)程控制 進(jìn)程控制的主要功能是為作業(yè)創(chuàng)建進(jìn)程、撤消已結(jié)束的進(jìn)程,以及
13、控制進(jìn)程在運行過程中的狀態(tài)轉(zhuǎn)換。,2. 進(jìn)程同步 進(jìn)程同步的主要任務(wù)是為多個進(jìn)程(含線程)的運行進(jìn)行協(xié)調(diào)。有兩種協(xié)調(diào)方式: 進(jìn)程互斥方式, 這是指諸進(jìn)程(線程)在對臨界資源進(jìn)行訪問時, 應(yīng)采用互斥方式; 進(jìn)程同步方式,指在相互合作去完成共同任務(wù)的諸進(jìn)程(線程)間,由同步機構(gòu)對它們的執(zhí)行次序加以協(xié)調(diào)。,3. 進(jìn)程通信 在多道程序環(huán)境下,為了加速應(yīng)用程序的運行,應(yīng)在系統(tǒng)中建立多個進(jìn)程,并且再為一個進(jìn)程建立若干個線程,由這些進(jìn)程(線程)相互合作去完成一個共同的任務(wù)。而在這些進(jìn)程(線程)之間,又往往需要交換信息。例如,有三個相互合作的進(jìn)程, 它們是輸入進(jìn)程、計算進(jìn)程和打印進(jìn)程。輸入進(jìn)程負(fù)責(zé)將所輸入的數(shù)
14、據(jù)傳送給計算進(jìn)程;計算進(jìn)程利用輸入數(shù)據(jù)進(jìn)行計算, 并把計算結(jié)果傳送給打印進(jìn)程;最后,由打印進(jìn)程把計算結(jié)果打印出來。進(jìn)程通信的任務(wù)就是用來實現(xiàn)在相互合作的進(jìn)程之間的信息交換。,4. 調(diào)度 在后備隊列上等待的每個作業(yè),通常都要經(jīng)過調(diào)度才能執(zhí)行。 處理機的調(diào)度分3級:作業(yè)調(diào)度、中級調(diào)度、進(jìn)程調(diào)度,1.5.2 存儲器管理功能,1. 內(nèi)存分配,OS在實現(xiàn)內(nèi)存分配時,可采取靜態(tài)和動態(tài)兩種方式。在靜態(tài)分配方式中,每個作業(yè)的內(nèi)存空間是在作業(yè)裝入時確定的;在作業(yè)裝入后的整個運行期間, 不允許該作業(yè)再申請新的內(nèi)存空間,也不允許作業(yè)在內(nèi)存中“移動”; 在動態(tài)分配方式中,每個作業(yè)所要求的基本內(nèi)存空間, 也是在裝入時確
15、定的,但允許作業(yè)在運行過程中,繼續(xù)申請新的附加內(nèi)存空間,以適應(yīng)程序和數(shù)據(jù)的動態(tài)增漲,也允許作業(yè)在內(nèi)存中“移動”。,為了實現(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)存空間; 內(nèi)存回收功能,系統(tǒng)對于用戶不再需要的內(nèi)存,通過用戶的釋放請求,去完成系統(tǒng)的回收功能。,2. 內(nèi)存保護 內(nèi)存保護的主要任務(wù),是確保每道用戶程序都只在自己的內(nèi)存空間內(nèi)運行,彼此互不干擾。 為了確保每道程序都只在自己的內(nèi)存區(qū)中運行,必須設(shè)置內(nèi)存保護機制。,3. 地址映射 地址映射也
16、稱地址重定位主要解決地址空間內(nèi)的邏輯地址和內(nèi)存空間中的物理地址不相一致。使程序能正確運行,存儲器管理必須提供地址映射功能,以將地址空間中的邏輯地址轉(zhuǎn)換為內(nèi)存空間中與之對應(yīng)的物理地址。 地址重定位分靜態(tài)地址重定位和動態(tài)地址重定位,4. 內(nèi)存擴充 存儲器管理中的內(nèi)存擴充任務(wù),并非是去擴大物理內(nèi)存的容量,而是借助于虛擬存儲技術(shù),從邏輯上去擴充內(nèi)存容量。為了能在邏輯上擴充內(nèi)存,系統(tǒng)必須具有內(nèi)存擴充機制, 用于實現(xiàn)下述各功能: (1) 請求調(diào)入功能。 (2) 置換功能。,1.5.3 設(shè)備管理功能 設(shè)備管理用于管理計算機系統(tǒng)中所有的外圍設(shè)備, 而設(shè)備管理的主要任務(wù)是:完成用戶進(jìn)程提出的I/O請求; 為用戶
17、進(jìn)程分配其所需的I/O設(shè)備;提高CPU和I/O設(shè)備的利用率;提高I/O速度;方便用戶使用I/O設(shè)備。為實現(xiàn)上述任務(wù),設(shè)備管理應(yīng)具有緩沖管理、設(shè)備分配和設(shè)備處理,以及虛擬設(shè)備等功能。,1. 緩沖管理 CPU運行的高速性和I/O低速性間的矛盾自計算機誕生時起便已存在。 而隨著CPU速度迅速、大幅度的提高,使得此矛盾更為突出,嚴(yán)重降低了CPU的利用率。如果在I/O設(shè)備和CPU之間引入緩沖,則可有效地緩和CPU和I/O設(shè)備速度不匹配的矛盾,提高CPU的利用率,進(jìn)而提高系統(tǒng)吞吐量。 因此,在現(xiàn)代計算機系統(tǒng)中, 都毫無例外地在內(nèi)存中設(shè)置了緩沖區(qū)。 最常見的緩沖區(qū)機制有單緩沖機制、雙緩沖機制,以及能供多個設(shè)
18、備同時使用的公用緩沖池機制。,2. 設(shè)備分配 設(shè)備分配的基本任務(wù),是根據(jù)用戶進(jìn)程的I/O請求、系統(tǒng)的現(xiàn)有資源情況以及按照某種設(shè)備分配策略,為之分配其所需的設(shè)備。如果在I/O設(shè)備和CPU之間,還存在著設(shè)備控制器和I/O通道時,還須為分配出去的設(shè)備分配相應(yīng)的控制器和通道。,3. 設(shè)備處理 設(shè)備處理程序又稱為設(shè)備驅(qū)動程序。其基本任務(wù)是用于實現(xiàn)CPU和設(shè)備控制器之間的通信,即由CPU向設(shè)備控制器發(fā)出I/O命令,要求它完成指定的I/O操作;反之由CPU接收從控制器發(fā)來的中斷請求,并給予迅速的響應(yīng)和相應(yīng)的處理。 處理過程是:設(shè)備處理程序首先檢查I/O請求的合法性,了解設(shè)備狀態(tài)是否是空閑的,了解有關(guān)的傳遞參
19、數(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è)置了通道的計算機系統(tǒng), 設(shè)備處理程序還應(yīng)能根據(jù)用戶的I/O請求,自動地構(gòu)成通道程序。,1.5.4 文件管理功能,1. 文件存儲空間的管理 由文件系統(tǒng)對諸多文件及文件的存儲空間,實施統(tǒng)一的管理。其主要任務(wù)是為每個文件分配必要的外存空間,提高外存的利用率,并能有助于提高文件系統(tǒng)的運行速度。 為此,系統(tǒng)應(yīng)設(shè)置相應(yīng)的數(shù)據(jù)結(jié)構(gòu),用于記錄文件存儲空間的使用情況,以供分配存儲空間時參考;系統(tǒng)還應(yīng)具有對
20、存儲空間進(jìn)行分配和回收的功能。為了提高存儲空間的利用率。,2. 目錄管理 為了使用戶能方便地在外存上找到自己所需的文件,通常由系統(tǒng)為每個文件建立一個目錄項。目錄項包括文件名、文件屬性、文件在磁盤上的物理位置等。由若干個目錄項又可構(gòu)成一個目錄文件。 目錄管理的主要任務(wù):1)為每個文件建立目錄項,對目錄項加以有效的組織,以實現(xiàn)方便的按名存取。 2)目錄管理還應(yīng)能實現(xiàn)文件共享。3)合理組織目錄結(jié)構(gòu),以提高對文件的檢索速度。,3. 文件的讀/寫管理和保護 (1) 文件的讀/寫管理。該功能是根據(jù)用戶的請求,從外存中讀取數(shù)據(jù);或?qū)?shù)據(jù)寫入外存。在進(jìn)行文件讀(寫)時,系統(tǒng)先根據(jù)用戶給出的文件名,去檢索文件目
21、錄,從中獲得文件在外存中的位置。然后,利用文件讀(寫)指針,對文件進(jìn)行讀(寫)。一旦讀(寫)完成,便修改讀(寫)指針,為下一次讀(寫)做好準(zhǔn)備。 (2) 文件保護。 防止未經(jīng)核準(zhǔn)的用戶存取文件; 防止冒名頂替存取文件; 防止以不正確的方式使用文件。,1.5.5 用戶接口,1. 命令接口,(1) 聯(lián)機用戶接口。這是為聯(lián)機用戶提供的,它由一組鍵盤操作命令及命令解釋程序所組成。當(dāng)用戶在終端或控制臺上每鍵入一條命令后,系統(tǒng)便立即轉(zhuǎn)入命令解釋程序,對該命令加以解釋并執(zhí)行該命令。在完成指定功能后,控制又返回到終端或控制臺上,等待用戶鍵入下一條命令。這樣,用戶可通過先后鍵入不同命令的方式,來實現(xiàn)對作業(yè)的控制
22、,直至作業(yè)完成。,(2) 脫機用戶接口。該接口是為批處理作業(yè)的用戶提供的,故也稱為批處理用戶接口。該接口由一組作業(yè)控制語言JCL組成。,2. 程序接口 該接口是為用戶程序在執(zhí)行中訪問系統(tǒng)資源而設(shè)置的,是用戶程序取得操作系統(tǒng)服務(wù)的惟一途徑。它是由一組系統(tǒng)調(diào)用組成,每一個系統(tǒng)調(diào)用都是一個能完成特定功能的子程序。,3. 圖形接口 圖形用戶接口采用了圖形化的操作界面, 用非常容易識別的各種圖標(biāo)(icon)來將系統(tǒng)的各項功能、各種應(yīng)用程序和文件,直觀、逼真地表示出來。用戶可用鼠標(biāo)或通過菜單和對話框,來完成對應(yīng)用程序和文件的操作。,1.6 操作系統(tǒng)的結(jié)構(gòu)設(shè)計,1.6.1 傳統(tǒng)的操作系統(tǒng)結(jié)構(gòu) 操作系統(tǒng)是一個
23、十分復(fù)雜的大型軟件。為了控制該軟件的復(fù)雜性,在開發(fā)OS時,先后引入了分解、模塊化、 抽象和隱蔽等方法。開發(fā)方法的不斷發(fā)展,促進(jìn)了OS結(jié)構(gòu)的更新?lián)Q代。這里,我們把第一代至第三代的OS結(jié)構(gòu), 稱為傳統(tǒng)的OS結(jié)構(gòu),而把微內(nèi)核的OS結(jié)構(gòu)稱為現(xiàn)代OS結(jié)構(gòu)。,1. 無結(jié)構(gòu)操作系統(tǒng) 在早期開發(fā)操作系統(tǒng)時,設(shè)計者只是把他的注意力放在功能的實現(xiàn)和獲得高的效率上,缺乏首尾一致的設(shè)計思想。 此時的OS是為數(shù)眾多的一組過程的集合,各過程之間可以相互調(diào)用,在操作系統(tǒng)內(nèi)部不存在任何結(jié)構(gòu),因此,這種OS是無結(jié)構(gòu)的,也有人把它稱為整體系統(tǒng)結(jié)構(gòu)。 此時程序設(shè)計的技巧,只是如何編制緊湊的程序,以便于有效地利用內(nèi)存、對GOTO語句
24、的使用不加任何限制,所設(shè)計出的操作系統(tǒng)既龐大又雜亂,缺乏清晰的程序結(jié)構(gòu)。這一方面會使所編制出的程序錯誤很多,給調(diào)試工作帶來很多困難;另一方面也使程序難以閱讀和理解,增加了維護人員的負(fù)擔(dān)。,2. 模塊化OS結(jié)構(gòu) 1) 模塊化結(jié)構(gòu) 模塊化程序設(shè)計是把一個大的軟件系統(tǒng)劃分為若干部分,使各部分之間的交往最少,且各自成為具有一定獨立功能的程序模塊,然后可以對系統(tǒng)中每一部分單獨進(jìn)行設(shè)計 劃分模塊標(biāo)準(zhǔn):高內(nèi)聚性,低耦合度,圖 1-5 模塊化操作系統(tǒng)結(jié)構(gòu),2) 模塊化OS的優(yōu)缺點 提高了OS設(shè)計的正確性、 可理解性和可維護性。 (2) 增強了OS的可適應(yīng)性。 (3) 加速了OS的開發(fā)過程。,模塊化結(jié)構(gòu)設(shè)計的缺
25、點有二。首先,在開始設(shè)計OS時,對模塊的劃分及對接口的規(guī)定并不精確, 而且還可能存在錯誤,因而很難保證按此規(guī)定所設(shè)計出的模塊會完全正確, 這將使在把這些模塊裝配成OS時發(fā)生困難;其次,由于管理上的差異,又會使模塊間存在著復(fù)雜的依賴關(guān)系使OS結(jié)構(gòu)變得不清晰。,3. 分層式OS結(jié)構(gòu),1) 有序分層的基本概念 從改進(jìn)設(shè)計方式上說,應(yīng)使我們的每一步設(shè)計都是建立在可靠的基礎(chǔ)上。我們可以從物理機器開始, 在其上面先添加一層具有一定功能的軟件A1, 由于A1是建立在完全確定的物理機器上的,在經(jīng)過精心設(shè)計和幾乎是窮盡無遺的測試后,可以認(rèn)為A1是正確的;然后再在A1上添加一層新軟件A2,如此一層一層地自底向上增
26、添軟件層,每一層都實現(xiàn)若干功能,最后總能構(gòu)成一個能滿足需要的OS。,分層式結(jié)構(gòu)設(shè)計的基本原則是:每一層都僅使用其底層所提供的功能和服務(wù),這樣可使系統(tǒng)的調(diào)試和驗證都變得容易, 例如,在調(diào)試第一層軟件A1時,由于它只使用了物理機器提供的功能,因此它將與其所有的高層軟件A2,An無關(guān); 同樣在調(diào)試A2時,它也只使用了A1和物理機器所提供的功能, 而與其高層軟件A3, ,An無關(guān),這樣,一旦發(fā)現(xiàn)Ai出現(xiàn)錯誤時,通常該錯誤只會局限于Ai,因為它與所有其高層的軟件無關(guān),而Ai層以下的各層軟件,又都經(jīng)過仔細(xì)的調(diào)試。,2)分層結(jié)構(gòu)的優(yōu)缺點: 優(yōu)點:易保證系統(tǒng)的正確性 易擴充和維護 缺點: 系統(tǒng)效率降低(層次結(jié)
27、構(gòu)是單向依賴的) 每執(zhí)行一個操作系統(tǒng)的功能可能需要穿越幾個層 次,增加了層次間通信的開銷,1.6.2 微內(nèi)核OS結(jié)構(gòu),1. 客戶/服務(wù)器模式(Client-Server Model) 1) 基本概念 為了提高OS的靈活性和可擴充性而將OS劃分為兩部分, 一部分是用于提供各種服務(wù)的一組服務(wù)器(進(jìn)程),如用于提供進(jìn)程管理的進(jìn)程服務(wù)器、提供存儲器管理的存儲器服務(wù)器提供文件管理的文件服務(wù)器等,所有這些服務(wù)器(進(jìn)程)都運行在用戶態(tài)。 操作系統(tǒng)的另一部分是內(nèi)核,用來處理客戶和服務(wù)器之間的通信。即由內(nèi)核來接收客戶的請求,再將該請求送至相應(yīng)的服務(wù)器;同時它也接收服務(wù)器的應(yīng)答, 并將此應(yīng)答回送給請求客戶。 此外
28、,在內(nèi)核中還應(yīng)具有其它一些機構(gòu),用于實現(xiàn)與硬件緊密相關(guān)的和一些較基本的功能。,圖 1-6 單機環(huán)境下的客戶/服務(wù)器模式,2) 客戶/服務(wù)器模式的優(yōu)點 提高了系統(tǒng)的靈活性和可擴充性。 (2) 提高了OS的可靠性。 (3) 可運行于分布式系統(tǒng)中。,2. 面向?qū)ο蟮某绦蛟O(shè)計技術(shù)(Object-Orientated Programming),1) 面向?qū)ο蠹夹g(shù)的基本概念 面向?qū)ο蠹夹g(shù)是20世紀(jì)80年代初提出并很快流行起來的。該技術(shù)是基于“抽象”和“隱蔽”原則來控制大型軟件的復(fù)雜度的。所謂對象,是指在現(xiàn)實世界中具有相同屬性、服從相同規(guī)則的一系列事物的抽象,而把其中的具體事物稱為對象的實例。OS中的各類實體如進(jìn)程、線程、消息、存儲器等,都使用了對象這一概念,相應(yīng)地,便有進(jìn)程對象線程對象、 存儲器對象等。,圖 1-7 一個對象的示意圖,2) 面向?qū)ο蠹夹g(shù)的優(yōu)點 (1) 可修改性和可擴充性。由于隱蔽了表示實體的數(shù)據(jù)和操作,因而可以改變對象的表示而不會影響其它部分, 從而可以方便地改變老的對象和增加新的對象。 (2) 繼承性。繼承性是面向?qū)?/p>
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 寫作素材:為有源頭活水來
- 光化還原實驗數(shù)據(jù)保密工作制度
- 2026年劇本殺運營公司員工溝通技巧培訓(xùn)管理制度
- 2026年劇本殺運營公司媒體對接與采訪管理制度
- 2026年教育科技領(lǐng)域創(chuàng)新模式報告及未來五年發(fā)展規(guī)劃報告
- 2026年航空航天行業(yè)可重復(fù)使用技術(shù)與應(yīng)用前景報告
- 2025年能源行業(yè)風(fēng)能發(fā)電技術(shù)報告
- 2026年智慧城市大數(shù)據(jù)創(chuàng)新報告
- 全員質(zhì)量創(chuàng)新制度
- 云南介紹英語
- 2026年中國航空傳媒有限責(zé)任公司市場化人才招聘備考題庫有答案詳解
- 2026年《全科》住院醫(yī)師規(guī)范化培訓(xùn)結(jié)業(yè)理論考試題庫及答案
- 2026北京大興初二上學(xué)期期末語文試卷和答案
- 重力式擋土墻施工安全措施
- 葫蘆島事業(yè)單位筆試真題2025年附答案
- 2026年公平競爭審查知識競賽考試題庫及答案(一)
- 置業(yè)顧問2025年度工作總結(jié)及2026年工作計劃
- 金華市軌道交通控股集團有限公司招聘筆試題庫2026
- 2025年國考科技部英文面試題庫及答案
- 2026年AI輔助教學(xué)設(shè)計工具應(yīng)用指南與課程優(yōu)化技巧
- 2026屆陜西省西安市高新一中化學(xué)高二上期末聯(lián)考試題含答案
評論
0/150
提交評論