- Linux操作系統基礎案例教程
- 旭日 嚴作明 李占平
- 2254字
- 2019-09-30 13:25:27
1.4 操作系統
操作系統(Operating System,OS)是有效管理計算機系統中的各種資源,合理組織計算機的工作流程,以方便用戶使用的一組軟件的集合。操作系統抽象層級結構如圖1-6所示。

圖1-6 計算機系統的抽象層次結構
操作系統是現代計算機系統的重要組成部分,它是計算機系統運行和工作必不可少的軟件,各種類型的計算機系統都離不開操作系統。由圖1-6可以看出,操作系統是在計算機硬件的基礎上對硬件進行的擴充,它是計算機系統中最核心的系統軟件,其他的系統軟件和應用軟件都是在操作系統的基礎上構建起來的。
操作系統介于計算機硬件和計算機用戶之間,它與計算機硬件、軟件、應用系統,以至于計算機用戶都有千絲萬縷的聯系。一臺沒有任何軟件配置和支持的計算機被稱為“裸機”,要讓裸機接受用戶發出的命令,執行相應的操作是非常困難的。操作系統在硬件之上建立了一個服務體系,為操作系統以外的系統軟件和應用軟件提供了強大的支持,用戶通過這個服務體系操作和使用計算機系統,面對的是一個非常友好的、方便的環境界面,因而用戶面對的是一個更加易于使用的計算機系統。
現代操作系統具有以下主要特征。
(1)并發性(Concurrence)
在操作系統中,并發是指多個事件在同一時間間隔內發生。對計算機而言,并發是指在一段時間內,多道程序“在宏觀上同時運行”。顯然,多道和并發是同一個事物的兩個方面,正是由于多道程序設計的實現才導致了多個程序的并發執行。而程序的并發執行導致了多個程序競爭一臺計算機,使得并行運行中的任何一個程序都處于已開始運行但又未結束的狀態。現代操作系統是并發系統的管理機構,其本身就是與用戶程序一起并發執行的。程序的并發執行帶來了程序串行執行所沒有的新問題,并導致操作系統對程序管理的復雜化,以及操作系統本身的復雜化。
(2)虛擬性(Virtual)
虛擬是指把一個物理實體映射為多個邏輯意義上的實體。前者是客觀存在的,后者是虛構的,是一種感覺性的存在,即主觀上的一種假象。例如,在多道程序系統中,雖然只有一個CPU,每次只能執行一個程序,但采用多道程序技術后,在一段時間間隔內,宏觀上有多個程序在運行。在用戶看來,就好像有多個CPU在各自運行自己的程序。這種情況就是將一個物理的CPU虛擬為多個邏輯上的CPU。邏輯上的CPU稱為虛擬處理機,類似的還有虛擬存儲器和虛擬設備等。
(3)共享性(Sharing)
操作系統是多道程序的管理機構。它使多個用戶作業共享有限的計算機系統資源。由于資源是共享的,就必然會導致如何在多個作業之間合理地分配和使用資源,并且如何充分發揮計算機系統資源的利用效率的問題。
(4)不確定性(Nondeterministic)
所謂操作系統的不確定性,是指在操作系統控制下多個作業的執行順序和每個作業的執行時間是不確定的。例如,有三個作業,兩次或多次運行的執行序列可能不相同,每一個作業占有計算機的時間也可能不相同。
在計算機發展過程中,產生許多應用于不同類型計算機,具有不同功能、不同特點的操作系統,下面介紹幾種當前主流的操作系統。
(1)Windows操作系統
從20世紀90年代起,在個人操作系統領域,微軟公司的Windows操作系統系列占據著主流地位。目前流行的有Windows 2000、Windows Server 2003、Windows XP、Windows Vista、Windows 7、Windows 8、Windows 10、Windows Server 2008、Windows Server 2012等。
Windows操作系統特點如下:
?具有豐富多彩的圖形用戶界面,以全新的圖標、菜單和對話方式支持用戶操作,使計算機的操作更方便、更容易。
?支持多任務運行,多任務之間可方便地切換和交換信息。
?充分利用硬件的潛在功能,提供了虛擬存儲功能等內存管理能力。
?提供了方便可靠的用戶操作管理,如程序管理器、文件管理器、打印管理器、控制面板等操作,可完成對文件、任務和設備的并行管理。
?在操作系統本身,提供了功能強大的、方便使用的工具軟件和實用軟件,如字處理軟件、繪圖軟件、通信軟件、辦公實用化軟件等。
(2)UNIX操作系統
UNIX操作系統是全球聞名的功能強大的分時多用戶多任務操作系統,最早由美國電話與電報公司(AT&T)貝爾實驗室研制。在1969年以來,廣泛應用于大、中、小型計算機上。隨著微型機系統功能的增強,逐漸下移配置到個人計算機和微機工作站上。它的早期微機版本被稱為XENIX系統,目前,已將UNIX系統的4.x版本在微機上實現運行。UNIX系統是一種開放式的操作系統,它具有以下特點:
?它是一個真正的多用戶、多任務的操作系統,也是一種著名的分時操作系統。
?具有短小精悍的系統內核和功能強大的核外程序,前者提供系統基本服務,后者則向用戶提供功能強大的服務,這種兩層結構既方便了系統應用和維護,又方便了系統的擴充。
?具有典型的樹狀結構的文件系統,并可建立可拆卸的文件子系統(文件存儲系統)。
?具有良好的可移植性,便于系統開發和應用程序開發。
?雖然用戶操作界面多采用命令行方式,但其強有力的shell編程環境,既成為命令解釋工具,又成為一種編程語言。并具有X Window等強大的圖形顯示環境。
(3)Linux操作系統
Linux操作系統是UNIX操作系統在微機上的實現,它最早于1991年開發出來并在網上免費發行。Linux的開發得到了Internet上許多UNIX程序員和愛好者的幫助,可以說它是由一些人員自發開發出來的操作系統,整個操作系統的設計是開放式和功能式的。它具有如下特點:
?Linux是一個完全多任務多用戶操作系統,同時融合了網絡操作系統的功能。允許多用戶同時登錄到一臺機器上同時運行多道程序。它還支持虛擬控制臺,這種虛擬控制臺可使用戶在多個登錄上進行轉換。
?Linux可支持各種類型的文件系統。ext2文件系統已被設計為Linux專用。
?Linux提供TCP/IP網絡協議的實現。支持多種以太網卡及個人計算機的接口。同時還支持TCP/IP客戶與服務器功能,如WWW、FTP、Telnet等。
?Linux支持字符和圖形界面。它支持多種顯示器,是一個完整的X窗口軟件。
- What's New in TensorFlow 2.0
- Linux C/C++服務器開發實踐
- arc42 by Example
- Magento 2 Theme Design(Second Edition)
- Java Web程序設計
- TypeScript實戰指南
- Mastering Python Networking
- Python數據分析從0到1
- Learn React with TypeScript 3
- Java EE 7 Performance Tuning and Optimization
- RabbitMQ Cookbook
- Visual FoxPro程序設計習題集及實驗指導(第四版)
- Extreme C
- Hands-On JavaScript for Python Developers
- 零基礎學HTML+CSS第2版