天天看點

作業系統

作業系統是一種管理計算機系統資源、控制程式執行、改善人機界面和為其他軟體提供支援的系統軟體。

1、單使用者微機作業系統:是指早期的微型計算機上運作的作業系統每次隻允許一個使用者使用計算機。

2、網絡作業系統:為計算機網絡配置的作業系統稱為網絡作業系統。網絡作業系統把計算機網絡中各台計算機系統有機地聯合起來,為使用者提供一種統一、經濟而有效地使用各台計算機系統的方法,可使各台計算機系統互相間傳送資料,實作各台計算機系統之間的通信以及網絡中各種資源的共享。

3、分布式作業系統:為分布式計算機系統配置的作業系統稱為分布式作業系統。分布式作業系統能使系統中若幹台計算機互相協作完成一個共同的任務,或者說把一個計算問題可以分成若幹個子計算,每個子計算可以在計算機系統中的各計算機上并行執行。

4、多機作業系統:為多處理器系統配置的作業系統稱為多機作業系統。

5、嵌入式作業系統:是指運作在嵌入式系統中對各種部件、裝置等資源進行統一協調、處理和控制的系統軟體。(主要特點是微型化和實時性)

批處理作業系統、分時作業系統、實時作業系統、網絡作業系統、分布式作業系統、多機作業系統和嵌入式作業系統。其中前三種是基本的作業系統。

1、定義:使用者為作業準備好程式和資料後,再寫一份控制作業執行的說明書。然後把作業說明書連同相應的程式和資料一起交給操作員。操作員将收到的一批作業的有關資訊輸入到計算機系統中等待處理,由作業系統選擇作業,并按其操作說明書的要求自動控制作業的執行。采用這種批量化處理作業的作業系統稱為批處理作業系統。

2、分類:

(1)批處理單道系統:一次隻選擇一個作業裝入計算機系統的主存儲器運作。

(2)批處理多道系統:允許多個作業同時裝入主存儲器,使中央處理器輪流地執行各個作業,各個作業可以同時使用各自所需要的外圍裝置。

3、批處理多道系統優點:

(1)多道作業并行工作減少了處理器的空閑時間,即提高了處理器的使用率。

(2)作業排程可以按一定的組合選擇裝入主存儲器的作業,隻要搭配合理。

(3)作業執行過程中,不再通路低速的裝置,而是直接從高速的磁盤上存取資訊,進而縮短了作業執行時間,使機關時間内的處理能力得到提高。

(4)作業成批輸入、自動選擇和控制作業執行,減少了人工操作時間和作業交接時間,有利于提高系統的吞吐率。

1、定義:能使使用者通過與計算機相連的終端來使用計算機系統,允許多個使用者同時與計算機系統進行一系列的互動,并使得每個使用者感到好像自己獨占一台支援自己請求服務的計算機系統。具有這種功能的作業系統稱為分時作業系統,簡稱分時系統。

2、分時技術:即把CPU時間劃分成許多時間片,每個終端使用者每次可以使用一個由時間片規定的CPU時間。這樣,多個終端使用者就輪流地使用CPU時間。如果某個使用者在規定的一個時間片内還沒有完成它的全部工作,這時也要把CPU讓給其他使用者,等待下一輪再使用一個時間片的時間,循環輪轉,直至結束。

3、分時系統主要特點:

(1)同時性。允許多個終端使用者同時使用一個計算機系統。

(2)獨立性。使用者在各自的終端上請求系統服務,彼此獨立,互不幹擾。

(3)及時性。對使用者的請求能在較短時間内給出應答。

(4)互動性。采用人機對話的方式工作。

1、定義:能使計算機系統接收到外部信号後及時進行處理,并且在嚴格的規定時間内處理結束,再給出回報信号的作業系統稱為實時作業系統,簡稱為實時系統。

2、實時作業系統的應用十分廣泛,如控制科學實驗、控制生産流水,監督病人的臨床功能、監督和控制飛機的飛行狀态,進行工業過程控制等。

3、設計實時系統注意點:

(1)要及時響應、快速處理。

(2)實時系統要求高可靠性和安全性,不強求系統資源的使用率。

作業系統負責管理計算機系統的所有資源,并排程這些資源的使用。具體來說,其主要功能有:處理器管理、存儲管理、裝置管理、檔案管理。

處理器管理:對CPU進行管理。

存儲管理:對主存儲器進行管理。

檔案管理:通過對磁盤進行管理,實作對軟體資源進行管理。

裝置管理:對各類輸入/輸出裝置進行管理。

作業系統為使用者提供的使用接口:一組操作控制指令或作業控制語言供使用者提出對作業的控制要求;一組系統功能調用為使用者程式提供服務功能。即,

       程式員接口:通過“系統調用”使用作業系統功能。(開發者)

       操作員接口:通過操作控制指令提出控制要求。(應用者)

      計算機系統定義:是按使用者的要求接收和存儲資訊、自動進行資料處理并輸出結果資訊的系統。

      計算機系統構成:硬體系統和軟體系統。

      硬體系統組成:中央處理器(CPU)、主存儲器、輔助存儲器、各種輸入/輸出裝置。

由于作業系統十分龐大,是以清晰的結構有利于開發和調試。層次結構是一種重要的設計技術,它不僅使正确性容易得到保證,而且也能提高可維護性和可移植性。

作業系統結構追求四大目标,正确性、高效性、可維護性和可移植性。

1.計算機系統的層次結構

目前的計算機系統,一般都具有一種層次結構。從内到外依次為:硬體系統、軟體系統、支撐軟體和應用軟體,最外層是使用計算機的人。

2.作業系統的運作方式

計算機開啟時,自動執行引導程式。引導程式首先進行系統初始化的工作,然後把作業系統中的核心裝入主存儲器。此後作業系統便等待使用者請求(事件)的發生,當有某個事件出現,硬體便能識别并能發生一個中斷,進而通過作業系統,由它的服務程式去處理,處理結束後,又等待下一個事件發生。

1.CPU與外設的并行工作

在計算機系統中,輸入/輸出控制系統負責完成外圍裝置與主存儲器之間的資訊傳送。

2.存儲體系

寄存器是處理器的組成部分,用來存放處理器的工作資訊。一般來說,寄存器可分成如下幾類:

(1)通用寄存器:存放參加運算的操作數、指令的運算結果等。

(2)指令寄存器:存放目前從主存儲器讀出的指令。

(3)控制寄存器:存放控制資訊以保證程式的正确執性和系統的安全。

A.程式狀态字寄存器:存放目前程式執行時的狀态。

B.中斷字寄存器:記錄出現的事件。

C.基址寄存器:設定程式執行時可通路的主存空間的開始位址。

D.限長寄存器:設定程式執行時可通路的主存空間的長度。

主存儲器是CPU能直接通路的唯一的存儲空間,任何程式和資料都必須被裝入主存儲器之後,CPU才能對它進行操作。主存儲器以“位元組”為機關進行編址,若幹位元組組成一個“字”。中央處理器可以按位址讀出主存儲器中的一個位元組或一個字的内容。

為了減少對主存儲器的通路時間,加快程式的執行速度,現代計算機系統往往配置一個高速緩沖存儲器(cache)。輔助存儲器解決了主存儲器的容量不足,以及主存儲器無法永久儲存資訊的問題。輔助存儲器的優點是容量大且能永久儲存資訊,缺點是無法被中央處理器直接通路,必須通過主存儲器才能通路。

3.保護措施

為了保證計算機系統能正确工作,硬體采用了若幹保護措施,作業系統進行配合來提高系統的安全性。

中央處理器有兩種工作模式:管态(可執行包括特權指令在内的一切機器指令。一般是作業系統程式占用中央處理器時,CPU處于管态)和目态(不允許執行特權指令。一般是使用者程式占用中央處理器時,CPU處于目态)。限定使用者程式在目态執行,不能直接使用特權指令(啟動I/O、設定時鐘、設定控制寄存器等)。作業系統利用硬體設定的基址寄存器和限長寄存器來限定各程式可通路的主存空間,以免互相幹擾而造成錯誤。

硬體的部分保護措施有以下幾種:

(1)特權指令。

(2)管态和目态。

(3)存儲保護。(基址寄存器的值<=通路位址<=基址寄存器的值+限長寄存器的值。)

UNIX作業系統一個互動式的分時作業系統。UNIX系統的源代碼公開。從結構上看,UNIX可以分成核心層和外殼層兩部分。

1、UNIX層次結構:核心層和外殼層。

(1)核心層:是UNIX作業系統的核心。它具有存儲管理、檔案管理、裝置管理、程序管理以及為外殼層提供服務的系統調用等功能。

(2)外殼層:為使用者提供各種操作指令和程式設計環境。

2、外殼層組成:由shell解釋程式、支援程式設計的各種語言、編譯程式、解釋程式、使用程式和系統庫等組成。其中其它子產品歸shell解釋程式調用,shell解釋程式用來接收使用者輸入的指令并進行執行。

3、核心層組成:核心程式用C語言和彙編語言編寫。按編譯方式可分為:彙編語言檔案、C語言檔案和C語言全局變量檔案。

4、程式運作環境:使用者态和核心态。外殼層的程式在使用者态運作,核心層的程式在核心态運作。使用者态運作的程式稱為使用者程式,核心态運作的程式稱為系統程式。(注:外殼層的使用者程式在執行時可通過系統調用來請求核心層的支援)

1.系統調用定義:即系統功能調用程式,是指作業系統編制的許多不同功能的供程式執行中調用的子程式。

2.執行模式:系統調用在管态下運作,使用者程式在目态下運作,使用者程式可以通過“訪管指令”實作使用者程式與系統調用程式之間的轉換。(注:訪管指令本身是一條在目态下執行的指令)

3.系統調用分類:檔案操作類、資源申請類、控制類、資訊維護類。

使用者為作業準備好程式和資料後,再寫一份控制作業執行的說明書。然後把作業說明書連同相應的程式和資料一起交給操作員。操作員将收到的一批作業的有關資訊輸入到計算機系統中等待處理,由作業系統選擇作業,并按其操作說明書的要求自動控制作業的執行。采用這種批量化處理作業的作業系統稱為批處理作業系統。