當前位置:文思屋>社會工作>IT認證>

計算機作業系統的基本概念

文思屋 人氣:1.56W

作業系統是管理和控制計算機硬體與軟體資源的計算機程式,是直接執行在“裸機”上的最基本的系統軟體,任何其他軟體都必須在作業系統的支援下才能執行。下面是小編整理的計算機作業系統的基本概念,希望大家認真閱讀!

計算機作業系統的基本概念

1、作業系統做什麼

注:計算機系統結構作為從程式設計者角度所看到的計算機屬性,在計算機系統的層次結構中處於機器語言級;而計算機組織作為計算機系統結構的邏輯實現和物理實現,其任務就是圍繞提高效能價格比的目標,實現計算機在機器指令級的功能和特性。研究和建立各功能部件間的相互連線和相互作用,完成各個功能部件內部的邏輯設計等是邏輯實現的內容;把邏輯設計深化到元件、器件級,則是物理實現的內容。

計算機系統可以大致分為四個組成部分:計算機硬體、作業系統、系統程式與應用程式和使用者。

硬體為系統提供基本的計算資源,應用程式規定了使用者按何種方式使用這些資源,作業系統控制和協調各使用者的應用程式對硬體的使用。

從兩個視角探索作業系統:使用者視角和系統視角。

A、使用者視角:

對於PC使用者,系統設計是為了讓單個使用者單獨使用其資源,其目的是優化使用者所進行的工作。對於這種情況,作業系統的設計目的是為了使用者使用方便,效能是次要的,而且不在乎資源使用率。

對於大型機使用者,作業系統設計為資源使用做了優化:確保所有的CPU時間、記憶體和I/O都得到充分使用,並且確保沒有使用者使用超出其許可權以外的資源。

對於工作站使用者,作業系統的設計目的是個人使用效能和資源使用率的折中。

對於手持計算機使用者,方便個人使用,最大化利用電池能源是作業系統設計的要點。

B、系統視角:

從系統視角,作業系統相當於資源分配器。作業系統管理CPU時間、記憶體空間等系統資源,在面對許多甚至衝突的資源請求,作業系統必須決定如何為每個程式和使用者分配資源,以便計算機系統能有效而公平的執行。

2、計算機系統組織

計算機通過運算器、儲存器、控制器、輸入輸出子系統等主要功能部件的相互連線和相互作用,藉以實現機器指令級的各種功能和特性。從最基本的功能和作用原理來說,計算機是在控制器的全面控制下,接收經數字化編碼的輸入資訊(程式和資料),把它存放在儲存器中,根據程式的要求對資料進行快速運算,產生結果資料輸出。因此,可以把運算器、儲存器、控制器、輸入輸出子系統看成是一臺計算機的邏輯組成中最基本的功能部件。

儲存裝置層次(按匯流排速率由高到低):

暫存器——快取記憶體(Cache)——主存——磁碟——光碟——磁帶

3、計算機系統體系結構

通過採用的通用處理器的數量來分類。

A、單處理器系統

在單處理器系統中,有一個主CPU能夠執行一個通用指令集,包括來自使用者程序的指令。

B、多處理器系統

多處理器系統的優點:

增加吞吐量;規模經濟;增加可靠性。

分類:

非對稱多處理器(asymmetric multiprocessing)系統——主從關係;

對稱多處理器(symmetric multiprocessing)系統——對等關係。

C、集群系統

叢集計算機共享儲存並通過區域網連線或更快的內部連線。

分類:

非對稱叢集:一部分機器處於熱備份模式,其餘的機器執行應用程式。

對稱叢集:兩臺或多個主機都執行程式,互相監視。

4、作業系統結構

作業系統理論研究者有時把作業系統分成四大部分:

驅動程式:最底層的、直接控制和監視各類硬體的部分,它們的職責是隱藏硬體的具體細節,並向其他部分提供一個抽象的、通用的介面。

核心:作業系統核心部分,通常執行在最高特權級,負責提供基礎性、結構性的功能。

介面庫:是一系列特殊的程式庫,它們職責在於把系統所提供的基本服務包裝成應用程式所能夠使用的程式設計介面(API),是最靠近應用程式的部分。例如,GNU C執行期庫就屬於此類,它把各種作業系統的內部程式設計介面包裝成ANSI C和POSIX程式設計介面的形式。

外圍:是指作業系統中除以上三類以外的所有其他部分,通常是用於提供特定高階服務的部件。例如,在微核心結構中,大部分系統服務,以及UNIX/Linux中各種守護程序都通常被劃歸此列。

在這裡,需要介紹一些關於核心的知識。

核心是作業系統最核心最基礎的構件,核心結構往往對作業系統的外部特性以及應用領域有著一定程度的影響。

核心的結構可以分為單核心、微核心、混合核心、外核心等。

單核心(Monolithic kernel),又稱為巨集核心。此架構的特性是整個核心程式都是以核心空間(Kernel Space)的身份及監管者模式(Supervisor Mode)來執行(巨集核心被實現為執行在單一地址空間的'單一的程序,核心提供的所有服務,都以特權模式,在這個大型的核心地址空間中運作,這個地址空間被稱為核心空間(kernel space))。相對於其他型別的作業系統架構,如微核心架構或混核心架構等,這些核心會定義出一個高階的虛擬介面,由該介面來涵蓋描述整個電腦硬體,這些描述會集合成一組硬體描述用詞,有時還會附加一些系統呼叫,如此可以用一個或多個模組來實現各種作業系統服務,如程序管理、共時(Concurrency)控制、儲存器管理等。

微核心(Microkernel),又稱為微核心。微核心結構是1980年代產生出來的較新的核心結構,強調結構性部件與功能性部件的分離。微核心的設計理念,是將系統服務的實現,與系統的基本操作規則區分開來。它實現的方式,是將核心功能模組化,劃分成幾個獨立的程序,各自執行,這些程序被稱為伺服器(service)。所有的伺服器程序,都執行在不同的地址空間。只有需要絕對特權的程序,才能在具特權的執行模式下執行,其餘的程序則在使用者 空間執行。

混合核心(Hybrid kernel)像微核心結構,只不過它的元件更多的在核心態中執行,以獲得更快的執行速度。混合核心,一種作業系統核心架構,結合整塊性核心與單核心兩種設計方法。它的架構實作方式接近於整塊性核心。最有名的混合核心為Windows NT核心與XNU。

外核心(Exokernel)的設計理念是儘可能的減少軟體的抽象化,這使得開發者可以專注於硬體的抽象化。外核心的設計極為簡化,它的目標是在於同時簡化傳統微核心的訊息傳遞機制,以及整塊性核心的軟體抽象層。外核的目標就是讓應用程式直接請求一塊特定的物理空間,一塊特定的磁碟塊等等。系統本身只保證被請求的資源當前是空閒的,應用程式就允許直接存取它。

在眾多常用作業系統之中,除了QNX和基於Mach的UNIX等個別系統外,幾乎全部採用單核心結構,例如大部分的Unix、Linux,以及Windows(微軟聲稱Windows NT是基於改良的微核心架構的,儘管理論界對此存有異議。

5、作業系統操作

*雙重模式操作*:

為了確保作業系統地正常執行,必須區分作業系統程式碼和使用者定義程式碼的執行。許多作業系統所採取的方法是提供硬體支援以允許區分各種執行模式。

至少需要兩種獨立的操作模式:使用者模式(user mode)和監督程式模式(monitor mode)(也稱為管理模式(supervisor mode)、系統模式(system mode)或特權模式(privileged mode))。在計算機硬體中增加一個稱為模式位(mode bit)的位以表示當前模式:監督程式模式(0)和使用者模式(1)。有了模式位,就可以區分作業系統所執行的任務和使用者所執行的任務。

系統引導時,硬體開始處於核心模式。接著,裝入作業系統,開始在使用者模式下執行使用者程序。一旦出現陷阱或中斷,硬體會從使用者模式切換到核心模式。因此,只要作業系統獲得了對計算機的控制,它就處於核心模式。系統在將控制交還給使用者程式時會切換到使用者模式。

雙重模式操作提高了保護作業系統和使用者程式不受錯誤使用者程式影響的手段。其實現為:將能引起損害的機器指令作為特權指令。如果在使用者模式下試圖執行特權指令,那麼硬體並不執行該指令,而是認為該指令非法,並將其以陷阱的形式通知作業系統。

系統呼叫為使用者程式請求作業系統代表使用者程式完成預留給作業系統的任務提供了方法。系統呼叫通常採用陷阱到中斷向量中的一個指定位置的方式。當系統呼叫被執行時,硬體會將它作為軟體中斷。控制權會通過中斷向量轉交到作業系統的中斷處理程式,模式位設定成核心模式。系統呼叫服務程式是作業系統的一部分。核心檢查中斷指令以確定發生了什麼系統呼叫;引數表示使用者程式請求什麼型別的服務。請求所需要的其他資訊可通過暫存器、堆疊或記憶體來傳遞。核心檢驗引數是否正確和合法,再執行請求,然後將控制返回到系統呼叫之後的指令。

6、程序管理

程序是系統工作的單元。系統由多個程序組成,其中一些是作業系統程序(執行系統程式碼),其餘的是使用者程序(執行使用者程式碼)。所有這些程序可以潛在地併發執行,如通過在單CPU上採用CPU複用來實現。

作業系統負責下述與程序管理相關的活動:

*建立和刪除使用者程序和系統程序;

*掛起和重啟程序;

*提供程序同步機制;

*提供程序通訊機制;

*提供死鎖處理機制。

7、記憶體管理

記憶體是現代計算機系統操作的中心。記憶體通常是CPU所能直接定址和訪問的唯一大容量儲存器。

作業系統負責下列有關記憶體管理的活動:

*記錄記憶體的哪部分正在被使用及被誰使用;

*當有記憶體空間是,決定哪些程序可以裝入記憶體;

*根據需要分配和釋放記憶體空間。

8、儲存管理

作業系統對儲存裝置上的物理屬性進行了抽象,定義了邏輯儲存單元,即檔案。作業系統將檔案對映到物理介質上,並通過這些物理介質來訪問這些檔案。

A、檔案系統管理

檔案管理是作業系統最為常見的組成部分。檔案是由其建立者定義的一組相關資訊的集合。通常,檔案表示程式(源程式和目標程式)和資料。

作業系統負責下列有關檔案管理的活動:

*建立和刪除檔案;

*建立和刪除目錄來組織檔案;

*提供操作檔案和目錄的原語;

*將檔案對映到二級儲存上;

*在穩定介質上備份檔案。

B、大容量儲存器管理

絕大多數現代計算機系統都採用硬碟作為主要非易失儲存介質來儲存程式和資料。許多程式都儲存在硬碟上,要執行時才調入記憶體,在執行時將硬碟作為處理的來源地和目的地。因此,硬碟的適當管理對計算機系統尤為重要。

作業系統負責下列有關硬碟管理的活動:

*空閒空間管理;

*儲存空間分配;

*硬碟排程。

C、快取記憶體

高速緩衝儲存器是存在於主存與CPU之間的一級儲存器,由靜態儲存晶片(SRAM)組成,容量比較小但速度比主存高得多,接近於CPU的速度。硬體快取記憶體基於著名的區域性性原理,該原理既適用於程式結構也適用於資料結構。在有高速緩衝儲存器的計算機系統中,中央處理器存取主儲存器的地址劃分為行號、列號和組內地址三個欄位。於是,主儲存器就在邏輯上劃分為若干行;每行劃分 為若干的儲存單元組;每組包含幾個或幾十個字。高速儲存器也相應地劃分為行和列的儲存單元組。二者的列數相同,組的大小也相同,但高速儲存器的行數卻比主 儲存器的行數少得多。

快取記憶體主要由三大部分組成:

*Cache儲存體:存放由主存調入的指令與資料塊。

*地址轉換部件:建立目錄表以實現主存地址到快取地址的轉換。

*替換部件:在快取已滿時按一定策略進行資料塊替換,並修改地址轉換部件。

作業系統執行快取記憶體管理,對快取記憶體大小和置換策略的仔細選擇可以極大提高效能。

D、I/O子系統

I/O子系統包括如下幾個部分:

*一個包括緩衝、快取記憶體和假離線的記憶體管理部分;

*通用裝置驅動器介面;

*特定硬體裝置的驅動程式。

9、保護和安全

保護是一種控制程序或使用者對計算機資源的訪問的機制。這個機制必須為強加控制提供一種規格說明方法和一種強制執行方法。

安全的主要工作是防止系統不受外部或內部攻擊。這些攻擊範圍很廣,包括病毒和蠕蟲、拒絕服務攻擊、身份偷竊、服務偷竊。

10、分散式系統

分散式系統是將一組物理上分開來的、各種可能的異構的計算機系統通過網路連線在一起,為使用者提供系統所維護的各種資源的計算機的集合。

分散式系統(distributed system)是建立在網路之上的軟體系統。正是因為軟體的特性,所以分散式系統具有高度的內聚性和透明性。因此,網路和分散式系統之間的區別更多的在於高層軟體(特別是作業系統),而不是硬體。內聚性是指每一個數據庫分佈節點高度自治,有本地的資料庫管理系統。透明性是指每一個數據庫分佈節點對使用者的應用來說都是透明的,看不出是本地還是遠端。

網路作業系統(Network Operating System)提供跨網路的檔案分享、包括允許不同計算機上的程序進行訊息交換的通訊方法等功能。

11、專用系統

*實時嵌入式系統

*多媒體系統

*手持系統

12、計算環境

*傳統計算

*客戶機-伺服器計算

*對等計算

*基於Web的計算

拓展:計算機三級考試網路作業系統基本概念

1.單機作業系統

單機作業系統包括幾個方面的管理功能:程序與處理機管理、作業管理、儲存管理、裝置管理、檔案管理等。

(1)作業系統的管理功能

①程序管理:所謂程序(Process)就是一個將執行的程式,它附有該程序的地址空間、相應的暫存器組以及執行程式所需要的其他資訊。作業系統必須提供一種啟動程序的機制。在DOS中,該機制就是EXEC函式。在Windows中啟動程序的函式是CreateProcess。

②記憶體管理:作業系統的記憶體管理功能是管理記憶體資源,主要實現記憶體的分配與回收、儲存保護以及記憶體的擴充等。

③檔案系統:檔案系統負責管理在硬碟和其他大容量儲存裝置中儲存的檔案,通過檔案管理向用戶提供建立檔案、刪除檔案、讀寫檔案、開啟和關閉檔案等功能。

DOS通過檔案表FAT尋找磁碟檔案; Windows通過虛擬檔案表VFAT來尋找磁碟檔案; OS/2通過高效能檔案系統HPFS來尋找磁碟檔案。一般來說,HPFS的效能要比FAT和VFAT都好。

④裝置I/O作業系統的裝置管理負責分配和回收外部裝置,以及控制外圍裝置按使用者程式的要求進行操作。DOS使用驅動程式來管理裝置。

(2)作業系統的結構

作業系統通常有4類元件。

①驅動程式;

②核心;

③介面庫;

④外圍元件

2.網路作業系統

網路作業系統(NOS)是指能使網路上各個計算機方便而有效地共享網路資源,為使用者提供所需的各種服務的作業系統軟體。

網路作業系統的基本任務是:遮蔽本地資源與網路資源的差異性,為使用者提供各種基本網路服務功能,實現網路系統資源的共享管理,並提供網路系統的安全保障。

什麼是Web OS?Web OS是一個執行在網頁瀏覽器中的虛擬作業系統,更精確地說,Web OS是一個執行在網頁瀏覽器中的應用程式集合。因此,有人把NOS稱為伺服器作業系統,把Web OS稱為客戶端作業系統。

3.網路作業系統的分類

一般來說,網路作業系統可以分為兩類:專用型NOS與通用型NOS。

4.網路作業系統的基本功能

網路作業系統的基本功能有:檔案服務、列印服務、資料庫服務、通訊服務、資訊服務、分散式服務、網路管理服務、Internet/Intranet服務。