第1章操作系統(tǒng)概述_第1頁
第1章操作系統(tǒng)概述_第2頁
第1章操作系統(tǒng)概述_第3頁
第1章操作系統(tǒng)概述_第4頁
第1章操作系統(tǒng)概述_第5頁
已閱讀5頁,還剩106頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第1章操作系統(tǒng)概述1.1操作系統(tǒng)的地位1.2操作系統(tǒng)的定義

1.3操作系統(tǒng)的特征1.4操作系統(tǒng)的發(fā)展1.5操作系統(tǒng)結(jié)構(gòu)研究1.6內(nèi)核體系結(jié)構(gòu)模型1.7UNIX操作系統(tǒng)1.8WindowsNT/2000/XP簡介習(xí)題1.1操作系統(tǒng)的地位計(jì)算機(jī)系統(tǒng)由硬件和軟件兩部分組成。通常把未配置軟件的計(jì)算機(jī)稱為裸機(jī)。直接使用裸機(jī)不僅不方便,而且將嚴(yán)重降低工作效率和機(jī)器的利用率。操作系統(tǒng)(OS,OperationSystem)是為了填補(bǔ)人與機(jī)器之間的鴻溝,即為了建立用戶與計(jì)算機(jī)之間的接口,而為裸機(jī)配置的一種系統(tǒng)軟件。由圖1.1可以看出,操作系統(tǒng)是裸機(jī)上的第一層軟件,是對硬件系統(tǒng)功能的首次擴(kuò)充。圖1.1操作系統(tǒng)在計(jì)算機(jī)系統(tǒng)中的地位配置操作系統(tǒng)的目標(biāo)有:(1)提供一個計(jì)算機(jī)用戶與計(jì)算機(jī)硬件系統(tǒng)之間的接口,使計(jì)算機(jī)系統(tǒng)更易于使用。(2)有效地控制和管理計(jì)算機(jī)系統(tǒng)中的各種硬件和軟件資源,使之得到更有效的利用。(3)合理地組織計(jì)算機(jī)系統(tǒng)的工作流程,以改善系統(tǒng)性能(如響應(yīng)時間、系統(tǒng)吞吐量等)。(4)遵循國際標(biāo)準(zhǔn),設(shè)計(jì)和構(gòu)筑開放式的環(huán)境,支持可擴(kuò)展的體系結(jié)構(gòu),支持應(yīng)用程序的可移植性和可互操作性。從不同角度看,操作系統(tǒng)具有以下特性:(1)有效性(系統(tǒng)管理人員的觀點(diǎn)):管理和分配硬件與軟件資源,合理地組織計(jì)算機(jī)的工作流程。(2)方便性(用戶的觀點(diǎn)):提供良好的、一致的用戶接口,彌補(bǔ)硬件系統(tǒng)的類型和數(shù)量上的差別。(3)可擴(kuò)充性(開放的觀點(diǎn)):是指硬件的類型和規(guī)模、操作系統(tǒng)本身的功能和管理策略、多個系統(tǒng)之間的資源共享和互操作的可擴(kuò)展性能。1.2操作系統(tǒng)的定義由于操作系統(tǒng)向用戶隱蔽了系統(tǒng)使用的硬件設(shè)備,因此操作系統(tǒng)要為它上面的應(yīng)用軟件提供一組命令或系統(tǒng)調(diào)用接口供用戶程序使用。在應(yīng)用軟件與操作系統(tǒng)之間還存在著其他的系統(tǒng)實(shí)用程序和工具,如編譯程序、匯編程序、編輯程序以及數(shù)據(jù)庫等,它們和操作系統(tǒng)一起為用戶組成了一個非常有效的工作環(huán)境。這些實(shí)用程序雖然屬于系統(tǒng)軟件,但不屬于操作系統(tǒng)的組成部分。用戶程序在最頂層運(yùn)行,用來處理各種各樣的實(shí)際業(yè)務(wù),諸如工程計(jì)算、人事檔案管理以及電子游戲等。當(dāng)用分層的方法來處理運(yùn)行在裸機(jī)之上的所有程序(軟件)時,由于操作系統(tǒng)處于硬件和軟件的中央位置,因此很早就有人把操作系統(tǒng)稱為計(jì)算機(jī)系統(tǒng)軟件的核心,簡稱核心或內(nèi)核(kernal)。軟件分層的方法強(qiáng)調(diào):內(nèi)核把用戶程序和機(jī)器硬件屬性隔離開,以便位于核心之上的程序代碼與體系結(jié)構(gòu)不相關(guān),這樣可以比較容易地把它們移植到不同體系結(jié)構(gòu)的其他機(jī)器上。操作系統(tǒng)雖然是軟件,但由于操作系統(tǒng)在計(jì)算機(jī)中的特殊位置,因此人們要真正掌握操作系統(tǒng)必須具備計(jì)算機(jī)硬件基礎(chǔ)知識,例如:計(jì)算機(jī)組成原理、計(jì)算機(jī)接口技術(shù)等。1.3操作系統(tǒng)的特征1.并發(fā)(concurrence)

并行性和并發(fā)性是既相似又有區(qū)別的兩個概念。并行性是指兩個或多個事件在同一時刻發(fā)生,而并發(fā)性是指兩個或多個事件在同一時間間隔內(nèi)發(fā)生。在多道程序環(huán)境下,并發(fā)性是指宏觀上在一段時間內(nèi)有多道程序在同時運(yùn)行。2.共享(sharing)

資源共享是指系統(tǒng)中的硬件和軟件資源不再為某個程序所獨(dú)占,而是供多個用戶共同使用。根據(jù)資源屬性的不同,可有以下兩種不同的資源共享方式。一種共享方式是,系統(tǒng)中的很多資源雖能提供給多個作業(yè)(進(jìn)程)使用,但在一段時間內(nèi)卻只允許一個作業(yè)訪問該資源,這稱為互斥共享。另一種共享方式是,允許在一段時間內(nèi),由多個進(jìn)程同時對資源進(jìn)行訪問。這里所謂的“同時”仍然是宏觀上的。而微觀上,這些進(jìn)程可能是交替地對該資源進(jìn)行訪問。并發(fā)和共享是操作系統(tǒng)的兩個最基本的特征,而這兩者之間又是互相依存的:一方面,資源共享是以程序的并發(fā)執(zhí)行為條件的,假若系統(tǒng)不允許程序并發(fā)執(zhí)行,就不存在資源共享問題;另一方面,若系統(tǒng)不能對資源共享實(shí)施有效的管理,勢必影響到程序的并發(fā)執(zhí)行。3.虛擬(virtual)

在操作系統(tǒng)中,所謂虛擬,是指把一個物理上的實(shí)體變?yōu)槿舾蓚€邏輯上的對應(yīng)物,前者是實(shí)的,即是實(shí)際存在的,而后者是虛的,是邏輯上的。4.不確定性(uncertainty)

在操作系統(tǒng)中,不確定性主要有兩種類型:(1)程序執(zhí)行結(jié)果是不確定的,即對同一程序使用相同的輸入,在相同的環(huán)境下運(yùn)行多次,卻可能獲得完全不同的結(jié)果,亦即程序是不可再現(xiàn)的。(2)多道程序環(huán)境下程序的執(zhí)行是以異步方式進(jìn)行的,換言之,每個程序在何時執(zhí)行,多個程序間的執(zhí)行順序以及完成每道程序所需的時間都是不確定的,因而也是不可預(yù)知的。這種不確定性卻是允許的。1.4操作系統(tǒng)的發(fā)展1.4.1操作系統(tǒng)的發(fā)展歷史操作系統(tǒng)是在人們不斷改善計(jì)算機(jī)系統(tǒng)性能和提高資源利用率的過程中逐步形成和發(fā)展起來的。操作系統(tǒng)發(fā)展的主要動力是“需求推動發(fā)展”。1.人工操作方式在早期的計(jì)算機(jī)系統(tǒng)中,程序的每一次運(yùn)行都需要很多人工干預(yù),操作過程繁瑣,占用很多時間,而且也很容易產(chǎn)生錯誤,往往準(zhǔn)備的時間很長,而執(zhí)行的時間卻很短。(1)用戶獨(dú)占全機(jī)。一臺計(jì)算機(jī)為一個用戶獨(dú)占,系統(tǒng)中的全部資源由他一人支配,因此用戶可以較方便地使用各種資源,不會出現(xiàn)因資源已被其他用戶占用而等待的現(xiàn)象,但資源的利用率卻非常低。(2)CPU等待人工操作。用戶僅在上機(jī)時才能將自己的程序和數(shù)據(jù)通過穿孔紙帶或卡片裝入相應(yīng)的輸入設(shè)備,顯然,此時CPU空閑。當(dāng)計(jì)算完成,進(jìn)行卸帶或取卡操作時,CPU又空閑。由此可見,CPU的利用極不充分,這在運(yùn)行短程序時尤為突出。2.脫機(jī)輸入/輸出技術(shù)(Off-LineI/OTechnic)

1)脫機(jī)輸入技術(shù)為解決低速輸入設(shè)備與CPU速度不匹配的問題,人們將用戶程序和數(shù)據(jù)在一臺外圍計(jì)算機(jī)的控制下,預(yù)先從低速輸入設(shè)備輸入到磁帶上。2)脫機(jī)輸出技術(shù)當(dāng)程序運(yùn)行完畢或告一段落,CPU需要輸出時,無需直接把計(jì)算結(jié)果送至低速輸出設(shè)備,而是高速地把結(jié)果送到磁帶上,然后在另一臺外圍機(jī)的控制下,把磁帶上的計(jì)算結(jié)果由相應(yīng)的輸出設(shè)備輸出,這就大大加快了程序的輸出過程。3.批處理技術(shù)批處理技術(shù)是指計(jì)算機(jī)系統(tǒng)對一批作業(yè)自動進(jìn)行處理的一種技術(shù)。所謂作業(yè),是指用戶程序及其所需的數(shù)據(jù)和命令的集合。在脫機(jī)輸入/輸出方式中,事先已把一批作業(yè)記錄在一盤磁帶上,這意味著作業(yè)的處理是成批的,且處理順序已經(jīng)排定。4.多道程序設(shè)計(jì)技術(shù)1)多道程序在采用批處理技術(shù)時,內(nèi)存中僅存放一道程序,每當(dāng)該程序發(fā)出I/O請求后,便處于等待I/O完成狀態(tài),致使CPU空閑。2)多道程序系統(tǒng)需解決的問題雖然多道程序技術(shù)能提高系統(tǒng)的吞吐量并有效地提高資源利用率,但實(shí)現(xiàn)多道程序還需妥善地解決下述一系列問題:(1)在一個連續(xù)的內(nèi)存空間中,同時駐留了多道程序,系統(tǒng)應(yīng)為每道程序分配好內(nèi)存空間,使它們各得其所,不會相互重疊而丟失信息,又應(yīng)防止某道程序由于人為的因素或出現(xiàn)異常情況而破壞其他程序。(2)在單處理機(jī)系統(tǒng)中,系統(tǒng)只有一個處理機(jī)為各道程序所共享,這必將引起各道程序?qū)μ幚頇C(jī)的競爭。(3)一個系統(tǒng)中的I/O設(shè)備數(shù)量通常少于多道程序所要求的數(shù)量,這也會引起各道程序?qū)/O設(shè)備的爭用,系統(tǒng)應(yīng)為各道程序分配I/O設(shè)備。(4)在一個系統(tǒng)中運(yùn)行的程序可能具有不同的類型。有的程序?qū)儆?jì)算型,即該程序需要經(jīng)過大量的計(jì)算后方才要求輸入/輸出;而有的程序?qū)買/O型,其計(jì)算量小,但要求操作的量卻較大。(5)系統(tǒng)把大量有意義的信息以文件的形式存放在各種存儲介質(zhì)上。為提高存儲空間的利用率,加速對信息的檢索速度,系統(tǒng)應(yīng)對它們進(jìn)行組織和管理;并且為了方便使用,系統(tǒng)還應(yīng)提供存儲和檢索文件信息的手段。1.4.2操作系統(tǒng)的分類1.微機(jī)操作系統(tǒng)微型計(jì)算機(jī)的出現(xiàn)給人類的生活帶來了翻天覆地的變化,導(dǎo)致了計(jì)算機(jī)產(chǎn)業(yè)的革命,其應(yīng)用滲入到各個領(lǐng)域的發(fā)展當(dāng)中。在微型計(jì)算機(jī)的普及過程中,微機(jī)操作系統(tǒng)功不可沒。1)單用戶微機(jī)操作系統(tǒng)目前最有代表性的單用戶微機(jī)操作系統(tǒng)有以下三種:(1)CP/M。CP/M是ControlProgram/Monitor的縮寫。(2)?MS-DOS。1981年,IBM公司首次推出了IBM-PC個人微機(jī),在微機(jī)中采用了Microsoft公司開發(fā)的MS-DOS操作系統(tǒng)。(3)OS/2。1987年4月,IBM公司在推出下一代個人系統(tǒng)PS/2的同時,發(fā)表了OS/2。它是一種在80286保護(hù)方式下工作的單用戶/多任務(wù)操作系統(tǒng)。2)多用戶微機(jī)操作系統(tǒng)在20世紀(jì)80年代到90年代,陸續(xù)出現(xiàn)了支持多用戶的操作系統(tǒng),其中Microsoft公司開發(fā)的Windows系列、芬蘭科學(xué)家LinusTorvalds創(chuàng)建的Linux尤為出眾。2.批處理系統(tǒng)的類型1)單道批處理系統(tǒng)單道批處理系統(tǒng)是早期計(jì)算機(jī)系統(tǒng)中所配置的一種操作系統(tǒng)類型,其特征是:(1)無需作業(yè)調(diào)度和進(jìn)程調(diào)度,只按作業(yè)在外存中排定的順序,依次將它們調(diào)入內(nèi)存,將處理機(jī)分配給調(diào)入的作業(yè)使之運(yùn)行。(2)僅當(dāng)前一道作業(yè)運(yùn)行完成,或出現(xiàn)不能處理的異常情況時,才重新調(diào)入其后繼作業(yè)進(jìn)入內(nèi)存運(yùn)行,在內(nèi)存中始終只保持一道作業(yè)。(3)作業(yè)完成的順序與作業(yè)進(jìn)入內(nèi)存的順序直接相關(guān),即先進(jìn)入內(nèi)存的先完成。2)多道批處理系統(tǒng)在多道批處理系統(tǒng)中,同時被執(zhí)行的程序不止一個,在任意一個時刻,它們都處于開始點(diǎn)和終止點(diǎn)之間。20世紀(jì)60年代中期到70年代中期,人們利用多道批處理來提高資源的利用率。該系統(tǒng)的特征是:(1)需經(jīng)過作業(yè)調(diào)度和進(jìn)程調(diào)度。作業(yè)調(diào)度。

進(jìn)程調(diào)度。(2)內(nèi)存中可同時駐留多道作業(yè)。(3)作業(yè)完成的先后順序與其進(jìn)入內(nèi)存的順序并無嚴(yán)格的對應(yīng)關(guān)系,即后進(jìn)入內(nèi)存的作業(yè)有可能先完成。3)遠(yuǎn)程批處理系統(tǒng)遠(yuǎn)程批處理系統(tǒng)是配置在聯(lián)機(jī)系統(tǒng)和計(jì)算機(jī)網(wǎng)絡(luò)中的一種批處理系統(tǒng),它能接收從遠(yuǎn)程系統(tǒng)送來的批量型作業(yè),對它進(jìn)行處理后,將結(jié)果送至指定系統(tǒng)。批處理系統(tǒng)誕生于20世紀(jì)60年代初期,至今仍是主要的操作系統(tǒng)類型之一。批處理系統(tǒng)的主要優(yōu)點(diǎn)是:(1)系統(tǒng)吞吐量大。(2)資源利用率高。批處理系統(tǒng)也存在著某些嚴(yán)重缺點(diǎn):(1)周轉(zhuǎn)時間長。(2)不能提供交互作用能力。3.分時系統(tǒng)1)分時和分時系統(tǒng)分時系統(tǒng)既是操作系統(tǒng)的一種類型,又是對配置了分時操作系統(tǒng)的計(jì)算機(jī)系統(tǒng)的一種稱呼。通常,在一臺主機(jī)上連接了多個鍵盤顯示終端,用戶可以通過各自的終端,以交互作用方式使用計(jì)算機(jī),共享主機(jī)上所配置的各種硬/軟件資源。當(dāng)時鐘中斷發(fā)生時,CPU的控制權(quán)發(fā)生轉(zhuǎn)讓。轉(zhuǎn)讓方式可分為搶占式和非搶占式(preemptive&non-preemptive)兩種。

搶占式:操作系統(tǒng)強(qiáng)迫程序轉(zhuǎn)讓CPU控制權(quán)。

非搶占式:程序主動轉(zhuǎn)讓CPU控制權(quán)。圖1.2分時系統(tǒng)概念圖2)分時系統(tǒng)的實(shí)現(xiàn)技術(shù)為使終端用戶不僅在編輯時能和系統(tǒng)進(jìn)行會話,而且在作業(yè)處理過程中的各個階段也能與自己的作業(yè)交互作用,就要求系統(tǒng)能對用戶鍵入的命令及時響應(yīng)。實(shí)現(xiàn)分時系統(tǒng)有下述幾種方法:(1)簡單分時系統(tǒng)。在簡單分時系統(tǒng)中,內(nèi)存中只有一道程序作為現(xiàn)行作業(yè),其他作業(yè)仍在外存上。(2)具有前臺和后臺的分時系統(tǒng)。為了改善系統(tǒng)性能,引入了所謂前臺和后臺的概念。(3)基于多道程序設(shè)計(jì)的分時系統(tǒng)。為了進(jìn)一步改善系統(tǒng)性能,在分時系統(tǒng)中引入了多道程序設(shè)計(jì)技術(shù),即在內(nèi)存中可同時裝入多道程序,每道程序無固定位置,對小作業(yè)可多裝入幾道程序,對一些較大作業(yè)則少裝入幾道程序。3)分時系統(tǒng)的特征分時系統(tǒng)有以下4個基本特征:(1)同時性。系統(tǒng)將若干個用戶終端通過多路卡連接到一臺主機(jī)上。宏觀上,多個用戶同時工作,共享系統(tǒng)資源;微觀上,各終端作業(yè)輪流運(yùn)行一個時間片。(2)獨(dú)立性。每個用戶各占一臺終端,彼此獨(dú)立操作,互不干擾。(3)及時性。終端用戶的請求能在很短的時間段內(nèi)獲得響應(yīng)。(4)交互性。用戶能與系統(tǒng)進(jìn)行人機(jī)對話,即用戶從鍵盤輸入命令,請求系統(tǒng)服務(wù)和控制程序的運(yùn)行。4)響應(yīng)時間在批處理系統(tǒng)中,主要考慮如何提高機(jī)器的利用率,而在分時系統(tǒng)中,必須注意響應(yīng)時間。(1)決定響應(yīng)時間的因素有以下4個:

系統(tǒng)開銷。在單道分時系統(tǒng)中,系統(tǒng)開銷主要是調(diào)進(jìn)和調(diào)出,即對換。

用戶數(shù)目。如果系統(tǒng)中有n個同時性用戶,時間片為q,則每個用戶作業(yè)輪轉(zhuǎn)一次所需時間T為

T=nq

時間片。當(dāng)用戶數(shù)n一定時,響應(yīng)時間正比于q,因而適當(dāng)?shù)販p少時間片長度,便可改善對用戶的響應(yīng)時間。

對換信息量。在單道批處理環(huán)境下,對換所需時間將隨著對換信息量的增加而增加,CPU用于處理終端用戶程序的時間將因?qū)Q時間的增加而減少,從而延長了作業(yè)在內(nèi)存的駐留時間。(2)響應(yīng)時間的改善。減少用戶數(shù)目及減少時間片的大小,無疑可改善響應(yīng)時間,但這會影響系統(tǒng)性能。這里介紹兩種通過減少對換信息量來改善響應(yīng)時間的方法:

采用重入碼文件以減少對換信息量。

引入虛擬存儲技術(shù)來減少對換信息量。4.實(shí)時操作系統(tǒng)實(shí)時操作系統(tǒng)主要用于過程控制、事務(wù)處理等有實(shí)時要求的領(lǐng)域,其主要特征是實(shí)時性和可靠性。1)實(shí)時系統(tǒng)的定義實(shí)時系統(tǒng)是指在限定的時間內(nèi)對輸入進(jìn)行快速處理并作出響應(yīng)的計(jì)算機(jī)處理系統(tǒng),它分為硬件實(shí)時系統(tǒng)和軟件實(shí)時系統(tǒng)。實(shí)時系統(tǒng)要解決以下幾個問題:(1)實(shí)時時鐘管理。對實(shí)時任務(wù)進(jìn)行實(shí)時處理是實(shí)時系統(tǒng)的主要目標(biāo)之一。(2)過載保護(hù)。過載是指進(jìn)入系統(tǒng)的任務(wù)數(shù)目超出系統(tǒng)的處理能力。(3)連續(xù)人機(jī)會話。人機(jī)對話是由終端把消息發(fā)送給計(jì)算機(jī)開始的,當(dāng)計(jì)算機(jī)把回答信息送回終端后,會話便算結(jié)束。

(4)高度的可靠性和安全性。在實(shí)時系統(tǒng)中,軟/硬件的任何故障都會給系統(tǒng)帶來嚴(yán)重后果。3)實(shí)時系統(tǒng)和分時系統(tǒng)的區(qū)別連接多臺終端,都有交互作用,都要求一定的響應(yīng)時間等等。因此,這兩種系統(tǒng)很容易被混淆。在區(qū)分一個系統(tǒng)是分時系統(tǒng)還是實(shí)時系統(tǒng)時,除了要看系統(tǒng)的應(yīng)用環(huán)境外,還要區(qū)分以下幾點(diǎn):

(1)系統(tǒng)的設(shè)計(jì)目標(biāo)不同。

(2)交互性的強(qiáng)弱。

(3)響應(yīng)時間的長短。5.網(wǎng)絡(luò)操作系統(tǒng)1)計(jì)算機(jī)網(wǎng)絡(luò)計(jì)算機(jī)網(wǎng)絡(luò)是指通過數(shù)據(jù)通信系統(tǒng)把地理上分散的計(jì)算機(jī)和終端設(shè)備連接起來,以達(dá)到數(shù)據(jù)通信和資源共享的目的的一種計(jì)算機(jī)集合。2)計(jì)算機(jī)網(wǎng)絡(luò)的基本特征計(jì)算機(jī)網(wǎng)絡(luò)具有以下4個基本特征:(1)自治性。每臺計(jì)算機(jī)有自己的內(nèi)存、I/O設(shè)備和操作系統(tǒng),因而具有較強(qiáng)的自治能力,能獨(dú)立承擔(dān)分配給它的任務(wù)。

(2)分布性。分布性包含3個方面的含義:

地理分布:系統(tǒng)中的所有計(jì)算機(jī),在地理上是分開的。功能分布:各個計(jì)算機(jī)可獨(dú)立承擔(dān)任務(wù)。任務(wù)分布:可把一個大任務(wù)劃分成若干個子任務(wù),分別由不同的計(jì)算機(jī)去執(zhí)行。(3)互連性。把地理上分布的資源在物理上和邏輯上連接在一起,并通過通信網(wǎng)絡(luò)相互作用。(4)統(tǒng)一性。在統(tǒng)一的網(wǎng)絡(luò)操作系統(tǒng)的控制下,使分散的計(jì)算機(jī)系統(tǒng)能相互協(xié)調(diào),實(shí)現(xiàn)網(wǎng)絡(luò)通信和資源共享,完成各自的或共同的任務(wù),并向網(wǎng)絡(luò)用戶提供統(tǒng)一的接口。3)網(wǎng)絡(luò)操作系統(tǒng)的功能和定義網(wǎng)絡(luò)操作系統(tǒng)(NOS)是在各種各樣自治的計(jì)算機(jī)原有的操作系統(tǒng)的基礎(chǔ)上具有的訪問各種網(wǎng)絡(luò)功能的模塊。其主要任務(wù)是用統(tǒng)一的方法管理整個網(wǎng)絡(luò)中共享資源的使用和任務(wù)的處理。網(wǎng)絡(luò)操作系統(tǒng)定義為:建立在主機(jī)操作系統(tǒng)基礎(chǔ)上,用于管理網(wǎng)絡(luò)通信和共享資源,協(xié)調(diào)各主機(jī)上任務(wù)的運(yùn)行,并向用戶提供統(tǒng)一的、有效的網(wǎng)絡(luò)接口的軟件集合。網(wǎng)絡(luò)操作系統(tǒng)是用戶或用戶程序與主機(jī)操作系統(tǒng)之間的接口,網(wǎng)絡(luò)用戶只有通過網(wǎng)絡(luò)操作系統(tǒng),方能取得網(wǎng)絡(luò)所提供的各種服務(wù)。因此,它具有以下幾個基本功能:

(1)網(wǎng)絡(luò)通信:實(shí)現(xiàn)源主機(jī)與目標(biāo)主機(jī)之間無差錯的數(shù)據(jù)傳輸。(2)資源管理:采用統(tǒng)一的、有效的方法協(xié)調(diào)諸用戶對共享資源的使用,使用戶使用遠(yuǎn)地資源也像使用本地資源一樣。(3)提供多種網(wǎng)絡(luò)服務(wù):向網(wǎng)絡(luò)用戶提供的主要服務(wù)有電子郵件服務(wù),文件傳送、存取和管理服務(wù)等等。(4)提供網(wǎng)絡(luò)接口:向網(wǎng)絡(luò)用戶提供統(tǒng)一、經(jīng)濟(jì)地使用網(wǎng)絡(luò)共享資源和取得網(wǎng)絡(luò)服務(wù)的網(wǎng)絡(luò)接口,使用戶無需了解很多共享資源的屬性和有關(guān)網(wǎng)絡(luò)的知識。

6.分布式操作系統(tǒng)1)分布式系統(tǒng)分布式系統(tǒng)是20世紀(jì)80年代初發(fā)展起來的多處理機(jī)系統(tǒng),其計(jì)算或處理功能都集中在一臺主機(jī)上,所有的任務(wù)也都由主機(jī)處理。2)分布式系統(tǒng)的基本特征分布式系統(tǒng)具有如下4個基本特征:(1)分布性。分布式系統(tǒng)具有功能分布和任務(wù)分布的特征。(2)自治性。不論分布式系統(tǒng)中的處理單元采用何種形式,它至少包含有處理機(jī)和局都存儲器,具有獨(dú)立執(zhí)行任務(wù)的能力,因而每個處理單元都具有一定的自治性,但通常不具有各自獨(dú)立的操作系統(tǒng)。(3)模塊性。分布式系統(tǒng)的結(jié)構(gòu)已趨向于模塊化,即系統(tǒng)由若干個在結(jié)構(gòu)上完全相同并具有相同功能的處理單元構(gòu)成。(4)并行性。由于有多個處理單元,因而可把一個作業(yè)的諸任務(wù)分配到多個處理單元上進(jìn)行并行處理。3)分布式操作系統(tǒng)的功能分布式操作系統(tǒng)具有以下功能:(1)資源管理功能:能對并行工作的大量處理單元、存儲器和設(shè)備等資源進(jìn)行有效的動態(tài)管理。(2)任務(wù)分配功能:在分布式系統(tǒng)中,任務(wù)的分配不是以一個任務(wù)為單位,而是以一組能并行執(zhí)行的任務(wù)集為單位的,同時將它們分配到多個處理單元上使之能并行執(zhí)行。(3)分布式進(jìn)程同步和通信功能:系統(tǒng)采取分布式同步方式來保證不同處理機(jī)上的進(jìn)程嚴(yán)格同步,實(shí)現(xiàn)它們之間的通信,以達(dá)到高度并行執(zhí)行的目的。(4)各處理單元無主、從之分,都具有執(zhí)行管理程序的能力。7.并行操作系統(tǒng)

并行計(jì)算機(jī)性能的有效發(fā)揮在一定程度上依賴于操作系統(tǒng)的有效支持。并行計(jì)算機(jī)上的操作系統(tǒng)稱為并行操作系統(tǒng)。8.嵌入式操作系統(tǒng)1)嵌入式系統(tǒng)的特點(diǎn)嵌入式操作系統(tǒng)(EmbededOperatingSystem)具有以下特點(diǎn):(1)嵌入式系統(tǒng)通常是面向特定應(yīng)用的。(2)嵌入式系統(tǒng)是將先進(jìn)的計(jì)算機(jī)技術(shù)、半導(dǎo)體技術(shù)和電子技術(shù)與各個行業(yè)的具體應(yīng)用相結(jié)合的產(chǎn)物。(3)嵌入式系統(tǒng)的硬件和軟件都必須高效率地設(shè)計(jì),量體裁衣,去除冗余,力爭在同樣的硅片面積上實(shí)現(xiàn)更高的性能,這樣才能在具體應(yīng)用中對處理器的選擇更具有競爭力。(4)嵌入式系統(tǒng)和具體應(yīng)用有機(jī)地結(jié)合在一起,它的升級換代也是和具體產(chǎn)品同步進(jìn)行的,因此嵌入式系統(tǒng)產(chǎn)品一旦進(jìn)入市場,則具有較長的生命周期。(5)為了提高執(zhí)行速度和系統(tǒng)可靠性,嵌入式系統(tǒng)中的軟件一般都固化在存儲器芯片或單片機(jī)本身中,而不是存儲于磁盤等載體中。(6)嵌入式系統(tǒng)本身不具備自主開發(fā)能力,即使設(shè)計(jì)完成以后用戶通常也不能對其中的程序功能進(jìn)行修改,必須有一套開發(fā)工具和環(huán)境才能進(jìn)行開發(fā)。2)嵌入式系統(tǒng)的分類及應(yīng)用嵌入式系統(tǒng)有不同的分類方法,這里根據(jù)嵌入式系統(tǒng)的復(fù)雜程度,可以將嵌入式系統(tǒng)分為以下4類:(1)單個微處理器。(2)不帶計(jì)時功能的微處理器裝置。(3)帶計(jì)時功能的組件。(4)在制造或過程控制中使用的計(jì)算機(jī)系統(tǒng)。3)嵌入式操作系統(tǒng)一覽嵌入式系統(tǒng)并不是一個新生的事物,從20世紀(jì)80年代起,國際上就有一些IT組織或公司,開始進(jìn)行商用嵌入式系統(tǒng)和專用操作系統(tǒng)的研發(fā),涌現(xiàn)了如下一些著名的嵌入式系統(tǒng)。(1)WindowsCE。MicrosoftWindowsCE是從整體上為有限資源的平臺設(shè)計(jì)的多線程、優(yōu)先權(quán)完整、多任務(wù)的操作系統(tǒng)。(2)VxWorks。VxWorks是目前嵌入式系統(tǒng)領(lǐng)域中使用最廣泛、市場占有率最高的系統(tǒng)。(3)pSOS。生產(chǎn)pSOS的ISI公司已經(jīng)被WindRiver公司兼并?,F(xiàn)在,pSOS屬于WindRiver公司的產(chǎn)品。(4)QNX。QLLS公司的QNX是一個實(shí)時的、可擴(kuò)充的操作系統(tǒng),它部分遵循POSIX相關(guān)標(biāo)準(zhǔn),如POSIX.1b實(shí)時擴(kuò)展。(5)PalmOS。3Com公司的PalmOS在PDA市場上占有很大的市場份額。(6)OS-9。Microwave的OS-9是為微處理器的關(guān)鍵實(shí)時任務(wù)而設(shè)計(jì)的操作系統(tǒng),廣泛應(yīng)用于高科技產(chǎn)品中,包括消費(fèi)電子產(chǎn)品、工業(yè)自動化、無線通信產(chǎn)品、醫(yī)療儀器及數(shù)字電視/多媒體設(shè)備。(7)LynxOS。LynxReal-timeSystems的LynxOS是一個分布式、嵌入式、可規(guī)模擴(kuò)展的實(shí)時操作系統(tǒng),它遵循POSIX.1a、POSIX.1b和POSIX.1c標(biāo)準(zhǔn)。(8)μC/OS-Ⅱ。μC/OS-Ⅱ是源碼公開的實(shí)時嵌入式操作系統(tǒng)。目前,世面上有很多商業(yè)性嵌入式系統(tǒng)都在努力為自己爭取著嵌入式市場的份額(見圖1.3)。圖1.31998~2000年嵌入式操作系統(tǒng)的使用趨勢4)嵌入式系統(tǒng)的發(fā)展趨勢以信息家電為代表的互聯(lián)網(wǎng)時代的嵌入式產(chǎn)品,不僅為嵌入式市場展現(xiàn)了美好的前景,注入了新的生命,同時也對嵌入式系統(tǒng)技術(shù),特別是軟件技術(shù)提出了新的挑戰(zhàn)。這主要包括:支持日趨增長的功能密度,靈活的網(wǎng)絡(luò)連接,輕便的移動應(yīng)用和多媒體的信息處理。(1)嵌入式應(yīng)用軟件的開發(fā)需要強(qiáng)大的開發(fā)工具和操作系統(tǒng)的支持。(2)聯(lián)網(wǎng)成為必然趨勢。為適應(yīng)嵌入式分布處理結(jié)構(gòu)和上網(wǎng)需求,面向21世紀(jì)的嵌入式系統(tǒng)要求配備標(biāo)準(zhǔn)的一種或多種網(wǎng)絡(luò)通信接口。(3)支持小型電子設(shè)備,實(shí)現(xiàn)小尺寸、微功耗和低成本。(4)提供精巧的多媒體人機(jī)界面。1.5操作系統(tǒng)結(jié)構(gòu)研究1.5.1資源管理的觀點(diǎn)

操作系統(tǒng)的資源管理觀點(diǎn)的實(shí)質(zhì)在于把操作系統(tǒng)看成是計(jì)算機(jī)系統(tǒng)的資源管理程序。1.5.2層次結(jié)構(gòu)觀點(diǎn)層次結(jié)構(gòu)觀點(diǎn)是將系統(tǒng)按層次結(jié)構(gòu)分解成若干部分。一般把操作系統(tǒng)中需要直接和硬件通信的部分定義為最底層,其他各層依次建立在其底層基礎(chǔ)之上。層次結(jié)構(gòu)觀點(diǎn)的基本思想是:從最底層的裸機(jī)開始,相繼地在每一層虛擬機(jī)上編制程序去構(gòu)造更高一層的虛擬機(jī);重復(fù)這一過程,直至構(gòu)造出所需的系統(tǒng)為止。這種改造、擴(kuò)充虛擬機(jī)的方法稱為分層虛擬機(jī)法,也稱有序分層法。1968年,E.W.Dijkstra和他的學(xué)生在荷蘭的Eimdhoven技術(shù)學(xué)院所開發(fā)的THE系統(tǒng),就是按此模型構(gòu)造的第一個操作系統(tǒng)。THE系統(tǒng)是為荷蘭的WlectrologicaX8計(jì)算機(jī)配備的一個簡單的批處理系統(tǒng),其內(nèi)存只有32K個字,每字27比特。該系統(tǒng)共分為6層,如圖1.4所示。圖1.4THE操作系統(tǒng)的結(jié)構(gòu)在第0層中進(jìn)行處理器分配,即在第0層中提供了基本的CPU多道程序功能。在第1層中進(jìn)行內(nèi)存管理,它分配進(jìn)程的內(nèi)存空間,在內(nèi)存用完時則在磁鼓上分配512K字的空間用作交換。第2層軟件處理進(jìn)程與操作員控制臺之間的通信。第3層軟件負(fù)責(zé)管理I/O設(shè)備和相關(guān)的信息流緩沖區(qū)。第4層是用戶程序?qū)?,在該層上用戶程序不用考慮進(jìn)程、內(nèi)存、控制臺或I/O設(shè)備等細(xì)節(jié)。第5層由系統(tǒng)操作員進(jìn)程組成。

有序分層法的優(yōu)點(diǎn)是:(1)把功能實(shí)現(xiàn)的無序性改為有序性,可顯著地提高設(shè)計(jì)的準(zhǔn)確性或減少設(shè)計(jì)中返工的現(xiàn)象。(2)把模塊間的復(fù)雜依賴關(guān)系改為單向依賴關(guān)系,即高層軟件依賴于低層軟件,而低層軟件不依賴于高層軟件,它帶來四點(diǎn)好處:

在設(shè)計(jì)低層軟件時,可以不考慮高層軟件的實(shí)現(xiàn)方法。

高層軟件中的錯誤不會影響到低層軟件,這給調(diào)試和維護(hù)操作系統(tǒng)帶來了較大方便。

系統(tǒng)不會產(chǎn)生遞歸調(diào)用,從而避免了死鎖的發(fā)生。

在增加、修改或替換一個層次時不會影響到其他層次,有利于系統(tǒng)的維護(hù)和擴(kuò)充。1.5.3模塊接口法模塊接口法是指將整個系統(tǒng)分成若干個模塊,每個模塊具有一定的功能,模塊之間的通信只能通過預(yù)先定義的接口進(jìn)行,或者說模塊之間的相互關(guān)系僅限于接口參數(shù)的傳遞。模塊接口法的主要優(yōu)點(diǎn)是:(1)加速了操作系統(tǒng)的研制過程。(2)增加了操作系統(tǒng)的靈活性。(3)可以獲得較高的系統(tǒng)效率。模塊接口法的主要缺點(diǎn)是:(1)由于模塊的劃分和接口功能的規(guī)定是在開始設(shè)計(jì)時確定的,因此很難保證完全正確合理,而在此基礎(chǔ)上所進(jìn)行的模塊設(shè)計(jì),也很難保證其正確性,而且連接起來也比較困難。(2)由于模塊接口法是從功能觀點(diǎn)而不是從資源管理觀點(diǎn)來設(shè)計(jì)系統(tǒng)的,因此模塊之間的牽連過多,有可能造成循環(huán)依賴,從而降低了模塊的相對獨(dú)立性。

1.5.4虛擬機(jī)

OS/360的最早版本是純粹的批處理系統(tǒng),然而有許多360用戶希望使用分時系統(tǒng),于是IBM公司和另外的一些研究小組決定開發(fā)一個分時系統(tǒng)。IBM隨后提供了一套分時系統(tǒng)TSS/360,它非常龐大,運(yùn)行緩慢,幾乎沒有人用它。這個系統(tǒng)最初被命名為CP/CMS,后來改名為VM/370(SeawrightandMackinnon,1979)。它是基于這樣的設(shè)計(jì)思想設(shè)計(jì)的:應(yīng)提供多道程序,是一個比裸機(jī)具有更方便的擴(kuò)展界面的計(jì)算機(jī)。這個系統(tǒng)的核心被稱為虛擬機(jī)監(jiān)控程序(virtualmachinemonitor),它在裸機(jī)上運(yùn)行并具備了多道程序功能。該系統(tǒng)向上層提供了若干臺虛擬機(jī),如圖1.5所示。它不同于其他操作系統(tǒng)的是:這些虛擬機(jī)不是那種具有文件等優(yōu)良特征的擴(kuò)展計(jì)算機(jī);與之相反,它們僅僅是精確復(fù)制的裸機(jī)的硬件。它包含:核心態(tài)/用戶態(tài)、I/O功能、中斷及其他真實(shí)硬件所具有的全部內(nèi)容。圖1.5虛擬機(jī)結(jié)構(gòu)1.5.5客戶機(jī)/服務(wù)器系統(tǒng)操作系統(tǒng)的一個發(fā)展趨勢是,盡可能地從操作系統(tǒng)中去掉一些內(nèi)容,只留下一個很小的內(nèi)核(kernel),將代碼移到更高層次。通常采用的方法是,由用戶進(jìn)程來實(shí)現(xiàn)大多數(shù)操作系統(tǒng)的功能。1.5.6用戶觀點(diǎn)1.程序級接口

大多數(shù)用戶只需要計(jì)算機(jī)能解決自己的問題。他們對操作系統(tǒng)的內(nèi)部特性,例如分頁、分段、設(shè)備管理等不感興趣,他們只關(guān)心操作系統(tǒng)的外部特性,即操作系統(tǒng)給用戶提供了哪些功能。2.作業(yè)控制級的接口

用戶和操作系統(tǒng)在作業(yè)控制級的接口是命令方式和圖形界面。在聯(lián)機(jī)工作時,用戶使用鍵盤命令或點(diǎn)擊圖形用戶界面中的應(yīng)用程序圖標(biāo)來操縱計(jì)算機(jī)。用戶通過控制臺或終端鍵入命令或點(diǎn)擊應(yīng)用程序圖標(biāo)后,控制轉(zhuǎn)入操作系統(tǒng),由操作系統(tǒng)解釋該命令并具體執(zhí)行之。在完成指定操作后,控制又返回到控制臺或終端,用戶又可打入下一命令。這些命令執(zhí)行后便可實(shí)現(xiàn)整個作業(yè)的控制。1.6內(nèi)核體系結(jié)構(gòu)模型1.6.1微內(nèi)核在計(jì)算機(jī)科學(xué)不斷發(fā)展的進(jìn)程中,出現(xiàn)過各種各樣的操作系統(tǒng)。從目前應(yīng)用較廣泛的操作系統(tǒng)來看,考慮到核心各模塊間的通信方式,內(nèi)核系統(tǒng)結(jié)構(gòu)可分為兩大類:微內(nèi)核模型(microkernel)和單內(nèi)核模型(monolithickernel)。內(nèi)核中的大部分模塊都是獨(dú)立的進(jìn)程,并在一定的特權(quán)狀態(tài)下運(yùn)行,各模塊之間通過消息傳遞進(jìn)行通信。使用這種機(jī)制的系統(tǒng)內(nèi)核稱為微內(nèi)核。在微內(nèi)核設(shè)計(jì)中,最根本的思想是要保持內(nèi)核盡量小。因此它把大部分傳統(tǒng)上屬于操作系統(tǒng)的代碼分離出來放在了更高的層次上,讓它們在用戶狀態(tài)運(yùn)行。這樣只留下一個很小的內(nèi)核,所以叫做微內(nèi)核。它的典型運(yùn)用有客戶/服務(wù)器模型(client/server系統(tǒng))。圖1.6給出了微內(nèi)核模型。圖1.6微內(nèi)核系統(tǒng)結(jié)構(gòu)模型1.6.2單內(nèi)核整個核心系統(tǒng)可以分為若干模塊,但是在核心運(yùn)行時,它是一個獨(dú)立的二進(jìn)制映像。模塊間的通信是通過調(diào)用其他模塊中的函數(shù)實(shí)現(xiàn)的。采用這種機(jī)制的系統(tǒng)核心稱為單內(nèi)核。單內(nèi)核系統(tǒng)結(jié)構(gòu)的模型如圖1.7所示。圖1.7單內(nèi)核操作系統(tǒng)結(jié)構(gòu)模型1.7UNIX操作系統(tǒng)1.7.1UNIX操作系統(tǒng)概述

UNIX操作系統(tǒng)是一個通用的、交互式的分時多用戶操作系統(tǒng)。它是美國Bell實(shí)驗(yàn)室的K.Thompson和D.M.Ritchie于1969~1971年設(shè)計(jì)并實(shí)現(xiàn)的。

UNIX操作系統(tǒng)最初是用匯編語言編寫的,目的是為了在Bell實(shí)驗(yàn)室內(nèi)構(gòu)造一種進(jìn)行程序設(shè)計(jì)研究和開發(fā)的良好環(huán)境,僅限于Bell實(shí)驗(yàn)室內(nèi)部使用。它于1974年7月在美國《ACM通信》上正式發(fā)表。1.7.2UNIX系統(tǒng)的特點(diǎn)

UNIX系統(tǒng)之所以在相當(dāng)短的時間內(nèi)取得這樣大的成功,其根本原因在于UNIX本身的性能和特點(diǎn):(1)UNIX是一個分時、多用戶、多任務(wù)的操作系統(tǒng),這是UNIX有別于PC-DOS的根本特征。(2)內(nèi)核和核外程序有機(jī)結(jié)合。按這種設(shè)計(jì)思想,UNIX系統(tǒng)在結(jié)構(gòu)上分成兩大部分:內(nèi)核程序和核外程序。

(3)良好的用戶界面。UNIX向用戶提供兩種界面。一種是用戶使用命令,通過終端和系統(tǒng)進(jìn)行交互作用的界面,簡稱為用戶界面。另一種是面向用戶程序的界面,稱為系統(tǒng)調(diào)用。(4)樹形結(jié)構(gòu)的文件系統(tǒng)。UNIX具有一個樹形結(jié)構(gòu)的文件系統(tǒng),它由基本文件系統(tǒng)和若干個子文件系統(tǒng)組成。(5)文件和設(shè)備統(tǒng)一處理。在UNIX系統(tǒng)中,普通文件、文件的目錄表和輸入、輸出設(shè)備都是作為文件統(tǒng)一處理的。(6)豐富的核外程序。UNIX系統(tǒng)的核外部分包含了非常豐富的軟件開發(fā)工具、文本處理軟件、高級語言處理程序和系統(tǒng)實(shí)用程序。(7)系統(tǒng)用高級語言編寫,可移植性好。UNIX的系統(tǒng)內(nèi)核和核外程序基本上用C語言編寫,這使得系統(tǒng)易于理解、修改和擴(kuò)充,并使系統(tǒng)具有很好的移植性。1.7.3UNIX操作系統(tǒng)的結(jié)構(gòu)

UNIX系統(tǒng)分為內(nèi)核和外殼兩部分。UNIX系統(tǒng)的結(jié)構(gòu)如圖1.8所示,其內(nèi)核完成的功能見圖1.9。圖1.8UNIX操作系統(tǒng)的結(jié)構(gòu)圖1.9內(nèi)核實(shí)現(xiàn)的功能

UNIX的內(nèi)核是常駐內(nèi)存的部分,是用戶不能隨意改變的部分,即通常稱為UNIX操作系統(tǒng)的部分。它包括進(jìn)程管理、存儲管理、設(shè)備管理和文件管理及操作系統(tǒng)的其他重要功能。一般來說,UNIX系統(tǒng)的核心部分是不公開的,是看不見的。在UNIX系統(tǒng)內(nèi)核和系統(tǒng)實(shí)用程序之間的是UNIX向用戶提供的兩種界面。1.8WindowsNT/2000/XP簡介1.8.1WindowsN

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論