第一章 操作系統(tǒng)引論
1.1 操作系統(tǒng)的概念與目標(biāo)
操作系統(tǒng)(Operating System,OS)是配置在計算機硬件上的第一層軟件,是對硬件系統(tǒng)的首次擴充。其主要目標(biāo)是:
- 方便性:為用戶提供友好的交互界面,使計算機更易于使用。
- 有效性:提高系統(tǒng)資源的利用率和系統(tǒng)的吞吐量。
- 可擴充性:便于增加新功能和模塊,適應(yīng)硬件與體系結(jié)構(gòu)的發(fā)展。
- 開放性:遵循國際標(biāo)準(zhǔn),支持軟硬件兼容與互操作。
1.2 操作系統(tǒng)的發(fā)展歷程
- 手工操作階段(無操作系統(tǒng)):用戶獨占全機,CPU等待人工操作,資源利用率極低。
- 批處理系統(tǒng):通過監(jiān)督程序?qū)崿F(xiàn)作業(yè)的自動過渡,分為單道批處理(順序執(zhí)行)和多道批處理(多程序并發(fā),顯著提高資源利用率)。
- 分時系統(tǒng):采用時間片輪轉(zhuǎn)方式,使多個用戶通過終端共享主機資源,提供交互能力,例如UNIX系統(tǒng)。
- 實時系統(tǒng):能夠及時響應(yīng)外部事件,在規(guī)定時間內(nèi)完成處理,分為實時控制系統(tǒng)(如工業(yè)控制)和實時信息處理系統(tǒng)(如訂票系統(tǒng))。
- 現(xiàn)代操作系統(tǒng)發(fā)展:隨著網(wǎng)絡(luò)化和分布式計算的需求,出現(xiàn)了網(wǎng)絡(luò)操作系統(tǒng)(如Windows Server)和分布式操作系統(tǒng)(如谷歌的分布式架構(gòu)),強調(diào)資源共享、通信與協(xié)同。
1.3 操作系統(tǒng)的基本特性
- 并發(fā)性:多個事件在同一時間間隔內(nèi)發(fā)生。操作系統(tǒng)通過進程管理實現(xiàn)并發(fā)執(zhí)行。
- 共享性:系統(tǒng)資源可供多個并發(fā)執(zhí)行的進程共同使用,包括互斥共享(如打印機)和同時訪問(如只讀文件)。
- 虛擬性:通過技術(shù)將一個物理實體映射為多個邏輯實體,如虛擬存儲器(利用硬盤擴展內(nèi)存)和虛擬處理器(多道程序分時使用CPU)。
- 異步性:進程的執(zhí)行以不可預(yù)知的速度推進,但操作系統(tǒng)必須保證在相同環(huán)境下運行結(jié)果的一致性。
1.4 操作系統(tǒng)的主要功能
- 處理機管理:包括進程控制、同步、通信和調(diào)度,核心是多道程序環(huán)境下CPU的高效分配。
- 存儲器管理:負責(zé)內(nèi)存分配與回收、地址映射、內(nèi)存保護與擴充(虛擬內(nèi)存技術(shù))。
- 設(shè)備管理:完成I/O請求,實現(xiàn)設(shè)備分配、緩沖管理和虛擬設(shè)備功能(如SPOOLing技術(shù))。
- 文件管理:管理外存信息,提供文件存儲、檢索、共享和保護機制。
- 用戶接口:提供命令接口(CLI)、圖形用戶界面(GUI)和程序接口(API),方便用戶與系統(tǒng)交互。
1.5 操作系統(tǒng)的體系結(jié)構(gòu)
- 傳統(tǒng)的模塊化結(jié)構(gòu):將功能劃分為模塊,接口復(fù)雜,維護困難。
- 分層式結(jié)構(gòu):將系統(tǒng)分為若干層,每層基于下層服務(wù),結(jié)構(gòu)清晰但效率可能降低。
- 微內(nèi)核結(jié)構(gòu):將核心功能(如進程通信、低級存儲管理)置于微內(nèi)核,其他功能作為服務(wù)進程運行,提高了可擴展性和可靠性,代表如Mach和Windows NT。
1.6 計算機系統(tǒng)集成中的操作系統(tǒng)角色
在計算機系統(tǒng)集成中,操作系統(tǒng)處于核心地位,承上啟下:
- 硬件抽象層:隱藏硬件細節(jié),為上層軟件提供統(tǒng)一的調(diào)用接口。
- 資源管理者:集成CPU、內(nèi)存、I/O設(shè)備等硬件資源,實現(xiàn)高效、公平的分配與調(diào)度。
- 系統(tǒng)服務(wù)提供者:通過系統(tǒng)調(diào)用為應(yīng)用程序提供文件、網(wǎng)絡(luò)、安全等基礎(chǔ)服務(wù)。
- 協(xié)同與擴展平臺:支持多任務(wù)并發(fā)、網(wǎng)絡(luò)通信和分布式計算,是構(gòu)建復(fù)雜應(yīng)用系統(tǒng)(如數(shù)據(jù)庫、Web服務(wù)器)的基礎(chǔ)平臺。
本章小結(jié)
第一章奠定了操作系統(tǒng)學(xué)習(xí)的基礎(chǔ),明確了其作為計算機系統(tǒng)核心軟件的地位。從發(fā)展歷程理解其演進的驅(qū)動力,從四大特性把握其本質(zhì),從五大功能掌握其核心任務(wù)。在計算機系統(tǒng)集成中,操作系統(tǒng)是連接硬件與應(yīng)用的關(guān)鍵樞紐,其設(shè)計與性能直接影響整個系統(tǒng)的效率、穩(wěn)定性和可擴展性。后續(xù)章節(jié)將深入探討進程管理、內(nèi)存管理等具體功能的實現(xiàn)原理。