




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、,第一章 操作系統(tǒng)引論,1.1 操作系統(tǒng)的目標和作用 1.2 操作系統(tǒng)的發(fā)展過程 1.3 操作系統(tǒng)的基本特性 1.4 操作系統(tǒng)的主要功能 1.5 OS結構設計 習題,1.1 操作系統(tǒng)的目標和作用操作系統(tǒng)的目標與應用環(huán)境有關。例如在查詢系統(tǒng)中所用的OS,希望能提供良好的人機交互性;對于應用于工業(yè)控制、武器控制以及多媒體環(huán)境下的OS,要求其具有實時性;而對于微機上配置的OS,則更看重的是其使用的方便性。,1.1.1 操作系統(tǒng)的目標1. 方便性2. 有效性 3. 可擴充性4. 開放性,1.1.2 操作系統(tǒng)的作用 1. OS作為用戶與計算機硬件系統(tǒng)之間的接口OS作為用戶與計算機硬件系統(tǒng)之間接口的含義是
2、:OS處于用戶與計算機硬件系統(tǒng)之間,用戶通過OS來使用計算機系統(tǒng)。或者說,用戶在OS幫助下能夠方便、快捷、可靠地操縱計算機硬件和運行自己的程序。圖1-1是OS作為接口的示意圖。,圖1-1 OS作為接口的示意圖,2. OS作為計算機系統(tǒng)資源的管理者在一個計算機系統(tǒng)中,通常都含有多種硬件和軟件資源。歸納起來可將這些資源分為四類:處理機、存儲器、I/O設備以及文件(數(shù)據(jù)和程序)。相應地,OS的主要功能也正是對這四類資源進行有效的管理。處理機管理是用于分配和控制處理機;存儲器管理主要負責內存的分配與回收;I/O設備管理是負責I/O設備的分配(回收)與操縱;文件管理是用于實現(xiàn)對文件的存取、共享和保護???/p>
3、見,OS的確是計算機系統(tǒng)資源的管理者。,3. OS實現(xiàn)了對計算機資源的抽象對于一臺完全無軟件的計算機系統(tǒng)(即裸機),由于它向用戶提供的僅是硬件接口(物理接口),因此,用戶必須對物理接口的實現(xiàn)細節(jié)有充分的了解,這就致使該物理機器難于廣泛使用。為了方便用戶使用I/O設備,人們在裸機上覆蓋上一層I/O設備管理軟件,如圖1-2所示,由它來實現(xiàn)對I/O設備操作的細節(jié),并向上將I/O設備抽象為一組數(shù)據(jù)結構以及一組I/O操作命令,如read和write命令,這樣用戶即可利用這些數(shù)據(jù)結構及操作命令來進行數(shù)據(jù)輸入或輸出,而無需關心I/O是如何具體實現(xiàn)的。,圖1-2 I/O軟件隱藏了I/O操作實現(xiàn)的細節(jié),1.1.
4、3 推動操作系統(tǒng)發(fā)展的主要動力 1不斷提高計算機資源利用率2. 方便用戶3. 器件的不斷更新?lián)Q代4. 計算機體系結構的不斷發(fā)展5. 不斷提出新的應用需求,1.2 操作系統(tǒng)的發(fā)展過程在20世紀50年代中期,出現(xiàn)了第一個簡單的批處理OS;60年代中期開發(fā)出多道程序批處理系統(tǒng);不久又推出分時系統(tǒng),與此同時,用于工業(yè)和武器控制的實時OS也相繼問世。20世紀70到90年代,是VLSI和計算機體系結構大發(fā)展的年代,導致了微型機、多處理機和計算機網(wǎng)絡的誕生和發(fā)展,與此相應地,也相繼開發(fā)出了微機OS、多處理機OS和網(wǎng)絡OS,并得到極為迅猛的發(fā)展。,1.2.1 未配置操作系統(tǒng)的計算機系統(tǒng) 1. 人工操作方式早期
5、的操作方式是由程序員將事先已穿孔的紙帶(或卡片),裝入紙帶輸入機(或卡片輸入機),再啟動它們將紙帶(或卡片)上的程序和數(shù)據(jù)輸入計算機,然后啟動計算機運行。僅當程序運行完畢并取走計算結果后,才允許下一個用戶上機。這種人工操作方式有以下兩方面的缺點:(1) 用戶獨占全機,即一臺計算機的全部資源由上機用戶所獨占。(2) CPU等待人工操作。當用戶進行裝帶(卡)、卸帶(卡)等人工操作時,CPU及內存等資源是空閑的。,2. 脫機輸入/輸出(Off-Line I/O)方式為了解決人機矛盾及CPU和I/O設備之間速度不匹配的矛盾,20世紀50年代末出現(xiàn)了脫機I/O技術。該技術是事先將裝有用戶程序和數(shù)據(jù)的紙帶
6、裝入紙帶輸入機,在一臺外圍機的控制下,把紙帶(卡片)上的數(shù)據(jù)(程序)輸入到磁帶上。當CPU需要這些程序和數(shù)據(jù)時,再從磁帶上高速地調入內存。,圖1-3 脫機I/O示意圖,1.2.2 單道批處理系統(tǒng) 1. 單道批處理系統(tǒng)(Simple Batch Processing System)的處理過程為實現(xiàn)對作業(yè)的連續(xù)處理,需要先把一批作業(yè)以脫機方式輸入到磁帶上,并在系統(tǒng)中配上監(jiān)督程序(Monitor),在它的控制下,使這批作業(yè)能一個接一個地連續(xù)處理。,圖1-4 單道批處理系統(tǒng)的處理流程,2. 單道批處理系統(tǒng)的缺點單道批處理系統(tǒng)最主要的缺點是,系統(tǒng)中的資源得不到充分的利用。這是因為在內存中僅有一道程序,每
7、逢該程序在運行中發(fā)出I/O請求后,CPU便處于等待狀態(tài),必須在其I/O完成后才繼續(xù)運行。又因I/O設備的低速性,更使CPU的利用率顯著降低。圖1-5示出了單道程序的運行情況,從圖可以看出:在t2t3、t6t7時間間隔內CPU空閑。,圖1-5 單道程序的運行情況,1.2.3 多道批處理系統(tǒng)(Multiprogrammed Batch Processing System)1. 多道程序設計的基本概念為了進一步提高資源的利用率和系統(tǒng)吞吐量,在20世紀60年代中期引入了多道程序設計技術,由此形成了多道批處理系統(tǒng)。圖1-6示出了四道程序時的運行情況。,圖1-6 多道程序的運行情況,2. 多道批處理系統(tǒng)的
8、優(yōu)缺點多道批處理系統(tǒng)的優(yōu)缺點如下:(1) 資源利用率高。引入多道批處理能使多道程序交替運行,以保持CPU處于忙碌狀態(tài);在內存中裝入多道程序可提高內存的利用率;此外還可以提高I/O設備的利用率。(2) 系統(tǒng)吞吐量大。能提高系統(tǒng)吞吐量的主要原因可歸結為: CPU和其它資源保持“忙碌”狀態(tài); 僅當作業(yè)完成時或運行不下去時才進行切換,系統(tǒng)開銷小。,(3) 平均周轉時間長。由于作業(yè)要排隊依次進行處理,因而作業(yè)的周轉時間較長,通常需幾個小時,甚至幾天。(4) 無交互能力。用戶一旦把作業(yè)提交給系統(tǒng)后,直至作業(yè)完成,用戶都不能與自己的作業(yè)進行交互,修改和調試程序極不方便。,3. 多道批處理系統(tǒng)需要解決的問題多
9、道批處理系統(tǒng)是一種十分有效,但又非常復雜的系統(tǒng),為使系統(tǒng)中的多道程序間能協(xié)調地運行,系統(tǒng)必須解決下述一系列問題:(1) 處理機爭用問題。既要能滿足各道程序運行的需要,又要能提高處理機的利用率。(2) 內存分配和保護問題。系統(tǒng)應能為每道程序分配必要的內存空間,使它們“各得其所”,且不會因某道程序出現(xiàn)異常情況而破壞其它程序。(3) I/O設備分配問題。系統(tǒng)應采取適當?shù)牟呗詠矸峙湎到y(tǒng)中的I/O設備,以達到既能方便用戶對設備的使用,又能提高設備利用率的目的。,(4) 文件的組織和管理問題。系統(tǒng)應能有效地組織存放在系統(tǒng)中的大量的程序和數(shù)據(jù),使它們既便于用戶使用,又能保證數(shù)據(jù)的安全性。(5) 作業(yè)管理問題
10、。系統(tǒng)中存在著各種作業(yè)(應用程序),系統(tǒng)應能對系統(tǒng)中所有的作業(yè)進行合理的組織,以滿足這些作業(yè)用戶的不同要求。(6) 用戶與系統(tǒng)的接口問題。為使用戶能方便的使用操作系統(tǒng),OS還應提供用戶與OS之間的接口。,1.2.4 分時系統(tǒng)(Time Sharing System) 1. 分時系統(tǒng)的引入如果說推動多道批處理系統(tǒng)形成和發(fā)展的主要動力是提高資源利用率和系統(tǒng)吞吐量,那么,推動分時系統(tǒng)形成和發(fā)展的主要動力,則是為了滿足用戶對人機交互的需求,由此形成了一種新型OS。用戶的需求具體表現(xiàn)在以下幾個方面:(1) 人機交互。(2) 共享主機。,2. 分時系統(tǒng)實現(xiàn)中的關鍵問題在多道批處理系統(tǒng)中,用戶無法與自己的作
11、業(yè)進行交互的主要原因是:作業(yè)都先駐留在外存上,即使以后被調入內存,也要經(jīng)過較長時間的等待后方能運行,用戶無法與自己的作業(yè)進行交互。 1) 及時接收2) 及時處理,3. 分時系統(tǒng)的特征分時系統(tǒng)與多道批處理系統(tǒng)相比,具有非常明顯的不同特性,可以歸納成以下四個方面:(1) 多路性。(2) 獨立性。(3) 及時性。(4) 交互性。,1.2.5 實時系統(tǒng)(Real Time System) 1. 實時系統(tǒng)的類型隨著計算機應用的普及,實時系統(tǒng)的類型也相應增多,下面列出當前常見的幾種:(1) 工業(yè)(武器)控制系統(tǒng)。(2) 信息查詢系統(tǒng)。(3) 多媒體系統(tǒng)。(4) 嵌入式系統(tǒng)。,2. 實時任務的類型(1) 周
12、期性實時任務和非周期性實時任務。(2) 硬實時任務和軟實時任務。,3. 實時系統(tǒng)與分時系統(tǒng)特征的比較(1) 多路性。(2) 獨立性。(3) 及時性。(4) 交互性。(5) 可靠性。,1.2.6 微機操作系統(tǒng)的發(fā)展 1單用戶單任務操作系統(tǒng)1) CP/M 2) MS-DOS,2. 單用戶多任務操作系統(tǒng)單用戶多任務操作系統(tǒng)的含義是,只允許一個用戶上機,但允許用戶把程序分為若干個任務,使它們并發(fā)執(zhí)行,從而有效地改善了系統(tǒng)的性能。,3. 多用戶多任務操作系統(tǒng)多用戶多任務操作系統(tǒng)的含義是,允許多個用戶通過各自的終端,使用同一臺機器,共享主機系統(tǒng)中的各種資源,而每個用戶程序又可進一步分為幾個任務,使它們能并
13、發(fā)執(zhí)行,從而可進一步提高資源利用率和系統(tǒng)吞吐量。在大、中和小型機中所配置的大多是多用戶多任務操作系統(tǒng),而在32位微機上,也有不少配置的是多用戶多任務操作系統(tǒng),其中最有代表性的是UNIX OS。,1.3 操作系統(tǒng)的基本特性 前面所介紹的多道批處理系統(tǒng)、分時系統(tǒng)和實時系統(tǒng)這三種基本操作系統(tǒng)都具有各自不同的特征,如批處理系統(tǒng)有著高的資源利用率和系統(tǒng)吞吐量;分時系統(tǒng)能獲得及時響應;實時系統(tǒng)具有實時特征。除此之外,它們還共同具有并發(fā)、共享、虛擬和異步四個基本特征。,1.3.1 并發(fā)(Concurrence) 正是系統(tǒng)中的程序能并發(fā)執(zhí)行這一特征,才使得OS能有效地提高系統(tǒng)中的資源利用率,增加系統(tǒng)的吞吐量。
14、1. 并行與并發(fā)并行性和并發(fā)性是既相似又有區(qū)別的兩個概念。并行性是指兩個或多個事件在同一時刻發(fā)生。而并發(fā)性是指兩個或多個事件在同一時間間隔內發(fā)生。,2. 引入進程在一個未引入進程的系統(tǒng)中,在屬于同一個應用程序的計算程序和I/O程序之間只能是順序執(zhí)行,即只有在計算程序執(zhí)行告一段落后,才允許I/O程序執(zhí)行;反之,在程序執(zhí)行I/O操作時,計算程序也不能執(zhí)行。但在為計算程序和I/O程序分別建立一個進程(Process)后,這兩個進程便可并發(fā)執(zhí)行。若對內存中的多個程序都分別建立一個進程,它們就可以并發(fā)執(zhí)行,這樣便能極大地提高系統(tǒng)資源的利用率,增加系統(tǒng)的吞吐量。,1.3.2 共享(Sharing) 一般情
15、況下的共享與操作系統(tǒng)環(huán)境下的共享其含義并不完全相同。 1. 互斥共享方式 系統(tǒng)中的某些資源,如打印機、磁帶機等,雖然可以提供給多個進程(線程)使用,但應規(guī)定在一段時間內,只允許一個進程訪問該資源。為此,在系統(tǒng)中應建立一種機制,以保證多個進程對這類資源的互斥訪問。,2. 同時訪問方式系統(tǒng)中還有另一類資源,允許在一段時間內由多個進程“同時”對它們進行訪問。這里所謂的“同時”,在單處理機環(huán)境下是宏觀意義上的,而在微觀上,這些進程對該資源的訪問是交替進行的。典型的可供多個進程“同時”訪問的資源是磁盤設備。一些用重入碼編寫的文件也可以被“同時”共享,即允許若干個用戶同時訪問該文件。,1.3.3 虛擬(V
16、irtual) 1. 時分復用技術(1) 虛擬處理機技術。(2) 虛擬設備技術。,2. 空分復用技術20世紀初,電信業(yè)中就已使用頻分復用技術來提高信道的利用率。它是指將一個頻率范圍比較寬的信道劃分成多個頻率范圍較窄的信道(稱為頻帶),其中的任何一個頻帶都僅供一對用戶通話。早期的頻分復用技術只能將一條物理信道劃分為幾條到幾十條話路,后來又很快發(fā)展到成千上萬條話路,每條話路供一對用戶通話。再后來在計算機中也把空分復用技術用于對存儲空間的管理,用以提高存儲空間的利用率。,1.3.4 異步(Asynchronism) 在多道程序環(huán)境下,系統(tǒng)允許多個進程并發(fā)執(zhí)行。在單處理機環(huán)境下,由于系統(tǒng)中只有一臺處理
17、機,因而每次只允許一個進程執(zhí)行,其余進程只能等待。當正在執(zhí)行的進程提出某種資源要求時,如打印請求,而此時打印機正在為其它進程打印,由于打印機屬于臨界資源,因此正在執(zhí)行的進程必須等待,并釋放出處理機,直到打印機空閑,并再次獲得處理機時,該進程方能繼續(xù)執(zhí)行??梢?,由于資源等因素的限制,使進程的執(zhí)行通常都不可能“一氣呵成”,而是以“停停走走”的方式運行。,1.4 操作系統(tǒng)的主要功能引入OS的主要目的是,為多道程序的運行提供良好的運行環(huán)境,以保證多道程序能有條不紊地、高效地運行,并能最大程度地提高系統(tǒng)中各種資源的利用率,方便用戶的使用。為此,在傳統(tǒng)的OS中應具有處理機管理、存儲器管理、設備管理和文件管
18、理等基本功能。此外,為了方便用戶使用OS,還需向用戶提供方便的用戶接口。,1.4.1 處理機管理功能 1. 進程控制2. 進程同步 3. 進程通信4. 調度(1) 作業(yè)調度。(2) 進程調度。,1.4.2 存儲器管理功能 1. 內存分配內存分配的主要任務是:(1) 為每道程序分配內存空間,使它們“各得其所”。(2) 提高存儲器的利用率,盡量減少不可用的內存空間(碎片)。(3) 允許正在運行的程序申請附加的內存空間,以適應程序和數(shù)據(jù)動態(tài)增長的需要。,OS在實現(xiàn)內存分配時,可采取靜態(tài)和動態(tài)兩種方式:(1) 靜態(tài)分配方式。每個作業(yè)的內存空間是在作業(yè)裝入時確定的,在作業(yè)裝入后的整個運行期間不允許該作業(yè)
19、再申請新的內存空間,也不允許作業(yè)在內存中“移動”。(2) 動態(tài)分配方式。每個作業(yè)所要求的基本內存空間雖然也是在裝入時確定的,但允許作業(yè)在運行過程中繼續(xù)申請新的附加內存空間,以適應程序和數(shù)據(jù)的動態(tài)增長,也允許作業(yè)在內存中“移動”。,2. 內存保護內存保護的主要任務是: 確保每道用戶程序都僅在自己的內存空間內運行,彼此互不干擾。 絕不允許用戶程序訪問操作系統(tǒng)的程序和數(shù)據(jù),也不允許用戶程序轉移到非共享的其它用戶程序中去執(zhí)行。,3. 地址映射在多道程序環(huán)境下,由于每道程序經(jīng)編譯和鏈接后所形成的可裝入程序其地址都是從0開始的,但不可能將它們從“0”地址(物理)開始裝入內存,致使(各程序段的)地址空間內的
20、邏輯地址與其在內存空間中的物理地址并不相一致。為保證程序能正確運行,存儲器管理必須提供地址映射功能,即能夠將地址空間中的邏輯地址轉換為內存空間中與之對應的物理地址。該功能應在硬件的支持下完成。,4. 內存擴充內存擴充并非是從物理上去擴大內存的容量,而是借助于虛擬存儲技術,從邏輯上擴充內存容量,使用戶所感覺到的內存容量比實際內存容量大得多,以便讓更多的用戶程序能并發(fā)運行。這樣既滿足了用戶的需要,又改善了系統(tǒng)的性能。為了能在邏輯上擴充內存,系統(tǒng)必須設置內存擴充機制(包含少量的硬件),用于實現(xiàn)下述各功能:(1) 請求調入功能。(2) 置換功能。,1.4.3 設備管理功能 設備管理的主要任務如下:(1
21、) 完成用戶進程提出的I/O請求,為用戶進程分配所需的I/O設備,并完成指定的I/O操作。(2) 提高CPU和I/O設備的利用率,提高I/O速度,方便用戶使用I/O設備。為實現(xiàn)上述任務,設備管理應具有緩沖管理、設備分配和設備處理以及虛擬設備等功能。1. 緩沖管理2. 設備分配3. 設備處理,1.4.4 文件管理功能 1. 文件存儲空間的管理2. 目錄管理3. 文件的讀/寫管理和保護(1) 文件的讀/寫管理。 (2) 文件保護。,1.4.5操作系統(tǒng)與用戶之間的接口 1. 用戶接口(1) 聯(lián)機用戶接口。(2) 脫機用戶接口。(3) 圖形用戶接口。,2. 程序接口程序接口是為用戶程序在執(zhí)行中訪問系統(tǒng)
22、資源而設置的,是用戶程序取得操作系統(tǒng)服務的唯一途徑。它是由一組系統(tǒng)調用組成的,每一個系統(tǒng)調用都是一個能完成特定功能的子程序。每當應用程序要求OS提供某種服務(功能)時,便調用具有相應功能的系統(tǒng)調用(子程序)。早期的系統(tǒng)調用都是用匯編語言提供的,只有在用匯編語言書寫的程序中才能直接使用系統(tǒng)調用。,1.4.6現(xiàn)代操作系統(tǒng)的新功能現(xiàn)代操作系統(tǒng)是在傳統(tǒng)操作系統(tǒng)基礎上發(fā)展起來的,它除了具有傳統(tǒng)操作系統(tǒng)的功能外,還增加了面向安全、面向網(wǎng)絡和面向多媒體等功能。1. 系統(tǒng)安全(1) 認證技術。(2) 密碼技術。(3) 訪問控制技術。(4) 反病毒技術。,2. 網(wǎng)絡的功能和服務(1) 網(wǎng)絡通信。(2) 資源管理
23、。(3) 應用互操作。,3. 支持多媒體(1) 接納控制功能。(2) 實時調度。(3) 多媒體文件的存儲。,1.5 OS結構設計早期OS的規(guī)模很小,如只有幾十KB,完全可以由一個人以手工方式,用幾個月的時間編制出來。此時,編制程序基本上是一種技巧,OS是否是有結構的并不那么重要,重要的是程序員的程序設計技巧。但隨著OS規(guī)模的愈來愈大,其所具有的代碼也愈來愈多,往往需要由數(shù)十人或數(shù)百人甚至更多的人參與,分工合作,共同來完成操作系統(tǒng)的設計。這意味著,應采用工程化的開發(fā)方法對大型軟件進行開發(fā)。由此產(chǎn)生了“軟件工程學”。,1.5.1 傳統(tǒng)操作系統(tǒng)結構 1. 無結構操作系統(tǒng)在早期開發(fā)操作系統(tǒng)時,設計者只
24、是把他的注意力放在功能的實現(xiàn)和獲得高的效率上,缺乏首尾一致的設計思想。此時的OS是為數(shù)眾多的一組過程的集合,每個過程可以任意地相互調用其它過程,致使操作系統(tǒng)內部既復雜又混亂,因此,這種OS是無結構的,也有人把它稱為整體系統(tǒng)結構。,2. 模塊化結構OS1) 模塊化程序設計技術的基本概念模塊化程序設計技術是20世紀60年代出現(xiàn)的一種結構化程序設計技術。該技術基于“分解”和“模塊化”的原則來控制大型軟件的復雜度。為使OS具有較清晰的結構,OS不再是由眾多的過程直接構成的,而是按其功能精心地劃分為若干個具有一定獨立性和大小的模塊。圖1-7示出了由模塊、子模塊等組成的模塊化OS結構。,圖1-7 模塊化結
25、構的操作系統(tǒng),2) 模塊獨立性在模塊-接口法中,關鍵問題是模塊的劃分和規(guī)定好模塊之間的接口。如果我們在劃分模塊時將模塊劃分得太小,雖然可以降低模塊本身的復雜性,但會引起模塊之間的聯(lián)系過多,從而會造成系統(tǒng)比較混亂;如果將模塊劃分得過大,又會增加模塊內部的復雜性,使內部的聯(lián)系增加,因此在劃分模塊時,應在兩者間進行權衡。,3) 模塊接口法的優(yōu)缺點利用模塊-接口法開發(fā)的OS,較之無結構OS具有以下明顯的優(yōu)點:(1) 提高OS設計的正確性、可理解性和可維護性。(2) 增強OS的可適應性。(3) 加速OS的開發(fā)過程。,模塊化結構設計仍存在下述問題:(1) 在OS設計時,對各模塊間的接口規(guī)定很難滿足在模塊設
26、計完成后對接口的實際需求。(2) 在OS設計階段,設計者必須做出一系列的決定(決策),每一個決定必須建立在上一個決定的基礎上,但模塊化結構設計中,各模塊的設計齊頭并進,無法尋找一個可靠的決定順序,造成各種決定的“無序性”,這將使程序人員很難做到“設計中的每一步?jīng)Q定”都是建立在可靠的基礎上,因此模塊-接口法又被稱為“無序模塊法”。,3. 分層式結構OS1) 分層式結構的基本概念為了將模塊-接口法中“決定順序”的無序性變?yōu)橛行蛐?,引入了有序分層法,分層法的設計任務是,在目標系統(tǒng)An和裸機系統(tǒng)(又稱宿主系統(tǒng))A0之間,鋪設若干個層次的軟件A1、A2、A3、An-1,使An通過An-1、An-2、A2
27、、A1層,最終能在A0上運行。在操作系統(tǒng)中,常采用自底向上法來鋪設這些中間層。,2) 分層結構的優(yōu)缺點分層結構的主要優(yōu)點有:(1) 易保證系統(tǒng)的正確性。(2) 易擴充和易維護性。分層結構的主要缺點是系統(tǒng)效率降低。由于層次結構是分層單向依賴的,必須在每層之間都建立層次間的通信機制,OS每執(zhí)行一個功能,通常要自上而下地穿越多個層次,這無疑會增加系統(tǒng)的通信開銷,從而導致系統(tǒng)效率的降低。,1.5.2 客戶/服務器模式(Client/Server Model) 簡介1. 客戶/服務器模式的由來、組成和類型客戶/服務器系統(tǒng)主要由三部分組成。(1) 客戶機:(2) 服務器:(3) 網(wǎng)絡系統(tǒng):,2. 客戶/服
28、務器之間的交互(1) 客戶發(fā)送請求消息。(2) 服務器接收消息。(3) 服務器回送消息。(4) 客戶機接收消息。,3. 客戶/服務器模式的優(yōu)點(1) 數(shù)據(jù)的分布處理和存儲。(2) 便于集中管理。(3) 靈活性和可擴充性。 (4) 易于改編應用軟件。,1.5.3 面向對象的程序設計(Object-Orientated Programming)技術簡介1. 面向對象技術的基本概念面向對象技術是20世紀80年代初提出并很快流行起來的。,1) 對象在面向對象的技術中,是利用被封裝的數(shù)據(jù)結構(變量)和一組對它進行操作的過程(方法)來表示系統(tǒng)中的某個對象的,如圖1-8所示。對象中的變量(數(shù)據(jù))也稱為屬性,
29、它可以是單個標量或一張表。面向對象中的方法是用于執(zhí)行某種功能的過程,它可以改變對象的狀態(tài),更新對象中的某些數(shù)據(jù)值或作用于對象所要訪問的外部資源。如果把一個文件作為一個對象(見圖1-9),該對象的變量便是文件類型、文件大小、文件的創(chuàng)建者等。對象中的方法包含對文件的操作,如創(chuàng)建文件、打開文件、讀文件、寫文件、關閉文件等。,圖1-8一個對象的示意圖,圖1-9 類和對象的關系,2) 對象類在實踐中,有許多對象可能表示的是同一類事物,每個對象具有自己的變量集合,而它們所具有的方法是相同的。如果為每一個相似的對象都定義一組變量和方法,顯然是低效的,由此產(chǎn)生了“對象類”的概念,利用“對象類”來定義一組大體相
30、似的對象。一個類同樣定義了一組變量和針對該變量的一組方法,用它們來描述一組對象的共同屬性和行為。類是在對象上的抽象,對象則是類的實例。對象類中所定義的變量在實例中均有具體的值。,3) 繼承在面向對象的技術中,可以根據(jù)已有類來定義一個新的類,新類被稱為子類(B),原來的類被稱為父類(A),見圖1-10所示。,圖1-10 類的繼承關系,2. 面向對象技術的優(yōu)點在操作系統(tǒng)設計時,將計算機中的實體作為對象來處理,可帶來如下好處:(1) 通過“重用”提高產(chǎn)品質量和生產(chǎn)率。(2) 使系統(tǒng)具有更好的易修改性和易擴展性。(3) 更易于保證系統(tǒng)的“正確性”和“可靠性”。,1.5.4微內核OS結構1. 微內核操作
31、系統(tǒng)的基本概念1) 足夠小的內核在微內核操作系統(tǒng)中,內核是指精心設計的、能實現(xiàn)現(xiàn)代OS最基本核心功能的小型內核,微內核并非是一個完整的OS,而只是將操作系統(tǒng)中最基本的部分放入微內核,通常包含有: 與硬件處理緊密相關的部分; 一些較基本的功能; 客戶和服務器之間的通信。這些OS最基本的部分只是為構建通用OS提供一個重要基礎,這樣就可以確保把操作系統(tǒng)內核做得很小。,2) 基于客戶/服務器模式由于客戶/服務器模式具有非常多的優(yōu)點,故在單機微內核操作系統(tǒng)中幾乎無一例外地都采用客戶/服務器模式,將操作系統(tǒng)中最基本的部分放入內核中,而把操作系統(tǒng)的絕大部分功能都放在微內核外面的一組服務器(進程)中實現(xiàn),如用
32、于提供對進程(線程)進行管理的進程(線程)服務器、提供虛擬存儲器管理功能的虛擬存儲器服務器、提供I/O設備管理的I/O設備管理服務器等,它們都是被作為進程來實現(xiàn)的,運行在用戶態(tài),客戶與服務器之間是借助微內核提供的消息傳遞機制來實現(xiàn)信息交互的。圖1-11示出了在單機環(huán)境下的客戶/服務器模式。,圖1-11 在單機環(huán)境下的客戶/服務器模式,3) 應用“機制與策略分離”原理在現(xiàn)在操作系統(tǒng)的結構設計中,經(jīng)常利用“機制與策略分離”的原理來構造OS結構。所謂機制,是指實現(xiàn)某一功能的具體執(zhí)行機構。而策略,則是在機制的基礎上借助于某些參數(shù)和算法來實現(xiàn)該功能的優(yōu)化,或達到不同的功能目標。,4) 采用面向對象技術操
33、作系統(tǒng)是一個極其復雜的大型軟件系統(tǒng),我們不僅可以通過結構設計來分解操作系統(tǒng)的復雜度,還可以基于面向對象技術中的“抽象”和“隱蔽”原則控制系統(tǒng)的復雜性,再進一步利用“對象”、“封裝”和“繼承”等概念來確保操作系統(tǒng)的“正確性”、“可靠性”、“易修改性”、“易擴展性”等,并提高操作系統(tǒng)的設計速度。正因為面向對象技術能帶來如此多的好處,故面向對象技術被廣泛應用于現(xiàn)代操作系統(tǒng)的設計中。,2. 微內核的基本功能微內核應具有哪些功能,或者說哪些功能應放在微內核內,哪些應放在微內核外,目前尚無明確的規(guī)定。現(xiàn)在一般都采用“機制與策略分離”的原理,將機制部分以及與硬件緊密相關的部分放入微內核中。由此可知微內核通常具有如下幾方面的功能:1) 進程(線程)管理 2) 低級存儲器管理3) 中斷和陷入處理,3.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年財務決策能力試題及答案
- 股份轉讓合同股權購買付款協(xié)議
- 空運貨物運輸合同協(xié)議
- 微生物檢驗技術生命周期的考察試題及答案
- 項目管理根本理論解析及答案
- 項目管理中的反饋文化建設與重要性試題及答案
- 品牌定位的動態(tài)調整策略計劃
- 城市供水設施的智慧化建設計劃
- 2025年國際金融理財師歷年試題及答案
- 大數(shù)據(jù)地震預警技術重點基礎知識點
- 2025年一級注冊計量師考試題庫大全及答案
- 衛(wèi)生院全國預防接種日宣傳活動總結(8篇)
- 2024國家電投集團中國電力招聘(22人)筆試參考題庫附帶答案詳解
- 數(shù)學和化學融合課件
- 通信汛期安全培訓
- 生產(chǎn)車間計件工資制度方案
- 養(yǎng)殖專業(yè)畢業(yè)論文
- 移動式升降機平臺安全培訓
- 應用文寫作+邀請參與非遺集市為主題的新年慶?;顒?講義 高二下學期開學考試英語試題
- 第三單元第3課+獎牌設計第1課時+課件+2024-2025學年人教版(2024)初中美術七年級上冊
- 豎曲線測設09課件講解
評論
0/150
提交評論