作業系統複習 1 1作業系統的基本概念

2021-07-31 20:49:26 字數 3271 閱讀 9485

1.1.1 作業系統的概念

計算機系統自上而下可粗分為四個部分:硬體、作業系統、應用程式和使用者。作業系統管理各種計算機硬體,為應用程式提供基礎,並充當計算機硬體與使用者之間的中介。

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

1.1.2 作業系統的特徵

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

1)併發

併發是指兩個或多個事件在同一時間內發生。作業系統的併發性是指計算機系統中同時存在多個執行著的程式,因此它具有處理和排程多個程式同時執行的能力。在作業系統中,引入程序的目的是使程式能併發執行。作業系統的併發性是通過分時得以實現的。

注意,並行性是指系統具有可以同時進行運算或操作的特性,在同一時刻完成兩種或兩種以上的工作。並行性需要相關的硬體的支援,如多流水線或多處理機硬體機制。

2)共享

資源共享即共享,指系統中的資源可供記憶體中多個併發執行的程序共同使用。共享可分為以下兩種資源共享方式:

(1)互斥共享方式

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

為此,當程序a訪問某資源時,必須先提出請求,如果此時該資源空閒,系統便可將之分配給進行a使用,此後若再有其他程序也要訪問該資源時(只要a未完成)則必須等待。僅當程序a訪問並釋放該資源後,才允許另乙個程序對該資源進行訪問。我們把這種資源共享方式稱為互斥式共享,而把在一段時間內只允許乙個程序訪問的資源稱為臨界資源或獨佔資源。計算機系統中的大多數物理裝置,以及某些軟體中所用的棧、變數和**,都屬於臨界資源,它們都要求彼此互斥地共享。

(2)同時訪問方式

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

互斥共享,是因為一種資源在一段時間內只能滿足乙個請求,否則就會出現嚴重的問題。而同時訪問的共享,通常要求,乙個請求分幾個時間片間隔地完成的效果,與連續完成的效果相同。

併發和共享我作業系統兩個最基本的特徵,這兩者有事互為存在條件的:資源共享是以程序的併發為條件的,若系統不允許程式併發執行,則自然不存在資源共享問題;若系統不能對資源共享實施有效的管理,也將影響到程式的併發執行,甚至根本無法併發執行。

3)虛擬

虛擬是指把乙個物理上的實體變為若干個邏輯上的對應物。在作業系統中,利用了多種虛擬技術,分別用來實現虛擬處理器、虛擬記憶體和虛擬外部裝置等。

在虛擬處理器技術中,是通過多道程式設計技術,讓多道程式併發執行的方法,來分時使用乙個處理器。利用多道程式設計技術,把乙個物理機上的cpu虛擬為多個邏輯上的cpu,稱為虛擬處理器。

可以通過虛擬儲存技術,將一台機器的物理儲存器變為虛擬儲存器,以便從邏輯上來擴充儲存器的容量。

還可以通過虛擬裝置技術,將一台物理i/o裝置虛擬為多台邏輯上的i/o裝置,並允許每個使用者占用一台邏輯上的i/o裝置。

作業系統的虛擬技術可以歸納為:時分復用技術,如處理器的分時共享;空分復用技術 ,如虛擬機器儲存器等。

4)非同步

在多道程式環境下,允許多個程式併發執行,但是由於資源有限,程序的執行不是一管到底,而是走走停停,以不可預知的速度向前推進,這就是非同步性。

1.1.3 作業系統的功能和目標

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

1)作業系統為計算機系統資源的管理者

(1)處理機管理

在多道程式環境下,處理機的分配和執行都以程序(或執行緒)為基本單位,因而對處理機的管理可歸結為對程序的管理。併發時在計算機內同時執行多個程序,所以,程序何時建立、何時撤銷、如何管理、如何避免衝突、合理共享就是程序管理的最主要的任務。程序管理的主要功能有:程序控制、程序同步、程序通訊、死鎖處理、處理機排程等。

(2)儲存器管理

儲存器管理是為了給多道程式的執行提供良好的環境,方便使用者使用以及提高記憶體的利用率,主要包括記憶體分配、位址對映、記憶體保護與共享和記憶體擴充等功能。

(3)檔案管理

計算機中的資訊都是以檔案的形式存在的,作業系統中負責檔案管理的部分稱為檔案系統、檔案管理包括檔案儲存空間的管理、目錄管理及檔案讀寫管理和保護等。

(4)裝置管理

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

2)作業系統作為使用者與計算機硬體系統之間的介面

為方便使用者使用計算機,作業系統還提供了使用者介面。作業系統提供的介面主要分為兩類:一類是命令介面,使用者利用這些操作命令來組織和控制作業的執行;另一類是程式介面,程式設計人員可以使用它們來請求作業系統服務。

(1)命令介面

使用命令介面進行作業控制的主要方式有兩種,即聯機控制方式和離線控制方式。按作業控制方式的不同,可以將命令介面分為聯機命令介面和離線命令介面。

聯機命令介面又稱互動式命令介面,適用於分時或實時系統介面。它由一組鍵盤操作命令組成。使用者通過控制台或終端輸入操作的命令,向系統提出各種服務要求。使用者每輸入完一條命令,控制權就轉入作業系統的命令解釋程式,然後由命令解釋程式對輸入的命令解釋並執行,完成指定的功能。之後,控制權又轉回到控制台或終端,此時使用者又可以輸入下一條命令。

離線命令介面又稱批處理命令介面,即適用於批處理系統,它由一組作業控制命令(或稱作業控制語句)組成。離線使用者不能直接干預作業的執行,應事先用相應的作業控制命令寫成乙份作業操作說明書,連同作業一起提交給系統。當系統排程到該作業時,由系統中的命令解釋程式對作業說明書上的命令或作業控制語句逐條解釋執行,從而間接地控制作業的執行。

(2)程式介面

程式介面由一組系統呼叫命令(簡稱系統呼叫,也稱為廣義指令)組成。使用者通過在程式中使用這些系統呼叫命令來請求作業系統為其提供服務。使用者在程式中可以直接使用這組系統呼叫命令向系統提出各種服務的要求,如使用各種外部裝置,進行有關磁碟檔案的操作,申請分配和**記憶體以及其他各種控制要求。

3)作業系統用作擴充機器

沒有任何軟體支援的計算機稱為裸機,它僅構成計算機系統的物質基礎,而實際呈現在使用者面前的計算機系統是經過若干層軟體改造的計算機。裸機在最裡層,它的外面是作業系統,由作業系統提供的資源管理功能和方便使用者的各種服務功能,將裸機改造成功能更強、使用更方便的機器,通常把覆蓋了軟體的機器稱為擴充機器,又稱之為虛擬機器。

作業系統複習 作業系統介面

1 作業系統為了方便使用者方便的使用向使用者提供了兩類介面 使用者介面 聯機使用者介面與離線使用者介面 和程式介面 2 程式介面是os專門為使用者程式設定的,它是使用者程式取得os服務的唯一介面。3 系統呼叫提供了使用者程式和作業系統之間的介面,應用程式通過系統呼叫實現與os的通訊並取得服務。由此可...

作業系統複習 作業系統的特徵

併發 指兩個或多個事件在同一時間間隔內發生。這些事件巨集觀上是同時發生的,但微觀上是交替發生的。並行 指兩個或多個事件在同一時刻同時發生。作業系統的併發性指計算機系統中同時存在著多個執行著的程式。乙個單核處理機 cpu 同一時刻只能執行乙個程式,因此作業系統會負責協調多個程式交替執行 這些程式微觀上...

作業系統複習

l 計算機系統把資源管理和控制程式執行的功能集中組成一種軟體,稱為 作業系統 是系統軟體 l作業系統的兩個設計目標 1 使計算機系統使用方便 2 使計算機系統能高效地工作 擴充硬體的功能,使硬體的功能發揮得更好 使使用者合理共享資源,防止相互干擾 以檔案形式管理軟體資源,保證資訊的安全和快速訪問。l...