作業系統學習-1. 作業系統的目標和作用
寫在前面:
這個類別將記錄我學習作業系統的學習筆記。會將視訊講解與書本內容進行內容提煉。每天學習一點,堅持下來會有收穫。這篇主要記述作業系統的目標與作用,回顧作業系統發展歷程。概念居多,瞭解即可。
作業系統的目標:
1.有效性:包含兩個方面的含義:
(1)提高系統資源利用率。使CPU與I/O裝置保持忙碌狀態而得到有效利用。使記憶體與外存中的資料因有序而節省空間。
(2)提高系統吞吐量。合理組織計算機工作流程,改善資源利用率,加速程式執行,縮短程式執行週期。
2.方便性:使計算機更容易使用。硬體只識別0與1,那麼如果沒有OS,使用者要使用計算機就需要使用單純的0與1的字串來操作機器。有了OS,使用者可以直接使用OS提供的各種命令來操作機器。
3.可擴充性:要能適應計算機硬體、網路、體系結構與應用發展的要求。保持對上介面可擴充。應採用層次化結構,能方便對OS進行擴充。比如現在採用的微核心結構與客戶伺服器模式。
4.開放性:系統能遵循世界標準規範,遵循開放系統互連(OSI)國際標準。
隨著計算機技術的發展,有效性在最開始的時候更加重要,但後來方便性更加重要,現在隨著技術發展,可擴充性與開放性也是必須要考慮的點。
作業系統的作用:
1.OS作為使用者與計算機硬體系統之間的介面。OS處於使用者與硬體系統之間。OS可通過:
(1)命令方式(如DOS命令列操作);
(2)系統呼叫方式(如系統提供對硬體操作函式);
(3)圖形、視窗方式(各種使用者圖形介面)。
2.OS作為計算機系統資源的管理者。主要管理四類資源:
(1)處理器管理:分配和控制處理機;
(2)儲存器管理:記憶體的分配與回收;
(3)I/O裝置管理:I/O裝置的分配與操作;
(4)檔案管理:檔案的存取、共享與保護。
3.OS實現對計算機資源的抽象。OS用作擴充機器也叫做虛擬機器,在只有硬體介面的裸機上提供了一層軟體介面,使使用者不用直接面對0與1的硬體電路,而採用OS提供的各種命令。
作業系統的發展過程:
1.無作業系統的計算機系統
最開始是人工操作方式,然後產生離線輸入/輸出方式。事先將裝有使用者程式和資料的紙帶裝入紙帶輸入機,在一臺外圍機的控制下,把紙帶上的資料與程式輸入到磁帶上。當CPU需要這些程式和書局時,再從磁帶上將其高速調入記憶體。
2.單道批處理系統
一批作業以離線方式輸入到磁帶上,在監督程式的控制下連續處理。作業就是從程式提交到外存上,到計算機完整執行並輸出結果為止的一套完整流程的任務。
特徵:(1)自動性,無人工干預;(2)順序性,按進入記憶體的先後執行;(3)單道性,記憶體中只保持一道作業。
但缺點就是不能很好的利用系統資源。而且開弓沒有回頭箭,這樣的系統沒有使用者互動能力,因此修改與除錯非常不方便。
3.多道批處理系統
多道:記憶體中同時存放多個相互獨立的程式。多道技術是共享的基礎。
4.分時系統
分時作業系統能將一臺計算機提供給多個使用者同時使用,這裡的同時再是人的感知時間段內,比如1~3s。提高計算機的利用效率。分時系統常被用於查詢系統中,滿足眾多查詢使用者的需要。分時系統的特徵有:
(1)多路性。允許一臺主機被多臺聯機終端連線,系統按分時原則為每個使用者提供服務。微觀上,每個使用者作業輪流執行一個時間片。多路性也是同時性。
(2)獨立性。每個使用者獨佔一格終端,彼此互不干擾,這樣每個使用者感覺自己一人使用主機。
(3)及時性。使用者請求能在1~3s內獲得響應,機器反映在人們等待時限內。
(4)互動性。使用者可以通過終端向系統請求多種服務,如檔案編輯、資料處理與資源共享等。
5.實時系統
實時作業系統是指系統能及時響應外部事件的請求,在規定時間內完成對該事件的處理,並控制所有實時任務協調一致地執行。注意實時系統對響應時間要求更加嚴格,常用於一些特定領域的需求。比如實時控制,如武器火力系統系統、飛機自動駕駛系統、導彈制導系統等。還有實時資訊處理需求,比如早期訂票系統,情報檢索系統等。
實時系統與分時系統的特徵比較:
(1)多路性。實時系統在系統週期性對多路現場資訊進行採集。分時系統根據使用者情況有關,時多時少。
(2)獨立性。各系統終端都要求彼此獨立,互不干擾。
(3)及時性。實時資訊處理系統與分時系統都以人能接受的等待時間來確定系統響應時間。但實時控制系統一般為秒級到毫秒級。
(4)互動性。實時資訊處理系統中人與系統的互動僅限於訪問系統某些特定專用程式。相比分時系統互動性更好。
(5)可靠性。實時系統更可靠。往往採用多級容錯措施來保證系統與資料的安全。