什麼是操作系統? 操作系統(Operating System,OS)是控制應用程式執行和充當硬體系統和應用程式之間的界面的軟體。 操作系統的目標 方便性、有效性、可擴充性、開放性。 操作系統的作用 OS作為用戶與電腦硬體系統之間的介面 如圖所示,用戶可以通過命令方式、系統調用和圖標 視窗方式實現與 ...
什麼是操作系統?
操作系統(Operating System,OS)是控制應用程式執行和充當硬體系統和應用程式之間的界面的軟體。
操作系統的目標
方便性、有效性、可擴充性、開放性。
操作系統的作用
OS作為用戶與電腦硬體系統之間的介面
如圖所示,用戶可以通過命令方式、系統調用和圖標-視窗方式實現與操作系統的通信,並取得它的服務。
OS作為電腦系統資源的管理者
- 管理處理器,用於分配和控制處理器
- 管理存儲器,主要負責記憶體的分配與回收
- 管理I/O設備,負責I/O設備的分配與操縱
- 管理文件,負責文件的存取、共用和保護
OS實現了對電腦資源的抽象
OS是鋪設在電腦硬體上的多層軟體的集合,增加了系統的功能,隱藏了對硬體系統的具體細節,實現了對電腦硬體操作的多個層次的抽象模型,方便用戶使用。
操作系統的發展過程
未配置操作系統的電腦系統
- 人工操作方式
離線輸入/輸出方式
離線I/O方式指的是程式和數據的輸入和輸出都是在外圍機的控制下完成的,或者說,他們是在脫離主機的情況下進行的。
聯機I/O指的是在主機的直接控制下進行輸入/輸出的方式。
- 單道批處理系統:首先由監督程式將磁帶上的第一個作業裝入記憶體,並把運行控制權交給該作業,當該作業處理完成時,又把控制權交還給監督程式,再由監督程式把磁帶上的第二個作業調入記憶體,電腦系統就這樣自動地一個作業緊接一個作業進行處理,直至磁帶上的所有作業全部完成。
多道批處理系統:用戶所提交的作業都先存放在外存上併排成一個隊列,稱為“後備隊列”;然後由作業調度程式按一定的演算法從後被隊列中選擇若幹個作業調入記憶體,使它們共用CPU和系統中的各種資源。
- 分時系統:分時系統是指在一臺主機上連接了多個配有顯示器和鍵盤的終端並由此所組成的系統,該系統允許多個用戶同時通過自己的終端,以交互方式使用電腦,共用主機中的資源。為了及時從終端接收命令並處理,需要為每個終端配置緩衝區,暫存用戶鍵入的命令(或數據)。因為作業在磁碟上是不能運行的,所以作業應直接進入記憶體,並且系統規定採用輪轉運行方式,每個作業只能運行一個時間片,然後就暫停該作業的運行,並立即調度下一個作業運行。
- 實時系統:實時系統是指系統能及時響應外部時間的請求,在規定的時間內完成對該事件的處理,並控制所有實時任務協調一直地運行。
微機操作系統
操作系統的基本特性
併發:指兩個或多個事件在同一時間間隔內發生,使得OS能有效地提高系統中資源利用率,增加系統的吞吐量。
- 併發性是指兩個或多個事件在同一時間間隔發生。
- 並行性是指兩個或多個事件在同一時刻發生。
共用:共用是指系統中的資源可供記憶體中多個併發執行的進程(線程)共同使用。
- 互斥共用:僅當占有資源的進程A訪問完並釋放該資源後,才允許另一進程B對該資源進行訪問(對獨占資源應採用該方式)
- 同時訪問:允許在一段時間內由多個進程“同時”對它們進行訪問。這裡的“同時”,在單處理機環境下往往是巨集觀的,而在微觀上,這些進程可能是交替對該資源進行訪問。
虛擬:通過某種技術將一個物理實體變成若幹個邏輯上的對應物。
- 時分復用技術
虛擬處理機技術:虛擬處理機技術藉助多道程式設計技術,即為每一道程式建立一個進程,讓多道程式併發執行,從而達到分時使用一臺電腦,這台電腦能夠同時為多個用戶服務,使得每個終端用戶都認為有一個處理機專門為他服務。
虛擬設備技術:一臺物理I/O設備虛擬為多台邏輯上的I/O設備,並允許用戶占用一臺邏輯上的I/O設備,這樣可以允許在一段時間內由一個用戶訪問的設備(即臨界資源)變為在一段時間內允許多個用戶同時訪問的共用設備。
- 空分復用技術
可以用來實現虛擬磁碟、虛擬存儲等,提高資源的利用率。它將一個頻道範圍非常寬的通道,劃分成多個頻率範圍較窄的通道,其中的任何一個頻帶都只供一個用戶通話
非同步:在多道程式環境下允許多個進程併發執行,但只有進程在獲得所需的資源後方能執行。進程以人們不可與之的速度向前推進,此即進程的非同步性。簡單來說,即由於各用戶程式性能的不同,不同程式對記憶體的使用開始時間、結束時間、中斷時間是不可預知的。
操作系統的主要功能
- 處理機管理功能:創建和撤銷進程,對諸進程的運行進行協調,實現進程之間的信息交換,以及按照一定的演算法把處理機分配給進程。主要為進程式控制制、進程同步、進程通信和調度。
- 存儲器管理功能:記憶體分配和回收、記憶體保護、地址映射和記憶體擴充等。
- 設備管理功能:主要是完成和用戶進程提出的I/O請求,為用戶進程分配所需的I/O設備,並完成指定的I/O操作以及提高CPU和I/O設備的利用率,提高I/O速度,方便用戶使用I/O設備。主要有緩衝管理、設備分配以及虛擬設備等。
- 文件管理功能:對用戶文件和熊文件進行管理以及方便用戶使用,並保證文件的安全性。主要有對文件存儲空間的管理、目錄管理、文件的讀,寫管理以及文件的共用與保護等功能。
- 操作系統與用戶之間的介面:便於用戶直接或間接地控制自己的作業。主要有聯機用戶介面、脫機用戶介面和圖形用戶介面。
微內核OS結構
微內核(Micro Kernel)操作系統
基本特征
- 足夠小的內核
基於客戶/伺服器模式
- 應用“機制與策略分離”原理
採用面向對象技術
微內核的基本功能:進程(線程)管理、低級存儲器管理、中斷和陷入處理
微內核操作系統的優點:提高了系統的可拓展性,增強了系統的可靠性,可移植性強,提供了對分散式系統的支持,融入了面向對象技術
文章同步在微信公眾號,習慣微信上看文章的可以關註微信公眾號:加二減壹
文章同步https://segmentfault.com/u/1s_kiwen,轉載須註明出處