2019獨角獸企業重金招聘Python工程師標準>>>
操作系統的發展過程
- 無操作系統的計算機系統
- 單道批處理系統(50年代,系統資源利用率低)
- 多道批處理系統(60年代)
- 分時系統(70年代)
- 實時系統(80年代)
單道批處理系統
- 過程:一批作業以脫機方式輸入到磁帶上,在監督程序的控制下連續處理。
- 特征
(1)自動性 無人工干預
(2)順序性 按進入內存的先后順序執行
(3)單道性 內存中只保存一道作業
單道批處理系統的系統資源利用率太低,為了解決這個問題,出現了多道批處理系統。
多道批處理系統
- 多道:內存中同時存放多個相互獨立的程序
- 多道技術是共享的基礎
多道批處理特征
- 多道性 內存中有多道程序,可以并發執行
- 無序性 完成時間與進入內存先后無關
- 調度性 作業從提交(提交指的是送到系統的外存)到完成經兩次調度
(1)作業調度 內存->外存(選多個),選多個作業,分配處理機
(2)進程調度 分配處理機(選一個,處理機其實就是CPU)
計算機中最重要的兩個資源就是CPU和內存
多道批處理的優缺點
- 資源的利用率高(資源主要指的是內存,CPU,外存,文件等)
- 系統吞吐量大
吞吐量:單位時間內完成的總工作量
原因:
(1)資源忙
(2)完成或運行不下去時才切換
- 平均周轉時間長
- 無交互能力
- 平均周轉時間長
作業周轉時間:
從業從進入系統(進入外存就叫進入系統了)開始到完成并退出系統經歷的時間。通常幾小時,甚至幾天。
- 無交互能力
修改和調試極不方便
作業進行的過程中不能進行調試,人為干預。
分時操作系統
定義:
一臺主機上連接了多個終端,同時允許多個用戶通過自己的終端,以交互方式使用計算機,共享主機中的資源。
- 生產動力
(1)人機交互 (邊運行,邊調試)
(2)共享主機(設備昂貴)
(3)便于用戶上機(在終端上輸入,控制)
分時系統特征
- 多路性 即同時性,宏觀上同時,微觀上輪流
- 獨立性 每個用戶感覺自己獨占主機
- 及時性 較短時間內響應(2-3秒)
- 交互性
實時系統
- 實時性 及時響應外部事件請求
- 應用需求 :
(1)實時控制:
工業生產、武器控制、飛機的自動駕駛
(2)實時信息處理
訂票系統
操作系統的基本特征
- 并發性(最重要特征,其他三個特征均基于并發性)
- 共享性
- 虛擬性
- 異步性
并發性
- 并行性 多個事件在同一時刻發生
- 并發性 多個事件在同一時間間隔內發生
單處理機系統:宏觀并發,微觀串行
多處理機系統:可能有并行
兩種資源共享方式
- (1)互斥共享方式 對臨界資源(一次只運行一個進程訪問)的訪問,如:
打印機等硬件;棧,變量,表格等軟件。
- (2)同時訪問方式 多個進程同時訪問的資源,如:磁盤,重入碼寫的文件。
操作系統兩個最基本的特種:并發和共享。
- 虛擬:通過某種技術把一個物理實體變為若干個邏輯上的對應物。
如,虛擬存儲器,虛擬內存等。目前虛擬技術都是通過分時來實現的。
- 異步性:進程以不可預知的速度向前推進。
操作系統的五大功能
- 資源管理
(1)處理機管理(硬件)
(2)存儲器管理(硬件)
(3)設備管理(硬件)
(4)文件管理(軟件)
- (5)用戶接口
1)命令接口(聯機用戶接口,脫機用戶接口)
2)程序接口
3)圖形接口
聯機用戶接口
- 適用:幾乎所有計算機的操作系統中
- 組成:命令+終端處理程序+命令解釋程序
- 過程:
用戶在鍵盤上輸入命令;
終端處理程序接收命令并顯示在屏幕上
命令解釋程序解釋并執行該命令
聯機命令舉例:
- UNIX:login;longout
- DOS:copy;format
命令解釋程序:操作系統的最高層,如:
MS-DOS:COMMAND.COM(一種命令解釋程序)
UNIX:shell.
脫機用戶接口
- 適用:批處理系統。又稱批處理用戶接口
- 組成:JCL+作業說明書+命令解釋程序
- JCL:作業控制語言(job control language)
- 過程:用戶把對作業的控制用JCL寫在作業說明書上,命令解釋程序按照作業說明書解釋并執行
程序接口
- 目的:為用戶程序訪問系統資源而設置
- 組成:一組系統調用
- 系統調用:一個系統調用是一個能完成特定功能的子程序。
操作系統的結構設計
- 操作系統的發展階段
第一代:無結構OS
第二代:模塊化OS結構
第三代:分層式OS結構
第四代:為內核OS結構(20世紀90年代)
前三代為傳統OS結構