標籤:非同步 目錄 電腦系統 流水線 硬體 間接 儲存空間 記憶體 指定
1、作業系統的特徵
作業系統是一種系統軟體,但與其他的系統軟體和應用軟體有很大的不同,它有自己的特殊性即基本特徵。有並發、共用、虛擬、非同步
1)並發 Concurrence:並發是指兩個或多個事件在同一時間間隔內發生,作業系統的並發性是指電腦系統同時存在多個運行者的程式,因此它具有外理和調度多個程式的同時執行的能力,在作業系統中引入進程的目的就是使程式能並發執行。
注意:同一時間間隔(並發)和同一時刻(並行)的區別。在多道程式環境下,一段時間內,宏觀上有多道程式在同時執行,而在每一時刻,單處理機環境下實際僅能有一道程式執行,幫微觀上這些程式還是在分時的交替執行。作業系統的並發是通過分時得以實現的。
並行就是指系統具有可以同時進行運算或操作的特性,在同一時刻完成兩種或兩種以上的工作,並行性需要有相關的硬體的支援,如多流水線和多處理機的硬體環境。
2)共用sharing: 資源共用即共用,是指系統中的資源可供記憶體中多個並發執行的進程共同使用。共用可分為以下兩種方式:
(1)互斥共用方式
系統中的某些資源,如印表機、磁帶機,雖然它們可以提供給多個進程使用,但為使用列印或記錄的結果不造成混淆,應規定在一段時間內只台允許一個進程可以訪問該資源。
我們把一段時間內只允許一個進程訪問的資源稱為臨界資源或獨佔資源。電腦系統中的大多數物理裝置,以及某些軟體中所用的棧、變數和表格。都屬性臨界資源,它們要求被互斥的共用
(2)同時訪問共用
系統中還有另一類資源,允許在一段時間內由多個進程進對它進行訪問。這裡所謂的同時往往是宏觀上的,而在微觀上,這些進程可能是交替地對該資源進行訪問,即分時共用,典型的就是磁碟裝置。一些重用的編寫檔案也可以被同時共用
並發和共用是作業系統 的兩個最基本的特徵,這兩者之間又是互為條件的資源共用是以程式並發為條件的。若系統不允許程式並發執行,則自然不存在資源共用的問題,
若系統不能對資源共用實施有效管理,也必將影響到程式的並發執行。甚至根本無法並發執行。
3)虛擬virtual是指把一個物理裝置的實體變成若干個邏輯上對應物。物理實體是實的,即是實際存在的,而後者是虛的,使用者感覺上存在的如虛擬處理器,虛擬記憶體,虛擬外部裝置
在虛擬處理器技術中是通過多道程式設計技術,讓多道 程式並發執行的方法,來分時使用一個處理器的,此時雖然 只有一個處理器,但它能同時為多個使用者服務,使每一個終端使用者都感覺自己有一個CPu專門為他服務,利用多道 程式把一個cpu虛擬多個
虛擬技術:時分複用技術,空分複用技術
4)非同步Asynchronism
在多道 程式環境下,允許多個程式並發的執行,但由於資源有限,進程的執行不是一貫到底的,而是走走停停,以不可預知的速度 在前進,這就是進程的非同步性
非同步使用作業系統 運行在一種隨機的環境下,可能導致的進程產生與時間有關的錯誤,(就像全域變數訪問順序會導致程式出錯一樣),但是只要運行環境機同,作業系統必須保證多次運行進程,都 得到機同的結果。
二/作業系統的目標和功能
功能:處理機管理、儲存空間管理,裝置管理和檔案管理,為了方便使用者使用作業系統還必須向使用者提供介面,同時可以用來擴充機器,以提供更方便的服務和更高的效率和利用率
1)作業系統 是電腦系統資源 的管理者
(1)處理機管理,在多道 程式下處理機的分配和運行都以進程為基本單位,因而對處理機的管理可以歸結為對進程的管理,並發時在電腦內同時運行多個進程,所以進程的何時建立,何時撤消,如何管理,如何避免衝突,合理共用就是進程管理的主要任務
進程管理的主要進程式控制制,進程同步,進程通訊,死結處理,處理機調度
(2)儲存空間管理
儲存空間管理是為了給多道程式運行提供一個良好的環境,方便使用者使用以及提高記憶體的利用率,主要包括布存的分配,地址映射,記憶體保護與共用及記憶體的擴充
(3)檔案管理
電腦中的資訊都是以檔案的方式存在的,作業系統中負責檔案管理的部分稱為檔案系統,檔案儲存體空間的管理,目錄的管理以及檔案讀寫管理和保護
(4)裝置管理
就要任務是完成使用者的I/o操作,方便使用者使用各種裝置並提高裝置的利用率,這要包括緩衝管理,裝置分配,裝置處理和虛擬設備等
2)作業系統作為使用者與電腦硬體之間的介面
為了方便使用者使用電腦,作業系統還提供了使用者介面。作業系統提供的介面主要分為兩類:
一類是命令介面,使用者利用這些操作命令來組織和控製作業的執行;
另一類就是程式介面,編程人員可以利用它們來請求作業系統服務
(1)命令介面
有兩種一種是聯機控制方式另一種是離線控制方式。
聯機命令介面又稱互動式命令介面,適用於分時或即時系統的介面,它由一組鍵盤操作命令組成。使用者通過命令台或控制終端輸入操作命令,向系統提出各種服務需求使用者輸入完一條命令,控制權就轉入作業系統的命令解釋程式,然後由命令解釋程式對輸入的命令解釋並執行,完成指定的功能,之後,控制權又轉回控制台或終端,此時使用者又可以輸入下一條命令
離線命令介面又稱離線批處理介面,即適於批處理系統,它由一組作業控制命令或作業控制語句組成,離線使用者不能直接幹預作業的執行,應事先相應的作業控制命令寫成一份作業操作說明書,連同作業一起提交給系統,當系統調度到了該作業的時候,系統中的命令解釋程式對作業說明書上的命令或控制語句逐條解釋執行,從而間接地控製作業的運行。
(2)程式介面
程式介面是由一組系統調用命令(系統調用也稱廣義指令)組成。使用者通過在程式 中使用這些系統調用命令來請求作業系統為其提供服務,使用者在程式 中可以直接使用這組系統調用命令向系統提出各種服務要求,如使用各種裝置進行有關的磁碟檔案的操作,申請 分配和回收記憶體以及其他的各種控制要求
而當前最流利的就是圖形化使用者介面(GUI)即圖形介面,使用者通過滑鼠和鍵盤在圖形介面上單擊或使用快速鍵能很方便的使用作業系統,有些系統提供了上述三種介面,但GUI最終是通過調用程式介面實現的,嚴格的說GuI圖形介面不屬於作業系統的一部分,但圖形介面所調用的系統命令屬於作業系統的一部分
3)作業系統用做擴充機器
沒有任何軟體 的叫裸機,是電腦的物理基礎,覆蓋了軟體的機器稱為擴充機器,也叫虛擬機器
作業系統概述