作業系統概述

2021-09-06 01:44:55 字數 3870 閱讀 4862

作業系統的發展分類

作業系統的執行機制

中斷和異常

系統呼叫

計算機自上而下可分為四部分:硬體、作業系統、應用程式、使用者程式。

作業系統(operating system, os):

是指控制和管理整個計算機系統的硬體和軟體資源,並合理地組織排程計算機的工作和資源的分配,以提供給使用者和其他軟體方便的介面和環境的程式集合。計算機作業系統是隨著計算機研究和應用的發展逐步形成並發展起來的,它是計算機系統中最基本的系統軟體。

作業系統的基本特徵包括併發、共享、虛擬和非同步

互斥共享方式

系統中的某些資源,如印表機、磁帶機,雖然它們可以提供給多個程序使用,但為使所列印或記錄的結果不致造成混淆,應規定在一段時間內只允許乙個程序訪問該資源

同時訪問方式

系統中還有另一類資源,允許在一段時間內由多個程序「同時」對它們進行訪問。這裡所謂的「同時」往往是巨集觀上的,而在微觀上,這些程序可能是交替地對該資源進行訪問即 「分時共享」。典型的可供多個程序「同時」訪問的資源是磁碟裝置,一些用重入碼編寫的檔案也可以被「同時」共享,即若干個使用者同時訪問該檔案

併發和共享是作業系統兩個最基本的特徵,這兩者之間又是互為存在條件的:

作業系統應具有以下幾方面的功能:處理機管理、 儲存器管理、裝置管理和檔案管理。為了方便使用者使用作業系統,還必須向使用者提供介面。同時作業系統可用來擴充機器,以提供更方便的服務、更高的資源利用率。

處理機管理

在多道程式環境下,處理機的分配和執行都以程序(或執行緒)為基本單位,因而對處理機的管理可歸結為對程序的管理。

程序管理的主要功能有:程序控制、程序同步、程序通訊、死鎖處理、處理機排程等。

儲存器管理

主要包括記憶體分配、位址對映、記憶體保護與共享和記憶體擴充等功能。

檔案管理

檔案管理包括檔案儲存空間的管理、目錄管理及檔案讀寫管理和保護等。

裝置管理

裝置管理的主要任務是完成使用者的i/o請求,方便使用者使用各種裝置,並提高裝置的利用率,主要包括緩衝管理、裝置分配、裝置處理和虛擬裝置等功能。

作業系統提供的介面主要分為兩類:

一類是命令介面,使用者利用這些操作命令來組織和控制作業的執行;另一類是程式介面,程式設計人員可以使用它們來請求作業系統服務

命令介面

使用命令介面進行作業控制的主要方式有兩種,即聯機控制方式和離線控制方式。

程式介面

程式介面由一組系統呼叫命會(簡稱系統呼叫,也稱廣義指令)組成

由作業系統提供的資源管理功能和方便使用者的各種服務功能,將裸機改造成功能更強、 使用更方便的機器,通常把覆蓋了軟體的機器稱為擴充機器,又稱之為虛擬機器。

手工階段

批處理階段(作業系統開始出現)

為了解決人機矛盾及cpu和i/o裝置之間速度不匹配的矛盾,出現了批處理系統。其又分為一下兩類

分時系統

在作業系統中釆用分時技術就形成了分時系統。所謂分時技術就是把處理器的執行時間分成很短的時間片,按時間片輪流把處理器分配給各聯機作業使用。若某個作業在分配給它的時間片內不能完成其計算,則該作業暫時停止執行,把處理器讓給其他作業使用,等待下一輪再繼續執行。

分時系統是實現人機互動的系統

特徵

雖然分時作業系統比較好地解決了人機互動問題,但是在一些應用場合,需要系統能對外部的資訊在規定的時間(比時間片的時間還短)內作出處理(比如飛機訂票系統或飛彈制導系統)。因此,實時系統應運而生。

實時系統

為了能在某個時間限制內完成某些緊急任務而不需時間片排隊,誕生了實時作業系統。

實時橾作系統的主要特點是及時性可靠性

網路作業系統和分布式計算機系統

該系統的主要特點是:分布性和並行性。分布式作業系統與網路作業系統本質上的不同之處在於分布式作業系統中,若干臺計算機相互協同完成同一任務。

個人計算機作業系統

個人計算機作業系統是目前使用最廣泛的作業系統,廣泛應用於文書處理、電子**、 遊戲等。常見的有windows、linux和macintosh等

cpu執行兩種不同性質的程式:一種是作業系統核心程式;另一種是使用者自編程式或系統外層的應用程式。作業系統在具體實現上劃分了使用者態(目態)和核心態(管態),以嚴格區分兩類程式。

作業系統的各項功能分別被設定在不同的層次上。一些與硬體關聯較緊密的模組,諸如時鐘管理、中斷處理、裝置驅動等處於最底層。其次是執行頻率較髙的程式,諸如程序管理、儲存器管理和裝置管理等。這兩部分內容構成了作業系統的核心。這部分內容的指令操作工作在核心態。

核心是計算機上配置的底層軟體,是計算機功能的延伸,作業系統核心包括四個方面的內容。

具有這些特點的程式稱為原語(atomic operation)。定義原語的直接方法是關閉中斷,讓它的所有動作不可分割地進行完再開啟中斷。

作業系統中引入核心態和使用者態這兩種工作狀態後,就需要考慮這兩種狀態之間如何切換。作業系統核心工作在核心態,而使用者程式工作在使用者態。但系統不允許使用者程式實現核心態的功能,而它們又必須使用這些功能。

當中斷或異常發生時,執行使用者態的cpu會立即進入核心態。

所謂系統呼叫就是使用者在程式中呼叫作業系統所提供的一些子功能。

在使用者程式中,凡是與資源有關的操作(如儲存分配、進行i/0傳輸以及管理檔案等),都必須通過系統呼叫方式向作業系統提出服務請求,並由作業系統代為完成。

系統呼叫執行在系統的核心態,通過系統呼叫的方式來使用系統功能,可以保證系統的穩定性和安全性,防止使用者隨意更改或訪問系統的資料或命令。系統呼叫命令是由作業系統提供的乙個或多個子程式模組實現的。

作業系統的執行環境可以理解為:使用者通過作業系統執行上層程式(如系統提供的命令解釋程式或使用者自編程式),而這個上層程式的執行依賴於作業系統的底層管理程式提供服務支援,當需要管理程式服務時,系統則通過硬體中斷機制進入核心態,執行管理程式;也可能是程式執行出現異常情況,被動地需要管理程式的服務,這時就通過異常處理來進入核心態。當管理程式執行結束時,使用者程式需要繼續執行,則通過相應的儲存的程式現場退出中斷處理程式或異常處理程式,返回斷點處繼續執行

由使用者態轉向核心態的例子:

並行性與併發性的區別和聯絡

在多道程式環境下,併發性是指在一段時間內,巨集觀上有多個程式在同時執行,但在單處理器系統中每一時刻卻僅能有一道程式執行,故微觀上這些程式只能是分時地交替執行。倘若在計算機系統中有多個處理器,則這些可以併發執行的程式便被分配到多個處理器上,實現並行執行,即利用每個處理器來處理乙個可併發執行的程式。

特權指令與非特權指令

所謂特權指令是指有特殊許可權的指令,特權指令必須在核心態執行,即cpu在核心態下可以執行指令系統的全集

使用者態下使用特權指令時,將產生中斷以阻止使用者使用特權指令。所以把使用者程式放在使用者態下執行,而作業系統中必須使用特權指令的那部分程式在核心態下執行,保證了計算機系統的安全可靠。從使用者態轉換為核心態的唯一途徑是中斷或異常

訪管指令與訪管中斷

訪管指令是一條可以在使用者態下執行的指令

使用者程式中,因要求作業系統提供服務而有意識地使用訪管指令,從而產生乙個中斷事件(自願中斷),將作業系統轉換為核心態,稱為訪管中斷。訪管中斷由訪管指令產生,程式設計師使用訪管指令向作業系統請求服務。

基本功能是讓程式擁有「自願進管」的手段,從而引起訪管中斷。

使用者態的使用者程式使用訪管指令時,系統根據訪管指令的運算元執行訪管中斷處理程式

作業系統概述

作業系統幾大管理 1 cpu管理 cpu是作業系統中最重要的部分之一。cpu管理又稱程序管理,即是如何將cpu真正地分配給每個任務。我們無法直接操控硬體,只能通過程式來控制硬體。程序排程有以下幾種主要的排程方法 a fifo b 時間片輪轉排程 c 短程序優先 類似1970年一篇 中得比率單調演算法...

作業系統概述

一.現代計算機系統由硬體和軟體兩部分組成.1.硬體包括處理器,暫存器,記憶體,外存及各種i o裝置.2.軟體包括系統軟體,支撐軟體和應用軟體.2.1系統軟體 作業系統 最接近硬體的一層,把硬體封裝起來,負責管理和控制計算機硬體並對其做首次擴充和改造 2.2支撐軟體層 建立在作業系統的封裝上,利用作業...

作業系統概述

併發 共享 同步 非同步 虛擬 物理分隔到邏輯分隔,實現多使用者訪問 非同步 走走停停的程序 計算機系統中,通常cpu執行兩種不同性質的程式 一種是作業系統核心程式 另一種是使用者自編程式或系統外層的應用程式。作業系統在具體實現上劃分了使用者態 目態 和核心態 管態 以嚴格區分兩類程式。核心態 作業...