操作系統 1. 概述 什麼是操作系統? 操作系統(Operating System,OS)是控制應用程式執行和充當硬體系統和應用程式之間的界面的軟體 操作系統的是用來幹嘛的? 操作系統位於底層硬體與用戶之間,是兩者溝通的橋梁。用戶可以通過操作系統的用戶界面,輸入命令。操作系統則對命令進行解釋,驅動硬 ...
操作系統
1. 概述
-
什麼是操作系統?
操作系統(Operating System,OS)是控制應用程式執行和充當硬體系統和應用程式之間的界面的軟體
-
操作系統的是用來幹嘛的?
操作系統位於底層硬體與用戶之間,是兩者溝通的橋梁。用戶可以通過操作系統的用戶界面,輸入命令。操作系統則對命令進行解釋,驅動硬體設備,實現用戶要求。以現代標準而言,一個標準PC的操作系統應該提供以下的功能:
- 進程管理。又稱處理器管理,其主要任務是對處理器的時間進行合理分配、對處理器的運行實施有效的管理。
- 存儲器管理。由於多道程式共用記憶體資源,所以存儲器管理的主要任務是對存儲器進行分配、保護和擴充。
- 設備管理。根據確定的設備分配原則對設備進行分配,使設備與主機能夠並行工作,為用戶提供良好的設備使用界面。
- 文件管理。有效地管理文件的存儲空間,合理地組織和管理文件系統,為文件訪問和文件保護提供更有效的方法及手段。
- 用戶介面。用戶操作電腦的界面稱為用戶介面(或用戶界面),通過用戶介面,用戶只需進行簡單操作,就能實現複雜的應用處理。
-
操作系統的主要特性
-
併發性:是指兩個或者兩個以上的事件或活動在同一時間間隔內發生
-
共用性:是指操作系統中的資源(包括硬體資源和信息資源)可以被多個併發執行的進程共同使用,而不是被其中的某個程式獨占
註意:臨界資源:同一時間內只允許一個程式訪問的資源
-
非同步性:即程式不是一貫到底,而是走走停停的(即什麼時候走和什麼時候停不確定)
註意:非同步性是併發性的表現特征,併發性是非同步性的內在原因。
-
虛擬性:虛擬化,如虛擬機
-
-
操作系統的發展和分類
- 操作系統的發展
- 人工操作階段
- 管理程式階段
- 多道程式設計和操作系統的形參
- 操作系統的分類
- 批處理操作系統:批量化處理作業(用戶離線操作)
- 分時操作系統:允許多個聯機用戶同時使用一臺電腦系統進行計算的操作系統
- 實時操作系統:實時操控
- 操作系統的發展
-
操作系統的用戶介面
-
程式介面(應用編程介面)
供程式員在編製層序時以程式語句或指令的形式調用操作系統的服務和功能。
- 系統調用:為了擴充機器功能,增強系統能力、方便用戶使用而在內核中建立的過程(函數)
- 系統調用的分類
- 進程和作業管理
- 文件管理
- 設備管理
- 記憶體管理
- 信息維護
- 通信
-
操作介面(作業級介面)
為用戶提供的操作並控制電腦工作和提供服務手段的集合
- 操作控制命令
- 作業控制命令
- 圖形用戶界面
- 新一代用戶界面
-
-
操作系統的結構設計
-
操作系統的主要構件
通常把組成操作系統程式的基本單位稱為操作系統構件
主要構件有
- 內核:對硬體進行首次抽象的一層軟體,也稱為硬體抽象層
- 進程:程式的一次運行過程
- 線程:進程中的一個執行流
- 管程:管理共用資源的一種對象
-
操作系統的結構
-
單體式結構:在多數常見的組織形式的處理方式中,全部操作系統在內核態中以單一程式的方式運行。整個操作系統以過程集合的方式編寫,鏈接成一個大型可執行二進位程式。
-
層次式結構:單體系統進一步通用化,就變成一個層次式結構的操作系統,它的上層軟體都是在下一層軟體的基礎之上構建的。
-
客戶機/伺服器與微內核結構:
採用客戶機/伺服器結構的操作系統適宜於應用在網路環境下分散式處理的計算環境,這種體系又稱微內核結構,特點如下:
1.運行在核心態的內核:內核提供所有操作系統基本都具有的那些操作,只提供了一個很小的功能集合。
2.運行在用戶態的並以客戶機/伺服器方式運行的進程層:除內核部分外,操作系統所有的其他部分被分成若幹個相對獨立的進程,每一個進程實現一組服務,稱為服務進程。
-
-
操作系統的運行模型
- 非進程模式:以非進程模式運行的操作系統,其功能組織成一組例行程式操作系統服務常式,以系統調用的形式與用戶進程代碼結合在一起執行,構成形式上的單一進程操作
- 進程模式:將操作系統組織成一組系統進程
-