內容提要:本文詳細介紹電腦操作系統,包括計算機及其操作系統的基本概念,操作系統的組成、種類、功能等。這里,“電腦”包括電子計算機、智能手機和其它智能設備的控制核心。
關鍵詞:計算機 電腦 操作系統 windows UNIX linux
(一)電腦及其操作系統的概念
在這里,“電腦”包括電子計算機(Computer)、智能手機和其它智能設備的控制核心。
電子計算機系統由硬件(Hardware)系統和軟件(Software)系統組成。
計算機系統的核心技術有兩項:計算機芯片,計算機操作系統。
計算機硬件系統的核心是中央處理單元(CPU)。對于普通計算機,CPU組裝在一個芯片上。
計算機軟件系統是計算機的程序、相應的數據和文檔的集合。計算機軟件系統包括系統軟件、支撐軟件、基礎軟件和應用軟件。
在計算機系統,操作系統(Operating System,簡稱OS)是計算機系統軟件的核心。如果把一個計算機系統比喻為一個國家的軍隊,那么,操作系統是軍隊的總司令和總后勤部長。
計算機操作系統的定義:計算機操作系統是管理和控制計算機硬件與軟件資源的計算機程序的集合。
沒有操作系統和其它軟件的計算機叫“裸機”。
計算機操作系統是直接運行在裸機上的最基本的系統軟件。
計算機的任何軟件都在操作系統的指揮、管理下運行。沒有操作系統,計算機就是廢物。
對于網絡和信息安全,操作系統是最重要的核心軟件。
從計算機系統的結構來看,操作系統位于底層硬件之上。在操作系統之上,有支撐軟件、基礎軟件和應用軟件。
從計算機用戶的角度來說,操作系統體現為對用戶提供的各項服務。
從設計人員的角度來說,操作系統是指各式各樣的系統模塊及其與各單元之間的聯系。
經過幾十年的發展,計算機操作系統已經由開始的簡單控制循環體發展成為很復雜、很龐大的計算機軟件系統。
全世界常用的電腦操作系統全部是美國的企業和研究機構開發的。
(二)計算機語言與操作系統
要編寫計算機程序,必須有程序設計語言。程序設計語言包括機器語言(由2進制數字組成)、匯編語言、高級程序設計語言。
使用廣泛的高級程序設計語言包有FORTRAN,BASIC,COBOL,C,C++,JAVA,Python/ target=_blank class=infotextkey>Python,等等。
操作系統是用計算機程序設計語言編寫的。
編寫操作系統的語言有兩種:
其一,匯編語言。用匯編語言編寫的操作系統很難被破解,但是語句很多。例如微軟公司2013年發布的桌面操作系統Windows 11,其源程序有大約1000萬行。
其二,高級程序設計語言,主要是C和Java。用途最廣的網絡操作系統UNIX和Linux是用C語言編寫的。
(三)操作系統的組成部分和內核
本節所述是普通計算機的操作系統。
(A)計算機操作系統的組成部分
計算機操作系統由下列四個部分組成:
一.驅動程序:最底層的、直接控制和監視各類硬件的部分。它們的職責是隱藏硬件的具體細節,并向其它部分提供一個抽象的、通用的接口。
二.內核:操作系統的內核部分通常運行在最高特權級,負責提供基礎性、結構性的功能。
三.接口庫:是一系列特殊的程序庫。它們的職責在于把系統所提供的基本服務包裝成應用程序所能夠使用的編程接口(API)。這是最靠近應用程序的部分。
四.外圍:指操作系統中除以上三類以外的所有其它部分,通常是用于提供特定高級服務的部件。
并不是所有的操作系統都嚴格包括上述四大部分。例如,在早期的微軟Windows中,各部分耦合程度很深,難以區分彼此。而在使用外核結構的操作系統中,則根本沒有驅動程序的概念。
操作系統中四大部分的不同布局形成了幾種整體結構。常見的結構包括:簡單結構,分層結構,微內核結構,垂直結構,以及虛擬機結構。
(B)計算機操作系統的內核結構
內核是操作系統的核心,是最基礎的構件。內核的結構有下列四種:
一.單內核(Monolithic kernel),又稱為宏內核。單內核結構是操作系統中各內核部件雜然混居的形態。該結構始于1960年代,是操作系統內核與外圍分離時的最初形態。
二.微內核(Microkernel),又稱為微核心。微內核結構是1980年代產生的,其結構性部件與功能性部件是分離的。
三.混合內核(Hybrid kernel),像微內核結構,只不過它的組件更多地在核心中運行,以獲得更快的執行速度。
四.外內核(Exokernel),其設計理念是盡可能地減少軟件的抽象化。這使得開發者可以專注于硬件的抽象化。
大部分常用操作系統采用單內核結構,例如大部分的UNIX、Linux,以及Windows(微軟聲稱Windows NT是基于改良的微內核架構的)。有一些嵌入式操作系統使用外核。
(四)電腦操作系統的種類
電腦操作系統的種類繁多。各種設備安裝的操作系統從簡單到復雜,可分為智能卡(IC卡)操作系統,傳感器節點操作系統,嵌入式操作系統,實時操作系統,桌面微型機操作系統,網絡操作系統,大型機、巨型機操作系統,等等。
對操作系統進行分類,有兩種方式:一是根據操作系統的功能分類,二是根據操作系統的應用領域分類。
(A)根據操作系統的功能分類
根據操作系統的功能,分別有實時系統、批處理系統、分時系統、網絡操作系統等。
一.實時系統
實時系統主要是指系統可以迅速地對外部命令進行響應,在對應的時間里處理問題,協調系統工作。各種計算機控制系統的操作系統都是實時系統。
二.分時系統
在分時系統,多個用戶共同使用一臺主機,滿足用戶的人機交互需要。分時系統具有多路性、獨立性、交互性、及時性等優點。這是主機-用戶-終端架構的系統。早期的大型機操作系統都是這種架構的分時系統。IBM公司的OS/360就是這種系統。
三.批處理系統
批處理系統出現在20世紀60年代。多個用戶在終端提交任務,批處理系統按照預定的規則分期、分批處理各項任務。批處理系統能夠提高資源的利用率和系統的吞吐量。IBM公司的OS/360也是一種批處理系統。
四.網絡操作系統
網絡操作系統又稱網絡服務器,是向網絡計算機提供服務的特殊的操作系統。網絡系統分為服務器和客戶端。服務器的主要功能是管理服務器和網絡上的各種資源和網絡設備的共用。客戶端有著能接收應用服務器所傳遞的信息的功能。
(B)根據操作系統的應用領域分類
根據操作系統的應用領域劃分,主要有三種:桌面操作系統、服務器操作系統和嵌入式操作系統。
一.桌面操作系統
桌面(Desktop)計算機都是微型機,包括個人計算機(PC)、筆記本電腦等。
桌面操作系統主要用于微型機上。微型計算機市場從硬件架構上來說主要分為兩大陣營,PC機與mac機;從軟件上來說主要分為兩大類,Windows操作系統和類UNIX操作系統:
1、微軟公司Windows操作系統:Windows XP,Windows ME,Windows 11,等等。
2、類UNIX操作系統:Mac OS X,以及Linux各種發行版(如RedHat、Debian、Ubuntu、openSUSE,Fedora等)。
Windows占有桌面操作系統的約90%市場份額。
二.服務器操作系統
服務器操作系統一般指的是安裝在大中型計算機和功能強大的微型機的操作系統,比如Web服務器、應用服務器和數據庫服務器等。服務器操作系統主要有下列三大類:
1、UNIX系列:FreeBSD,Oracle Solaris,IBM AIX,HP-UX,等等。
2、Linux系列:GNU/Linux,RedHat Linux,Debian,Ubuntu,等等。
Linux是自由和開放源代碼的電腦操作系統。Linux是1991年10月5日(這是第一次正式向外公布的時間)由芬蘭赫爾辛基大學研究生Linus Torvalds(林納斯·托瓦茲)開發的。他后來在美國定居,加入了美國國籍。
目前世界上存在著300多個Linux發行版(distribution)。它們全都以開源Linux為基礎,使用了Linux內核。
Linux占有服務器市場的約70%份額。
3、Windows Server系列:Windows NT,Windows Server 2021。
此外,還有加拿大Novell公司開發?.NETware。
三.移動通訊操作系統
移動通訊操作系統主要用于智能手機和平板電腦。
智能手機實質上是一種微型電腦,不是計算機,因為手機沒有外部設備。
各種智能手機都使用移動通訊操作系統。全世界的手機使用的操作系統主要是谷歌公司的Android(安卓)和蘋果公司的IOS。
華為公司從2004年開始,用15年時間,開發了具有自主知識產權的操作系統“鴻蒙(HarmonyOS)”。2019年8月9日,在東莞舉行華為開發者大會上,華為公司正式發布操作系統“鴻蒙”。鴻蒙系統適用于手機、平板電腦和智能設備。
四.嵌入式操作系統
嵌入式系統是以應用為中心,以計算機技術為基礎,能夠根據用戶需求(功能、可靠性、成本、體積、功耗、環境等)靈活裁剪軟件硬件模塊的專用電腦系統。
嵌入式系統由硬件和軟件組成。嵌入式系統的軟件包括操作系統、中間件和應用程序。嵌入式系統的硬件包括信號處理器、存儲器、通信模塊(輸入輸出接口)等。
嵌入式操作系統(Embedded Operating System,EOS)是指用于嵌入式系統的操作系統。該系統負責嵌入式系統的全部軟件、硬件資源的分配,任務調度,控制、協調系統的活動。
嵌入式系統廣泛地應用在生活、生產的各個方面,從便攜式設備到大型固定設施,如手機、平板電腦、數碼相機、家用電器、醫療設備、交通燈、航空電子設備和工廠控制設備,等等。復雜的嵌入式系統安裝有實時操作系統。
某些情況下,嵌入式系統的OS(操作系統)指的是一個內置了固定應用軟件的多功能程序。在許多最簡單的嵌入式系統中,所謂的OS就是指其上唯一的應用程序。
嵌入式操作系統大多數是實時操作系統(RTOS)。
國際上廣泛使用的嵌入式操作系統有µC/OS-III,VxWorks,嵌入式Linux,Windows Embedded,等等。
(五)計算機操作系統的功能
本節所說的計算機是大中小型和微型計算機,不包括手機、智能設備和嵌入式系統。
計算機操作系統的基本功能是負責管理與配置內存,決定系統資源供需的先后次序,控制輸入與輸出設備,操作網絡與管理文件系統。
計算機系統的資源可分為設備資源和信息資源兩大類。
設備資源:指的是組成計算機的硬件設備,如中央處理器,主存儲器,磁盤存儲器,磁帶存儲器,光盤,顯示器,鍵盤輸入設備和鼠標,打印機,等等。
信息資源:指的是存放于計算機內的各種數據,包括數學數據、文字文件、程序庫、知識庫,以及各種軟件。
有些操作系統很簡單,例如智能設備的操作系統、嵌入式系統的操作系統。有些操作系統很復雜,例如網絡操作系統、超級計算機的操作系統。
計算機操作系統主要包括以下五個方面的功能:
一.進程管理
進程管理的任務是進程調度。在單用戶單任務的情況下,處理器僅為一個用戶的一個任務所獨占,進程管理的工作十分簡單。但在多道程序或多用戶的情況下,組織多個作業或任務時,就要解決處理器的調度、分配和回收等問題。處理器可能是一個,也可能是多個。不同類型的操作系統將針對不同情況采取不同的進程調度策略
二.存儲管理
存儲管理包括存儲分配,存儲共享,存儲保護 ,以及存儲擴張。存儲管理的主要任務是:分配內存空間,保證各作業占用的存儲空間不發生矛盾,并使各作業在自己所屬存儲區中不互相干擾。
三.設備管理
負責管理各類外圍設備,包括分配、啟動和故障處理等。當用戶使用外部設備時,必須提出要求,待操作系統進行統一分配后方可使用。當用戶的程序運行到要使用某外設時,由操作系統負責驅動外設。操作系統還具有處理外設中斷請求的能力。
四.文件管理
文件管理是指操作系統對信息資源的管理,包括文件存儲空間的管理,目錄管理 ,文件操作管理,以及文件保護。在操作系統中,將負責存取的管理信息的部分稱為文件系統。文件是在邏輯上具有完整意義的一組相關信息的有序集合。每個文件都有一個文件名。文件管理支持文件的存儲、檢索和修改等操作,并且有文件的保護功能。
五.作業管理
每個用戶請求計算機系統完成的一個獨立的操作稱為一個作業。作業管理包括作業的輸入和輸出,作業的調度與控制(根據用戶的需要控制作業運行的步驟)。