版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第1章操作系統(tǒng)概述1.1認識操作系統(tǒng)1.2操作系統(tǒng)的發(fā)展1.3Linux操作系統(tǒng)概述習題
1.1認識操作系統(tǒng)
1.1.1操作系統(tǒng)的概念
計算機系統(tǒng)由硬件和軟件兩部分組成。硬件是組成一臺計算機的各個部件,包括中央處理器(CPU)、內(nèi)存和輸入/輸出設(shè)備(I/O設(shè)備)。軟件包括系統(tǒng)軟件和應用軟件。軟件的靜態(tài)形式是存儲在存儲設(shè)備中的程序、數(shù)據(jù)和文檔信息,其動態(tài)形式是運行于CPU和內(nèi)存中的指令流。在計算機系統(tǒng)中,硬件與軟件相互依賴:硬件提供了執(zhí)行計算的能力,軟件控制和使用硬件完成特定的計算任務(wù)。
從資源的角度看,計算機系統(tǒng)內(nèi)的所有硬件以及存儲設(shè)備中的信息都被看做資源,計算機系統(tǒng)的用戶和系統(tǒng)中運行的程序都是這些資源的使用者。計算機系統(tǒng)的資源分為四類,如圖1-1所示。其中,CPU、內(nèi)存和I/O設(shè)備均為硬件資源,而文件則是信息資源。圖1?1計算機系統(tǒng)的資源計算機系統(tǒng)是一個十分復雜的系統(tǒng),包含了數(shù)量龐大、種類繁多的資源,用戶很難直接操作和管理這些資源。而對資源的調(diào)度或使用方法有任何不當都會直接影響系統(tǒng)效能的發(fā)揮。因此,如何有效地管理和使用系統(tǒng)資源是計算機系統(tǒng)設(shè)計的一個關(guān)鍵問題。目前的解決方案是用軟件來完成全部資源的管理工作,這個軟件就是操作系統(tǒng)。
操作系統(tǒng)(OperatingSystem,OS)是計算機系統(tǒng)中最基本的軟件。它直接管理和控制計算機的資源,合理地調(diào)度資源,使之得到充分的利用,并為用戶使用這些資源提供一個方便的操作環(huán)境和良好的用戶界面。從資源角度看,操作系統(tǒng)是管理和控制計算機資源的軟件。一臺沒有安裝操作系統(tǒng)的計算機稱為裸機,裸機上的資源是無法被利用的。
從用戶角度看,操作系統(tǒng)是用戶與計算機之間的接口。操作系統(tǒng)屏蔽了硬件的細節(jié),擴展了硬件的能力,為用戶構(gòu)造出一臺更便于使用的抽象的計算機。
從系統(tǒng)結(jié)構(gòu)上看,操作系統(tǒng)是在硬件之上的第一層軟件,操作系統(tǒng)包裹了整個硬件,用戶和其他軟件只有通過操作系統(tǒng)才可以使用硬件資源,以及存儲在硬件中的信息資源。在操作系統(tǒng)之上運行的是系統(tǒng)軟件和應用軟件。系統(tǒng)軟件是指那些為發(fā)揮硬件和系統(tǒng)的功能,使其方便使用而配備的軟件,如編譯系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)、各種通信軟件等。應用軟件是為解決某應用問題而設(shè)計的軟件,如文字處理、財會、科學計算、多媒體、計算機輔助制造軟件等??梢钥闯?,操作系統(tǒng)在計算機系統(tǒng)中起著支撐應用程序運行以及用戶操作環(huán)境的作用,它是計算機系統(tǒng)的核心與基石,而所有其他軟件都要倚賴操作系統(tǒng)才能運行。圖1-2示意了操作系統(tǒng)在計算機系統(tǒng)中的重要地位。圖1?2操作系統(tǒng)在計算機系統(tǒng)中的地位1.1.2操作系統(tǒng)的功能
操作系統(tǒng)作為計算機系統(tǒng)的資源管理器,它的功能是管理和控制系統(tǒng)資源。操作系統(tǒng)作為系統(tǒng)與用戶之間的接口,它要為用戶提供一個良好的使用環(huán)境。這些功能可以歸納為以下5項:
(1)處理機管理。處理機(CPU)是計算機硬件的核心。在多任務(wù)的系統(tǒng)中,同時有多個程序在系統(tǒng)中運行,它們都要占用CPU進行計算。處理機管理的功能是在多道程序之間分配和調(diào)度CPU,協(xié)調(diào)各程序的運行,并最大限度地發(fā)揮CPU的功效。
(2)內(nèi)存管理。內(nèi)存是計算機中比較寶貴的資源。當多個程序運行時,它們都需要一定的內(nèi)存空間來存放程序代碼。內(nèi)存管理的功能是合理地管理有限的內(nèi)存空間,為多道程序分配內(nèi)存,并對各程序的內(nèi)存區(qū)域進行保護,防止互相干擾。內(nèi)存管理的另一項功能是實現(xiàn)內(nèi)存的擴充。
(3)設(shè)備管理。計算機中除CPU和內(nèi)存之外的所有硬件部件都稱為I/O設(shè)備。設(shè)備管理的功能是有效地管理各種設(shè)備,合理地將設(shè)備分配給要求使用的程序,并控制設(shè)備完成指定的輸入/輸出操作。設(shè)備管理的目標一方面是要充分發(fā)揮各個設(shè)備的效能,提高設(shè)備的利用率;另一方面是要隱蔽設(shè)備操作的具體細節(jié),方便用戶使用設(shè)備。
(4)文件管理。在現(xiàn)代計算機系統(tǒng)中,程序和數(shù)據(jù)都是以文件的形式存儲在存儲設(shè)備(磁盤、磁帶等)中的。文件管理的任務(wù)是有效地組織、管理和存儲文件,方便用戶檢索和使用文件,并對文件實施共享、保密和保護措施。
(5)用戶接口。用戶接口的功能是向用戶提供一個使用系統(tǒng)的良好環(huán)境,使用戶能方便有效地利用系統(tǒng)完成自己的工作。為適應各種需要,操作系統(tǒng)通常提供3類用戶接口,即命令接口、圖形接口和程序接口。前兩者是供用戶在終端上使用的操作界面,后者是供程序員在編制程序時使用的系統(tǒng)調(diào)用界面。
1.2操作系統(tǒng)的發(fā)展與現(xiàn)狀
1.2.1操作系統(tǒng)的發(fā)展
操作系統(tǒng)經(jīng)歷了從無到有、由弱到強的發(fā)展過程。了解操作系統(tǒng)發(fā)展史可以幫助我們發(fā)現(xiàn)操作系統(tǒng)發(fā)展背后的原因、動機和技術(shù)的來龍去脈,從而加深對操作系統(tǒng)本質(zhì)的認識。
操作系統(tǒng)的發(fā)展與計算機硬件體系結(jié)構(gòu)和工藝技術(shù)的發(fā)展分不開。按照計算機硬件的4個時期的劃分,操作系統(tǒng)的發(fā)展經(jīng)歷了以下幾個階段。
1.第一代計算機(20世紀40年代中~50年代末)
第一代計算機采用電子管器件設(shè)計,體積非常龐大,運行速度也很慢,主要用于數(shù)值計算。這個時期的機器沒有操作系統(tǒng),采用機器語言編寫程序,完全靠手工方式來操作機器,方式有手工操作和手工批處理操作兩種。
1)手工操作
最初運行程序的方式是通過插板和連接線來編程,運行時將連線板插入機器中,再在控制臺上用扳鍵設(shè)置參數(shù),然后按下啟動按鈕啟動機器運行直到程序停止。程序運行中,用戶通過控制板的開關(guān)和狀態(tài)燈來調(diào)試程序。后來出現(xiàn)了讀卡機和紙帶機,取代了連線板。用戶將機器語言的程序和數(shù)據(jù)打在卡片或紙帶上,再用讀卡機或紙帶機將程序讀入機器。
由于用戶在進行手工操作期間計算機處于空閑等待狀態(tài),因此系統(tǒng)的效率極低。另外,手工操作的難度很大,只有專家級用戶才能勝任。
2)手工批處理操作
20世紀50年代初期,匯編語言和磁帶機誕生,計算機操作進入手工批處理階段。用戶可以事先將一批程序錄在磁帶上,然后啟動機器順序地讀入和執(zhí)行各個程序。磁帶機的傳輸速度高,縮短了程序加載的時間,而批處理方式又縮短了手工裝卸程序的時間,這使系統(tǒng)效率有所提高。
2.第二代計算機(20世紀50年代末~60年代中)
20世紀50年代末,計算機進入了晶體管時代,計算機的運行速度和可靠性都有了明顯的提高,大型機誕生,并開始進入實際應用領(lǐng)域,如少數(shù)大型公司、政府部門和大學等。這個時期的計算機主要用于科學和工程計算,大多用FORTRAN語言和匯編語言編程。由于機器價格昂貴,減少處理機的空閑等待時間成為這個時期主要的研究目標。解決方案就是批處理系統(tǒng)和執(zhí)行程序系統(tǒng)。
1)批處理系統(tǒng)
批處理的含義就是把用戶提交的作業(yè)(作業(yè)是指要計算機完成的一項計算任務(wù),包括程序、數(shù)據(jù)和控制命令)編成序列,成批地錄在磁帶機上,由常駐內(nèi)存的“監(jiān)督程序”控制一批作業(yè)依次運行。這個“監(jiān)督程序”就是操作系統(tǒng)的雛形,它標志著操作系統(tǒng)的誕生。
批處理系統(tǒng)實現(xiàn)了作業(yè)間的自動轉(zhuǎn)接,縮短了作業(yè)交替時主機的等待時間。但當作業(yè)進行I/O操作時,仍會造成主機大量的空閑等待時間,因而系統(tǒng)效率還是很低。
2)執(zhí)行程序系統(tǒng)
20世紀60年代初期,硬件技術(shù)取得突破性進展,通道和中斷技術(shù)出現(xiàn)。通道是一種專門用作控制外部設(shè)備傳輸數(shù)據(jù)的硬件,中斷機制允許主機在運行時被代表某種事件的信號打斷。利用通道技術(shù)和中斷技術(shù),主機可以將數(shù)據(jù)傳輸工作交給通道,在通道控制設(shè)備傳輸數(shù)據(jù)的同時,主機繼續(xù)執(zhí)行運算,傳輸完畢后,通道用中斷方式向主機報告,主機響應中斷后執(zhí)行中斷處理程序處理傳輸結(jié)果,然后再繼續(xù)運行原來的程序。這在很大程度上實現(xiàn)了處理機與外設(shè)的并行操作,系統(tǒng)效率因而大大提高。此時的I/O控制與中斷處理程序統(tǒng)稱為“執(zhí)行程序”?!皥?zhí)行程序”就是早期的操作系統(tǒng)。
3.第三代計算機(20世紀60年代中~70年代初)
計算機進入集成電路時代后,系統(tǒng)體積明顯減小,系統(tǒng)性能進一步提高,價格逐漸降低。此時,大型機開始進入商業(yè)領(lǐng)域,小型機也逐漸崛起,高級語言誕生。這一時期也是操作系統(tǒng)的興盛期,涌現(xiàn)出大量操作系統(tǒng),包括多道批處理系統(tǒng)、分時系統(tǒng)和實時系統(tǒng)等。這些奠定了現(xiàn)代操作系統(tǒng)的基本框架。
1)多道批處理系統(tǒng)
由于大型機造價很高,機時十分昂貴,因此充分利用系統(tǒng)資源,縮短作業(yè)周轉(zhuǎn)時間,提高系統(tǒng)吞吐量就成為操作系統(tǒng)的一個重要設(shè)計目標。
早期的批處理系統(tǒng)是單道的,即每次只調(diào)入一個用戶作業(yè)運行,因此系統(tǒng)資源的利用率很低。而多道批處理系統(tǒng)同時可容納多個作業(yè)運行,通過合理搭配作業(yè),使CPU與I/O設(shè)備資源都得到充分的利用,從而極大地提高了系統(tǒng)效率。
2)分時系統(tǒng)
隨著計算機應用逐漸普及,越來越多的普通用戶開始使用計算機來完成日常的工作。為了滿足用戶與系統(tǒng)交互的需要,同時又盡可能地充分利用尚且昂貴的系統(tǒng)資源,分時系統(tǒng)應運而生。分時系統(tǒng)允許多個用戶共享一臺計算機的資源,即在一臺計算機上連接幾臺甚至幾十臺終端機(鍵盤與顯示器),每個用戶都通過各自的終端機直接與計算機交互,使用這臺計算機的資源,直接與計算機交互。分時系統(tǒng)調(diào)度CPU按固定的時間片輪流為各個終端服務(wù)。由于計算機的處理速度很快,用戶感覺不到分時引起的運行停頓,似乎這臺計算機是自己專用的。
3)實時系統(tǒng)
隨著計算機性能和可靠性的不斷提高,價格的不斷降低,計算機開始進入自動控制等領(lǐng)域。這就要求計算機具備實時處理的能力。實時是指對于特定的輸入事件,系統(tǒng)能夠在限定的時間內(nèi)作出響應并完成對該事件的處理。實時系統(tǒng)就是具有實時響應能力的系統(tǒng),主要用于過程控制及實時信息處理。
4.第四代計算機(20世紀70年代初至今)
20世紀70年代初,計算機進入大規(guī)模集成電路時代,計算機性能迅速提高,價格不斷下降。尤其是20世紀80年代以來,超大規(guī)模集成電路使得計算機的體積大幅縮小,價格大幅度下降,而性能和可靠性不斷增強。這些因素導致個人計算機飛速發(fā)展和普及,同時計算機網(wǎng)絡(luò)也興起和迅速擴大。伴隨這些發(fā)展,操作系統(tǒng)也相應地向著個人計算、網(wǎng)絡(luò)與分布式計算方向發(fā)展。操作系統(tǒng)的理論日益完善,性能更加穩(wěn)定,操作更加方便。
1)個人操作系統(tǒng)
隨著計算機的普及,個人計算機(PC機)已進入到人們的日常工作和生活中。個人操作系統(tǒng)就是專為PC機設(shè)計的單用戶操作系統(tǒng),主要供個人用戶完成日常工作、文件編輯和娛樂使用。早期的PC操作系統(tǒng)以DOS為代表,特點是單用戶單任務(wù)和字符命令界面。20世紀80年代末到90年代初,顯示技術(shù)的發(fā)展使顯示設(shè)備的成本不斷降低,PC操作系統(tǒng)開始提供圖形用戶界面。而后隨著PC機的更新?lián)Q代和硬件性能的大幅提升,PC操作系統(tǒng)又引入了多任務(wù)機制,大大提升了系統(tǒng)的使用效率。目前,以Windows系統(tǒng)為代表的PC操作系統(tǒng)已發(fā)展成為成熟的多任務(wù)圖形窗口操作系統(tǒng)。
2)網(wǎng)絡(luò)操作系統(tǒng)
從20世紀80年代中期開始,計算機網(wǎng)絡(luò)飛速發(fā)展,計算機不再是孤立地存在,而是通過網(wǎng)絡(luò)相互連接,交流和共享信息資源。網(wǎng)絡(luò)操作系統(tǒng)是在傳統(tǒng)操作系統(tǒng)之上增加了對網(wǎng)絡(luò)設(shè)備和網(wǎng)絡(luò)協(xié)議的支持,實現(xiàn)計算機之間的通信和資源共享。網(wǎng)絡(luò)操作系統(tǒng)還提供了網(wǎng)絡(luò)管理、安全控制等各種網(wǎng)絡(luò)應用功能。
在網(wǎng)絡(luò)發(fā)展的早期,網(wǎng)絡(luò)規(guī)模較小,網(wǎng)絡(luò)操作系統(tǒng)的應用局限在局域網(wǎng)范圍,使用的協(xié)議也不盡兼容。20世紀90年代初,隨著廣域網(wǎng)和全球互聯(lián)網(wǎng)時代的到來,網(wǎng)絡(luò)操作系統(tǒng)逐步走向統(tǒng)一和開放。目前用于網(wǎng)絡(luò)服務(wù)器的操作系統(tǒng)主要有Unix和Windows兩大類,它們都采用標準的TCP/IP通信協(xié)議和標準的網(wǎng)絡(luò)服務(wù)協(xié)議,從而消除了系統(tǒng)間的通信障礙,實現(xiàn)了全網(wǎng)絡(luò)的信息交流與資源共享??v觀操作系統(tǒng)的發(fā)展歷史,可以看到主導其發(fā)展的兩條主要線索,即硬件和應用。早期操作系統(tǒng)的發(fā)展緊密依賴于硬件,動力在于提高昂貴的硬件資源的利用率。而隨著硬件價格的下降,操作系統(tǒng)更加注重系統(tǒng)的易用性,致力于構(gòu)造方便、安全和可靠的應用環(huán)境。值得注意的是,近年來操作系統(tǒng)的發(fā)展已逐漸走出依附于硬件發(fā)展的局面,形成自身的一套理論體系,并帶動整個軟件產(chǎn)業(yè)走向成熟。1.2.2操作系統(tǒng)的分類
目前,操作系統(tǒng)的分類主要有以下幾種方式。
1.按處理方式分
1)多道批處理操作系統(tǒng)
多道批處理系統(tǒng)(BatchProcessingOS)主要用于大型機系統(tǒng)。多道是指在內(nèi)存中存在多個作業(yè),同時處于運行狀態(tài),共享系統(tǒng)資源。當一個作業(yè)等待I/O操作時,CPU不是空閑等待,而是轉(zhuǎn)去執(zhí)行其他作業(yè)。批處理是指在系統(tǒng)外存中存在大量的后備作業(yè),可隨時調(diào)入內(nèi)存。作業(yè)的執(zhí)行完全由作業(yè)控制語言控制,系統(tǒng)不與用戶交互。所以,有時也稱批處理系統(tǒng)為脫機系統(tǒng)。
多道批處理系統(tǒng)的設(shè)計目標是充分利用系統(tǒng)資源,縮短作業(yè)周轉(zhuǎn)時間,提高系統(tǒng)吞吐量。其代表是IBM大型機操作系統(tǒng)VM、MVS和OS/390。
2)分時操作系統(tǒng)
多道批處理系統(tǒng)追求的目標是充分地利用系統(tǒng)資源,但從用戶的角度看,多道批處理系統(tǒng)的使用很不方便,它有以下缺點:
(1)用戶響應時間長。從用戶提交作業(yè)到拿回運行結(jié)果,可能會等待數(shù)小時甚至數(shù)天。
(2)用戶無法干預運行中的情況。
分時操作系統(tǒng)(TimeSharingOS)的做法是:由多個用戶使用各自獨立的終端共享一臺計算機。系統(tǒng)把CPU的運行時間分為很短的時間片,按時間片輪轉(zhuǎn)法將CPU輪流分配給各個用戶作業(yè)使用。從微觀上看,多個用戶的程序是在交替地運行的,但由于時間片劃分得很小,用戶感覺不到這種交替。所以,從宏觀上看,各個用戶的程序是在同時運行著的。分時系統(tǒng)具有以下特點:
(1)多路性:多個用戶同時使用一臺處理機,各用戶對應的作業(yè)都在同時進行著。
(2)獨立性:多個用戶作業(yè)之間互不干擾,用戶感覺好像是在獨立使用計算機。
(3)及時性:系統(tǒng)對用戶有足夠快的響應時間,用戶覺察不出作業(yè)的停頓。
(4)交互性:用戶利用終端直接與系統(tǒng)交互,發(fā)布命令,觀察作業(yè)的運行狀態(tài)和結(jié)果。
分時系統(tǒng)具有強大的交互、會話與事務(wù)處理能力,因而具有很強的通用性,可用于商業(yè)、教育、辦公等各種領(lǐng)域。分時操作系統(tǒng)的代表是Unix,目前廣泛應用在大、中、小型計算機和工作站中。
3)實時操作系統(tǒng)
實時操作系統(tǒng)(RealTimeOS)是指具有一定實時資源調(diào)度以及通信能力的操作系統(tǒng)?!皩崟r性”是指對特定事件的響應和處理時間是可預知的,在任何情況下都不會超出操作系統(tǒng)所承諾的上限。實時系統(tǒng)的響應時間比分時系統(tǒng)更短,更苛刻,往往要達到毫秒或微秒級。
實時操作系統(tǒng)主要關(guān)注系統(tǒng)的響應性。它的交互能力比較差,不強調(diào)資源利用率,但對響應時間和可靠性的要求很高。通常應用在需要精細的過程控制能力的領(lǐng)域,如航空航天、軍事、醫(yī)療和工業(yè)控制等。常用實時操作系統(tǒng)有QNX、VxWorks、實時Linux等。
2.按規(guī)模和用途分
1)主機操作系統(tǒng)
主機操作系統(tǒng)(MainframeOS)通常是指運行在IBM公司的大型機以及其他廠商制造的兼容主機上的操作系統(tǒng)。大型機與其他計算機的區(qū)別是其強大的輸入/輸出能力以及極高的可靠性。大型機的I/O吞吐量高達每秒數(shù)萬兆字節(jié)以上,而系統(tǒng)的可用性可達100%。為了有效地利用硬件資源,大型機上的操作以批處理作業(yè)為主,主要用于金融和大型企業(yè)的高端數(shù)據(jù)庫服務(wù)器和應用服務(wù)器。
目前的主機操作系統(tǒng)有OS/390、z/OS等專用系統(tǒng)以及少數(shù)Unix和Linux系統(tǒng)。近年來,Linux系統(tǒng)開始進入主機系統(tǒng),它所帶來的自由理念和價格沖擊給沉寂的大型機軟件領(lǐng)域注入了活力。
2)通用操作系統(tǒng)
最常用的操作系統(tǒng)是通用操作系統(tǒng)(GeneralPurposeOS),它由分時操作系統(tǒng)發(fā)展而來,是分時系統(tǒng)與批處理系統(tǒng)的結(jié)合。其原則是分時優(yōu)先,批處理在后,即在“前臺”以分時方式響應用戶的交互作業(yè),在“后臺”以批處理方式處理時間性要求不強的作業(yè)。
通用操作系統(tǒng)可以運行在各種具有標準化CPU、存儲和I/O架構(gòu)的通用機型上,包括PC服務(wù)器、工作站、中小型機。其應用范圍覆蓋了大部分的工程、科學和商業(yè)應用。
Unix、Linux、Windows等操作系統(tǒng)都是最常用的通用操作系統(tǒng)。
3)個人操作系統(tǒng)
個人操作系統(tǒng)(PCOS)是運行在PC機上的一種單用戶多任務(wù)的操作系統(tǒng),也稱為桌面操作系統(tǒng)。這種操作系統(tǒng)是為單個用戶服務(wù)的,但可以同時運行多項任務(wù)。與其他操作系統(tǒng)相比,個人操作系統(tǒng)更注重的是系統(tǒng)的易用性,而不是系統(tǒng)的利用率。它采用友好的圖形界面與人交互,使用方便。此外,個人操作系統(tǒng)還強調(diào)對多媒體和網(wǎng)絡(luò)訪問功能的支持,以滿足用戶日常辦公、學習、娛樂和訪問網(wǎng)絡(luò)等方面的需求。
Microsoft公司的Windows是目前最流行的PC機操作系統(tǒng),在全球桌面系統(tǒng)中占有九成以上的市場份額。蘋果公司的Mac系統(tǒng)因其美觀的界面和出色的多媒體的質(zhì)量而在圖形工作站占據(jù)龍頭地位。隨著易用性的改進,Linux系統(tǒng)也正逐步進入桌面操作系統(tǒng)領(lǐng)域,但目前還遠未對Windows系統(tǒng)構(gòu)成威脅。
3.按體系結(jié)構(gòu)分
1)網(wǎng)絡(luò)操作系統(tǒng)
網(wǎng)絡(luò)操作系統(tǒng)(NetworkOS)是指運行在網(wǎng)絡(luò)服務(wù)器上的操作系統(tǒng),因此也稱為服務(wù)器操作系統(tǒng)。網(wǎng)絡(luò)操作系統(tǒng)在內(nèi)核上支持網(wǎng)絡(luò)設(shè)備驅(qū)動和網(wǎng)絡(luò)協(xié)議,具備較強的網(wǎng)絡(luò)通信能力,同時提供包括文件傳輸、遠程登錄、數(shù)據(jù)庫訪問、電子郵件、信息檢索等服務(wù),使網(wǎng)絡(luò)用戶能夠方便地利用網(wǎng)絡(luò)上的各種資源。由于運行在開放的網(wǎng)絡(luò)環(huán)境中,開放性、并發(fā)性、安全性和可靠性都是網(wǎng)絡(luò)操作系統(tǒng)的重要指標。
網(wǎng)絡(luò)操作系統(tǒng)主要有Unix、FreeBSD、Linux和Windows。Unix主要應用于高端服務(wù)器,如大型文件系統(tǒng)、大型數(shù)據(jù)庫系統(tǒng)以及關(guān)鍵事務(wù)應用服務(wù)器等。Windows主要應用于中、低端服務(wù)器,如Web服務(wù)器。Linux的應用范圍非常廣泛,適用于從低到高的各種服務(wù)器。
2)分布式操作系統(tǒng)
分布式系統(tǒng)由若干臺計算機組成,它們通過高速局域網(wǎng)互連,形成一個緊密耦合的集群,在同一操作系統(tǒng)的控制下運行,這個操作系統(tǒng)就是分布式操作系統(tǒng)(DistributedOS)。分布式操作系統(tǒng)負責管理分布式系統(tǒng)的各個節(jié)點的資源,并控制分布式程序的運行。在分布式操作系統(tǒng)的控制下,各節(jié)點機協(xié)同工作,并行計算,相互可以充分共享資源,均衡負載,從而獲得極高的整體運算能力。分布式系統(tǒng)的另一個優(yōu)勢是它的可靠性。機群中的一個節(jié)點失效,不會影響整個系統(tǒng)的運作。目前,分布式系統(tǒng)的性能和可靠性已經(jīng)可以媲美一些大型機系統(tǒng),而造價卻低得多,因此,它已被看作是未來大型計算系統(tǒng)的一個發(fā)展方向。但目前的分布式操作系統(tǒng)還沒有進入真正實用的階段,它的研究是操作系統(tǒng)的一個熱門領(lǐng)域。其中,利用Linux構(gòu)造分布式系統(tǒng)也是目前的研究方向之一。
3)嵌入式操作系統(tǒng)
嵌入式操作系統(tǒng)(EmbededOS)是運行在嵌入式系統(tǒng)環(huán)境中,對整個嵌入式系統(tǒng)的資源進行調(diào)度和控制的系統(tǒng)。與其他類型的操作系統(tǒng)相比,嵌入式操作系統(tǒng)具有以下特點:
(1)體積?。呵度胧较到y(tǒng)大多使用閃存(FlashMemory)作為存儲介質(zhì),因此,嵌入式操作系統(tǒng)必須結(jié)構(gòu)緊湊、體積微小才能在有限空間中運行。
(2)可靠性高:嵌入式系統(tǒng)大多工作在較差的環(huán)境中,因此,嵌入式操作系統(tǒng)應具備處理各種事件(如斷電、誤操作等)的能力,在各種條件下保持正常運行。
(3)實時性強:大多數(shù)嵌入式操作系統(tǒng)都是實時系統(tǒng),很多還是強實時多任務(wù)系統(tǒng)。
目前流行的嵌入式操作系統(tǒng)包括3Com公司的PalmOS、MicroSoft公司的WinCE、WindRiver公司的VxWorks以及各種嵌入式Linux等。與其他操作系統(tǒng)相比,嵌入式Linux具有源碼開放、內(nèi)核小、效率高、可剪裁、網(wǎng)絡(luò)功能強和成本低等特點,是開發(fā)信息家電等嵌入式系統(tǒng)的理想平臺。
1.3Linux操作系統(tǒng)概述
1.3.1Linux操作系統(tǒng)的發(fā)展背景與歷史
1.?Linux的背景
Linux的誕生和發(fā)展與Unix系統(tǒng)、Minix系統(tǒng)、Internet、GNU計劃有著不可分割的關(guān)系,它們對于Linux有著深刻的影響和促進作用。
1)?Unix系統(tǒng)
1971年,Unix操作系統(tǒng)正式誕生于AT&T公司的Bell實驗室。它是一個多用戶多任務(wù)的分時操作系統(tǒng)。在那個年代,操作系統(tǒng)都是用匯編語言編寫而成的,追求大而全的設(shè)計,使得系統(tǒng)異常龐大和復雜。而此時出現(xiàn)的Unix是第一個用高級語言(C語言)寫成的,它的內(nèi)核只有2萬行代碼,短小精悍,性能卻非常優(yōu)異,令研究者們?nèi)绔@至寶。更為重要的是,Unix的源代碼是公開的,而且在整個20世紀70年代都是免費的,這使它很快就在大學和研究機構(gòu)中流行起來,隨后又被廣泛移植到各種機型的硬件平臺上。經(jīng)過不斷發(fā)展和演變,Unix的應用范圍現(xiàn)已覆蓋了大中小型計算機、工作站以及PC服務(wù)器,尤其是在中小型機以及工作站上始終占有統(tǒng)治地位。如今,Unix已具有30多年的穩(wěn)定運行歷史,以高可靠性、高效率著稱,主要用于重要的商務(wù)運算和關(guān)鍵事務(wù)處理。Unix有如下主要特點:
(1)無可比擬的安全性與穩(wěn)定性,能達到大型主機可靠性指標。
(2)良好的伸縮性,系統(tǒng)內(nèi)核和核外程序均可裁剪,以適合不同規(guī)模的計算。
(3)強大的TCP/IP支持,對Internet的發(fā)展功不可沒。
(4)良好的可移植性,支持廣泛的硬件平臺。
(5)源代碼公開,便于研究和教學。
Unix堪稱操作系統(tǒng)設(shè)計的典范,它的許多優(yōu)秀的設(shè)計思想和理念對后來的操作系統(tǒng)產(chǎn)生了深刻的影響,Linux就是許多類Unix系統(tǒng)中的一個佼佼者。由于Linux的開發(fā)者都具有各種Unix的背景,因此Linux繼承了Unix的優(yōu)秀設(shè)計思想,也集中了Unix的各種優(yōu)點。
2)?Minix系統(tǒng)
Unix是一個商用軟件,雖然它的源代碼是公開的,但不是免費的。Unix高昂的源碼許可證費用令普通用戶無法接受。另外,Unix對硬件平臺的要求也比較高,這限制了它在教學和研究領(lǐng)域的使用。
1987年,荷蘭教授Andrew設(shè)計了一個微型的Unix操作系統(tǒng)——Minix,用于操作系統(tǒng)的研究和教學。Minix非常小巧,可運行在廉價的微機上。它的源代碼是免費的,任何一個用戶都可以得到它、研究它和使用它。Linux的作者Linus就是通過研究Minix系統(tǒng)起步,開發(fā)了最初的Linux內(nèi)核。
3)?Internet
20世紀80年代中期,互聯(lián)網(wǎng)(Internet)逐漸形成,它將全球計算機網(wǎng)絡(luò)連接在一起,使世界各地的用戶能夠通過Internet交流和獲取信息。在互聯(lián)網(wǎng)的早期用戶中,很大一部分是軟件從業(yè)者和愛好者,他們通過Internet切磋技術(shù)、協(xié)同工作、發(fā)布和獲取軟件代碼,逐漸形成一種植根于互聯(lián)網(wǎng)的獨特的“黑客”文化。
Linux是一個誕生于互聯(lián)網(wǎng)時代的產(chǎn)物,它的開發(fā)者是遍布世界各地的無數(shù)個軟件高手,是網(wǎng)絡(luò)把他們的力量匯聚在一起,推動Linux不斷地發(fā)展和壯大起來。如果沒有Internet,Linux還只是個人手中的一個實驗程序。
4)?GNU
20世紀80年代初,自由軟件運動興起。自由軟件運動的目標是減少對軟件使用上的限制,使軟件的發(fā)展更具靈活性。自由軟件提倡四大自由,即運行軟件的自由、獲取源代碼修改軟件的自由、發(fā)布(免費/少許收費)軟件的自由以及發(fā)布后修改軟件的自由。
1983年,自由軟件運動的領(lǐng)導者RichardStallman提出GNU(GNU?’sNotUnix)計劃。GNU計劃致力于開發(fā)一個自由的類Unix操作系統(tǒng),包括內(nèi)核、系統(tǒng)工具和各種應用程序。GNU系統(tǒng)中的每一個構(gòu)件都是自由軟件,但不都是免費發(fā)布的(如XWindow系統(tǒng)等)。為了保證GNU計劃的軟件能夠被廣泛地共享,Stallman又為GNU計劃創(chuàng)作了通用軟件許可證(GeneralPublicLicense,GPL)。GPL是一個針對免費發(fā)布軟件的具體發(fā)布條款。對于遵照GPL許可發(fā)布的軟件,用戶可以免費得到軟件的源代碼和永久使用權(quán),可以任意復制和修改,同時也有義務(wù)公開修改后的代碼。
到1991年,GNU已經(jīng)完成了除系統(tǒng)內(nèi)核外的幾乎所有必備軟件的開發(fā),其中大部分是按GPL許可發(fā)布的。此時,Linux內(nèi)核也正式發(fā)布了。Linux內(nèi)核雖然不是GNU計劃的一部分,但它是基于GPL許可發(fā)布的,也就是說,它被奉獻給了GNU作為系統(tǒng)內(nèi)核。自然地,各種GNU軟件被組合到了Linux內(nèi)核上,構(gòu)成了GNU/Linux這一完整的自由操作系統(tǒng)。
GPL許可與Internet網(wǎng)絡(luò)相結(jié)合,改變了傳統(tǒng)的以公司為主體的封閉式軟件開發(fā)模式,代之以源代碼開放和全球范圍協(xié)作的全新開發(fā)模式。這種開發(fā)模式激發(fā)了世界各地的軟件開發(fā)者的熱情和創(chuàng)造力,推動自由軟件迅速地發(fā)展和壯大。
2.?Linux的發(fā)展歷史
1991年初,芬蘭赫爾辛基大學的學生LinusTorvalds出于個人愛好,決定自己編寫一個類似Minix的操作系統(tǒng)。他在PC機上學習和研究Minix,并參照它開發(fā)出最初的Linux內(nèi)核。1991年9月,Linus通過Internet正式公布了他的第一個“作品”——Linux0.01版。這個系統(tǒng)在網(wǎng)上一出現(xiàn),立即吸引了許多軟件高手投入到開發(fā)工作中。到1993年,大約有100余名程序員參與了Linux內(nèi)核的編寫和修改工作。在眾多愛好者的幫助下,Linux的完整內(nèi)核被迅速開發(fā)出來。
1994年3月,Linux1.0內(nèi)核發(fā)布。該內(nèi)核具備了完整的類Unix操作系統(tǒng)的本質(zhì)特性,不同的是,Linux是按免費自由軟件的GPL許可發(fā)行的,這是促進Linux快速發(fā)展的決定性因素。更多開發(fā)者開始投入Linux內(nèi)核的開發(fā)、測試和修正工作,還有許多人將GNU項目已開發(fā)出的C庫、gcc、emacs、bash等移植到Linux內(nèi)核上來,使之成為一個完整可用的系統(tǒng)。
1996年6月,Linux2.0內(nèi)核發(fā)布。此時的Linux已經(jīng)進入了實用階段。RedHat等許多軟件公司看好Linux的前景,紛紛介入其中。他們把內(nèi)核、源代碼及應用程序整合在一起,又增加了一些實用工具軟件和圖形界面,形成各種發(fā)行版并開始廣泛發(fā)行。
1998年以來,Linux逐漸獲得商業(yè)認同。很多實力雄厚的商業(yè)軟硬件公司,如IBM、Intel、Sun、Novell、Oracle等紛紛宣布對Linux的投資和支持計劃。這奠定了Linux作為服務(wù)器操作系統(tǒng)進入實際應用領(lǐng)域的地位。
目前,Linux的開發(fā)和發(fā)布模式是:內(nèi)核程序由核心組成員負責更新和發(fā)布,驅(qū)動程序和應用軟件由眾多Linux愛好者、軟件供應商和系統(tǒng)集成商等自行開發(fā)或移植。
近年來,Linux還在蓬勃發(fā)展中。憑借其優(yōu)秀的設(shè)計和不凡的性能,加上知名企業(yè)的大力支持,市場份額逐步擴大。在短短的十幾年中,Linux已從一個為滿足個人愛好而設(shè)計的產(chǎn)物成長為一個充滿競爭力和活力的主流操作系統(tǒng)。1.3.2Linux操作系統(tǒng)的特點
總的說來,Linux是一個遵循POSIX標準的,多用戶、多任務(wù)的自由操作系統(tǒng)。與其他操作系統(tǒng)相比,它有以下顯著特點:
(1)基于Unix設(shè)計,性能出色。Linux繼承了Unix的優(yōu)秀品質(zhì),具有出色的性能、可靠性和穩(wěn)定性,為系統(tǒng)的安全運行提供了保證。Linux系統(tǒng)可以勝任7?×?24小時不間斷的工作,除非硬件出問題,系統(tǒng)出現(xiàn)死機的概率很小。
(2)遵循GPL許可,自由軟件。Linux遵循GNU的GPL許可證,是自由軟件家族中最重要的一員。用戶可以免費地獲得和使用Linux,并且在GPL許可的范圍內(nèi)自由地修改和傳播,因而是學習、應用、開發(fā)操作系統(tǒng)及其他軟件的理想平臺。
(3)符合POSIX標準,兼容性好。POSIX是基于Unix制定的針對操作系統(tǒng)應用接口的國際標準,目的是為了獲得不同操作系統(tǒng)在源代碼級上的軟件兼容性。Linux是一個符合POSIX標準的操作系統(tǒng)。這就是說,基于POSIX標準編寫的應用程序(包括大多數(shù)Unix、類Unix系統(tǒng)的應用程序)都可以方便地移植到Linux系統(tǒng)上,反之亦然。
(4)可移植性好??梢浦残允侵笇⒉僮飨到y(tǒng)從一種計算機硬件平臺轉(zhuǎn)移到另一種計算機硬件平臺后,仍能正常運行的能力。Linux的內(nèi)核只有不到10%的代碼采用了匯編語言,其余均采用C語言編寫,因此具備高度可移植性。目前,Linux可以在包括i386、Sparc、Alpha、Mips、PowerPC等在內(nèi)的各種計算機平臺上運行。
(5)網(wǎng)絡(luò)功能強大。Linux是在互聯(lián)網(wǎng)上發(fā)展起來的,它有著與生俱來的強大的網(wǎng)絡(luò)功能。其網(wǎng)絡(luò)協(xié)議內(nèi)置在內(nèi)核中,性能強、兼容性好,可以輕松地與各種網(wǎng)絡(luò)集成在一起。Linux內(nèi)核外的網(wǎng)絡(luò)應用功能也十分強大,可以運行各類網(wǎng)絡(luò)服務(wù)。
(6)安全性好。Linux系統(tǒng)是針對多用戶和網(wǎng)絡(luò)環(huán)境設(shè)計的,在設(shè)計之初就充分考慮了安全性。Linux內(nèi)核中采取了許多保障系統(tǒng)資源安全的措施,如文件權(quán)限控制、審計跟蹤、核心授權(quán)等,使得Linux可以十分安全地運行在開放網(wǎng)絡(luò)環(huán)境中。另外,由于源碼開放,研究者眾多,系統(tǒng)漏洞的修補和更新速度都很快,抵御病毒攻擊的能力也很強。盡管有這些優(yōu)秀的特性,Linux系統(tǒng)還是存在一些問題。目前的主要問題是:入門要求比較高,中文支持不夠好;發(fā)行版本太多,比較混亂,亟待標準化;出自個人之手的應用軟件良莠不齊,用戶需仔細辨別使用;我國對自由軟件版權(quán)的確認和相關(guān)法律還不成熟,所以,當用于商業(yè)目的時要特別注意版權(quán)的細節(jié)問題。1.3.3Linux操作系統(tǒng)的組成
Linux的基本系統(tǒng)由3個主要部分組成:
●
內(nèi)核:運行程序和管理基本硬件設(shè)備的核心程序。
●
Shell:系統(tǒng)的命令行用戶界面,負責接收、解釋和執(zhí)行用戶輸入的命令。
●
文件系統(tǒng):按一定的組織方式存放在磁盤上的文件集合。
以上部分構(gòu)成的Linux基本系統(tǒng)是系統(tǒng)的最小配置,它使用戶可以運行程序、管理文件和使用設(shè)備。在基本系統(tǒng)之上,用戶可以通過有選擇地附加一些系統(tǒng)和應用軟件(如圖形用戶界面、開發(fā)環(huán)境等)來擴展系統(tǒng),使其滿足不同的應用需求。圖1-3描述了Linux系統(tǒng)的結(jié)構(gòu)。圖1?3Linux系統(tǒng)結(jié)構(gòu)示意圖1.3.4Linux操作系統(tǒng)的版本
“Linux”一詞有兩種不同的含義:從技術(shù)角度上講,Linux指的是一個自由的“類Unix”操作系統(tǒng)的內(nèi)核,由Linus帶領(lǐng)的內(nèi)核團隊維護和發(fā)布。從使用角度看,Linux是指以Linux內(nèi)核為基礎(chǔ)的,包含了系統(tǒng)工具和各種應用的完整的“類Unix”操作系統(tǒng),這種完整的Linux系統(tǒng)稱為Linux發(fā)行(distribution)版本,由各發(fā)行商或社團組織維護和發(fā)布。
1.?Linux的內(nèi)核版本
所有Linux系統(tǒng)使用的內(nèi)核只有一個版本,由Linus本人帶領(lǐng)的內(nèi)核團隊維護和發(fā)布。內(nèi)核的版本號由三組數(shù)字表示。第一組數(shù)字是主版本號,主版本不同的內(nèi)核在功能上有很大的差異。第二組數(shù)字是次版本號。如果是奇數(shù),則表示該版為測試版,可能有潛在缺陷;如果是偶數(shù)則表示該版已經(jīng)過嚴格測試,是穩(wěn)定的版本。第三組數(shù)字是修訂序列號,數(shù)字越大則表示功能越強或缺陷越少。目前的內(nèi)核穩(wěn)定主次版本是在2003年12月發(fā)布的2.6版。
2.?Linux的發(fā)行版本
Linux的知名發(fā)行版本多達幾百種,每種發(fā)行版本都以Linux內(nèi)核為基礎(chǔ),配置的程序也大同小異,通常包括圖形界面、網(wǎng)絡(luò)服務(wù)程序、標準系統(tǒng)庫、應用程序等。各版本之間真正的區(qū)別在于其安裝、配置、附加應用、管理工具以及技術(shù)支持的不同。目前比較流行的發(fā)行版本主要有以下幾種:
1)?RedHat和Fedora
RedHat公司是商業(yè)化最成功的Linux發(fā)行商,它的RedHatLinux無論在服務(wù)器上還是桌面系統(tǒng)中都工作得很好。RedHatLinux擁有數(shù)量龐大的用戶和許多創(chuàng)新技術(shù),并獲得了很多商業(yè)的支持和社區(qū)技術(shù)支持,它的興衰一度成為Linux成敗的晴雨表。RedHat提供了優(yōu)秀的安裝程序、圖形配置工具以及先進的軟件包管理工具RPM,在硬件與軟件兼容性上也做得很好。
2003年底,RedHat公司停止了免費版RedHatLinux的開發(fā)工作,將原RedHatLinux拆分為兩個系列:用于服務(wù)器的商業(yè)化版本RedHatEnterpriseLinux(RHEL)和定位于桌面用戶的免費版本Fedora。RHEL由RedHat公司提供收費的技術(shù)支持和更新,產(chǎn)品測試充分,穩(wěn)定性好,主要用做企業(yè)服務(wù)器系統(tǒng)。Fedora的開發(fā)工作則是采用了由RedHat主辦、社區(qū)支持的開放源代碼項目的形式進行。Fedora采用了許多Linux的最新技術(shù),版本更新周期短。所有用到企業(yè)版的技術(shù)都要先在Fedora上試驗。因此,F(xiàn)edora是體驗Linux前沿技術(shù)的平臺。但Fedora不提供穩(wěn)定性和支持保證。
2)?Debian和Ubuntu
Debian/GNULinux是最純正的自由軟件Linux發(fā)行版,Debian的所有軟件包都是自由軟件,完全由分布在世界各地的Linux愛好者維護并發(fā)行,因而它的軟件資源十分豐富。Debian非常注重穩(wěn)定性,它的發(fā)行版本變化不快,但特別強調(diào)網(wǎng)絡(luò)維護和在線升級。
Ubuntu是一個基于Debian的較新的發(fā)行版,它擁有Debian所有的優(yōu)點,并在某些方面有所加強。Ubuntu的安裝非常人性化,其默認的桌面系統(tǒng)既簡單又不失華麗。Ubuntu還被譽為對硬件支持最好、最全面的Linux發(fā)行版本之一,許多在
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子商務(wù)平臺運營策略考核試卷
- 2024年度廣西壯族自治區(qū)國家保安員資格考試題庫檢測試卷A卷附答案
- 物聯(lián)網(wǎng)在灌溉系統(tǒng)中的應用考核試卷
- 石膏礦山開采區(qū)土壤污染防治考核試卷
- 消防員崗位個人述職報告范文
- 動物檢疫員求職信
- 十佳方劑練習卷附答案(一)
- 審查制度流程復習試題含答案
- 2025年度建筑施工現(xiàn)場安全員聘用與監(jiān)督協(xié)議
- 2025年涂鍍中間體項目合作計劃書
- 北京市西城區(qū)2022-2023學年三年級上學期英語期末試卷(含聽力音頻)
- 電動托盤搬運車操作規(guī)程范文(2篇)
- 教育部中國特色學徒制課題:基于中國特色學徒制的“金教師”團隊建設(shè)研究
- 【MOOC】輪滑高級教程-東北大學 中國大學慕課MOOC答案
- 2024年醫(yī)院副院長工作總結(jié)范文(2篇)
- 政府采購評審專家考試試題庫(完整版)
- 色彩原理與應用智慧樹知到期末考試答案章節(jié)答案2024年上海出版印刷高等??茖W校
- 2024年貴州貴安新區(qū)產(chǎn)業(yè)發(fā)展控股集團有限公司招聘筆試參考題庫含答案解析
- GB/T 34281-2017全民健身活動中心分類配置要求
- (完整版)鉗工教案
- 2歲寶寶思維能力的發(fā)展特點
評論
0/150
提交評論