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