操作系統學習筆記——計算機操作系統基本概念

一、操作系統的概念

  • 操作系統(Operating System,OS)是指控制和管理整個計算機的硬件與軟件資源,合理地組織、調度計算機的工作與資源的分配,進而爲用戶和其他軟件提供方便接口與環境的程序集合
  • 操作系統是計算機系統中最基本的系統軟件。

二、操作系統的特徵

  • 操作系統的基本特徵有併發、共享、虛擬和異步

1、併發

  • 併發,Concurrence,指兩個或兩個以上的事件在同一時間間隔內發生,對於操作系統就是指同同時有兩個或兩個以上的程序在運行,因此操作系統具有處理和調度多個程序同時執行的能力。每個正在運行的程序就是一個進程
  • 同一時間間隔(併發)和同一時刻(並行)的區別:
  • 多道程序環境中,一段時間內,宏觀上有多個程序同時執行,而在每個時刻,單處理機環境中只有一道程序執行,因此微觀上這些程序仍是分時交替執行;所以,操作系統的併發性是通過分時來實現的
  • 而併發性是指“系統具有同時進行運算或操作的特性,在同一時刻能完成兩種或兩種以上的工作”,並行性需要硬件的支持

2、共享

  • 共享,Sharing,即資源共享指系統中的資源可供內存中多個併發執行的進程共同使用,共享的方式有互斥共享和同時訪問共享

2.1、互斥共享

  • 主要是針對某些資源一段時間內只允許一個進程訪問該資源,例如打印機、相機,這是爲了避免數據混淆。實行互斥共享的資源,當有進程A請求訪問時,首先先查看資源是空閒還是忙,若空閒則直接分配給進程A使用,反之若是資源正忙,那麼進程A必須等待,等到其他進程訪問完並釋放資源,A才能使用資源
  • 對於這種一段時間內只允許一個進程訪問的資源稱之爲臨界資源或獨佔資源
  • 計算機中的大多數物理設備和軟件所使用的棧、變量和表格,都是臨界資源。

2.2、同時訪問共享

  • 使用同時訪問共享的資源,往往不會因爲同個時刻有多個進程訪問而出現數據混淆,這類資源的典型就是磁盤;值得注意的時,這裏的同時是宏觀上的,也就是一個時間段;同時訪問共享,其實是將一個請求分幾個時間片段間隔地完成,其效果與連續完成地效果一樣。而對於互斥共享,即便要求在很短一個時間片段內就可以完成,也只能滿足這個請求而不允許其他請求,設想一下打印機,如果用同時共享訪問,那麼勢必出現在同一張 A4 紙上出現兩個文檔內容混雜在一起地情況。

3、共享和併發地關係

  • 併發和共享是操作系統地兩個基本特徵,彼此互爲存在地條件:
  • 1)資源共享以併發爲條件,若系統無法併發,也就是同一時間間隔內只有一個程序在執行,那麼也就不存在資源共享問題了
  • 2)若系統不能有效管理資源共享,例如無法有效管理程序對相機地使用,那麼所有要用到計算機地程序地執行必定受到影響,要麼彼此阻塞,要麼彼此競爭,甚至所有地程序都直接奔潰

4、虛擬

  • 虛擬,Virtual,指把一個物理上存在地實體變爲若干邏輯上地對應物,用於實現虛擬化地技術,稱爲虛擬技術。利用虛擬技術可以實現虛擬處理器、虛擬存儲等。
  • 虛擬處理器是通過多道程序設計技術,採用讓多道程序併發執行地方法,來分時使用一個處理器,讓每個終端用戶感覺到有一箇中央處理器在專門爲他服務
  • 虛擬存儲則是從邏輯上擴充存儲器的容量,此時用戶感受到的內存容量並不是真實存在的
  • 虛擬機是現在大多數人進行多操作系統的選擇,也就是在物理主機上通過安裝專門的用於跑虛擬機的平臺軟件,如 VirtualBox,在平臺軟件虛擬出一臺電腦,再在這個虛擬電腦上安裝一個不同意物理主機上的系統的操作系統。
  • 總的來說,操作系統的虛擬技術可歸納爲:時分複用技術和空分複用技術

5、異步

  • 異步,Asynchronism,指多道程序環境下的進程因爲資源有限而走走停停,以不可知的速度向前推進
  • 異步性讓操作系統運行在一種隨機的環境下,可能導致進程出現與時間有關的錯誤,但是,只要運行環境相同,操作系統就必須保證多次運行進程後都能獲得相同的結果

二、操作系統的目標和功能

  • 爲了給程序和用戶提供一個良好環境,操作系統應當具有管理計算機資源的功能、爲用戶提供訪問底層硬件資源的統一接口、用作擴充機器

1、管理資源

  • 操作系統對計算機的資源管理大致可以分爲:處理機(CPU)管理、存儲器管理、文件管理和設備管理

1.1、處理機管理

  • 也就是對進程的管理,進程何時創建、何時撤銷,如何管理、如何避免衝突,合理共享都是進程管理的主要任務,進程管理的主要功能有進程控制、進程同步、進程通信、死鎖處理、處理機調度等。

1.2、存儲器管理

  • 主要包括內存的分配與回收、地址映射、內存保護與共享和內存擴充等功能,以提高內存利用率爲目標。

1.3、文件管理

  • 計算機中的信息都是以文件的形式存在的,操作系統中負責文件管理的部分稱爲文件系統,文件管理包括文件存儲空間管理、目錄管理及文件讀寫管理和保護等。

1.4、設備管理

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

2、統一接口

  • 操作系統提供的接口有兩大類:命令接口和程序接口;前者讓用戶通過這些操作命令來組織和控制作業的執行,後者讓編程人員用於獲取系統服務。

2.1、命令接口

  • 使用命令接口的方式有聯機控制和脫機控制,按控制方式的不同命令接口分爲聯機命令接口和脫機命令接口
1)聯機命令接口
  • 又稱爲交互式命令接口,適用於分時或實時操作系統,命令由一組鍵盤操作命令組成。工作流程:
  • 用戶在終端或控制檯輸入一條命令,然後控制器轉交給命令解釋程序,命令解釋程序解釋並執行命令對應的功能,然後再將控制器回交給控制檯或終端,用戶再輸入下一條命令,循環反覆知道完成所有工作。
4)脫機命令接口
  • 也叫做批處理命令接口,適用於批處理系統,命令則是由一條條有特定意義的字符串組成,工作流程:
  • 用戶新建一個批處理文件,在文件中編寫用於完成工作的相關命令,保存文件,再在終端或控制檯調用批處理程序執行批處理文件,執行過程用戶無法干預。

2.2、程序接口

  • 程序接口由一組系統調用,也就是廣義指令組成,用戶在程序中使用這些系統調用請求系統服務,從而完成想要作的事。
  • 時下最流行 GUI,圖形接口,就是通過調用程序接口實現的;所以在這裏要明白的另一件事就是,GUI 並不是操作系統的一部分,而是基於操作系統的應用程序

3、用作擴充機器

  • 沒有任何軟件支持的機器稱爲裸機,是計算機系統的物質基礎;而我們所熟知的計算機系統則是經過層層軟件改造後的計算機;簡單理解,裸機在最裏面,操作系統在最外面,操作系統所提供的資源管理功能和方便用戶使用的各種服務,將裸機改造爲功能更強、使用更方便的機器,因而,通常稱覆蓋了軟件的機器稱爲擴充機器或虛擬機

下一篇

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章