計算機作業系統的概念功能和特點

  計算機的作業系統的基本概念和特點相信很多人都不太瞭解,下面由小編為大家整理了計算機作業系統概念功能和特點的相關知識,希望對大家有幫助!

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

  在資訊化時代,軟體被稱為計算機系統的靈魂。而作為軟體核心的作業系統,已經與現代計算機系統密不可分、融為一體。計算機系統自下而上可粗分為四個部分:硬體、操作系 統、應用程式和使用者***這裡的劃分與計算機組成原理的分層不同***。作業系統管理各種計算機硬體,為應用程式提供基礎,並充當計算機硬體與使用者之間的中介。

  硬體,如中央處理器、記憶體、輸入/輸出裝置等,提供了基本的計算資源。應用程式, 如字處理程式、電子製表軟體、編譯器、網路瀏覽器等,規定了按何種方式使用這些資源來解決使用者的計算問題。作業系統控制和協調各使用者的應用程式對硬體的分配與使用。

  在計算機系統的執行過程中,作業系統提供了正確使用這些資源的方法。

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

  二、計算機作業系統的特點

  作業系統是一種系統軟體,但與其他的系統軟體和應用軟體有很大的不同,它有自己的特殊性即基本特徵。作業系統的基本特徵包括併發、共享、虛擬和非同步。這些概念對理解和掌握作業系統的核心至關重要,將一直貫穿於各個章節中。

  併發***Concurrence***

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

  注意同一時間間隔***併發***和同一時刻***並行***的區別。在多道程式環境下,一段時間內,巨集觀上有多道程式在同時執行,而在每一時刻,單處理機環境下實際僅能有一道程式執行,故微觀上這些程式還是在分時地交替執行。橾作系統的併發性是通過分時得以實現的。

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

  共享***Sharing***

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

  1*** 互斥共享方式

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

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

  2*** 同時訪問方式

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

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

  資源共享是以程式的併發為條件的,若系統不允許程式併發執行,則自然不存在資源共享問題;

  若系統不能對資源共享實施有效的管理,也必將影響到程式的併發執行,甚至根本無法併發執行。

  虛擬***Virtual***

  虛擬是指把一個物理上的實體變為若干個邏輯上的對應物。物理實體***前者***是實的,即實際存在的;而後者是虛的,是使用者感覺上的事物。用於實現虛擬的技術,稱為虛擬技術。在作業系統中利用了多種虛擬技術,分別用來實現虛擬處理器、虛擬記憶體和虛擬外部裝置等。

  在虛擬處理器技術中,是通過多道程式設計技術,讓多道程式併發執行的方法,來分時使用一個處理器的。此時,雖然只有一個處理器,但它能同時為多個使用者服務,使每個終端使用者都感覺有一箇中央處理器***CPU***在專門為它服務。利用多道程式設計技術,把一個物理上的CPU虛擬為多個邏輯上的CPU,稱為虛擬處理器。

  類似地,可以通過虛擬儲存器技術,將一臺機器的物理儲存器變為虛擬儲存器,以便從邏輯上來擴充儲存器的容量。當然,這時使用者所感覺到的記憶體容量是虛的。我們把使用者所感覺到的儲存器***實際是不存在的***稱為虛擬儲存器。

  還可以通過虛擬裝置技術,將一臺物理I/O裝置虛擬為多臺邏輯上的I/O裝置,並允許每個使用者佔用一臺邏輯上的I/O裝置,這樣便可以使原來僅允許在一段時間內由一個使用者訪問的裝置***即臨界資源***,變為在一段時間內允許多個使用者同時訪問的共享裝置。

  因此,作業系統的虛擬技術可歸納為:時分複用技術,如處理器的分時共享;空分複用技術,如虛擬儲存器***注:學到後續內容再慢慢領悟***。

  非同步***Asynchronism***

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

  非同步性使得作業系統執行在一種隨機的環境下,可能導致程序產生與時間有關的錯誤 ***就像對全域性變數的訪問順序不當會導致程式出錯一樣***。但是隻要執行環境相同,作業系統必須保證多次執行程序,都獲得相同的結果。

  三、計算機作業系統的目標和功能

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

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

  1*** 處理機管理

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

  2*** 儲存器管理

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

  3*** 檔案管理

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

  4*** 裝置管理

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