Presentation is loading. Please wait.

Presentation is loading. Please wait.

作業系統 第三章 作業系統結構.

Similar presentations


Presentation on theme: "作業系統 第三章 作業系統結構."— Presentation transcript:

1 作業系統 第三章 作業系統結構

2 第三章 作業系統結構 系統組成 行程管理 主記憶體管理 檔案管理 I/O系統管理 輔助記憶體管理 網路 保護系統 命令直譯程式系統
作業系統服務 系統呼叫 系統結構 虛擬機器 系統設計 摘要

3 系統組成 龐大的作業系統可分為幾個較小的模組。 有的作業系統可能只有實作出其中的幾個模組或部分模組 每個作業系統所應用的領域不盡相同。
系統設計師必須要以需求為導向來選擇適當的組成模組。

4 行程管理 程式與行程間的關係 行程是電腦系統中的基本工作單位。 程式被載入到記憶體中執行之後就稱為行程。
程式平常只是被動地存在儲存裝置中,並沒有權力去使用系統上的資源。 成為行程後,就有主動的控制權去執行程式碼、並使用各種資源來完成工作。 行程是電腦系統中的基本工作單位。

5 行程管理 (續) 作業系統對行程管理有下列幾項目標: 管理使用者和系統行程的建立與結束。 管理使用者和系統行程的暫停與再開始。
提供行程間同步的機制。 提供行程間通訊的機制。 提供處理死結的機制。

6 Linux 的 ps 指令

7 主記憶體管理 主記憶體是一塊很大的陣列 主記憶體也是 CPU 唯一能夠直接存取到的儲存裝置。
作業系統必須小心決定程式應該要被載入到主記憶體的哪一塊空間。 不同的系統會使用不同的記憶體管理方式 大型的工作站 嵌入式系統

8 主記憶體管理 (續) 主記憶體管理所需要管理的事項如下: 記錄哪一塊記憶體位址被哪一個程式使用 決定程式應該載入到哪一塊記憶體空間
分配和回收記憶體空間

9 檔案管理 每種儲存裝置都有不同的儲存方式和物理特性。
為了讓資料的存取不受實體裝置的差異所影響,作業系統定義了一個邏輯儲存單位,以及將檔案分類的抽象概念 檔案 目錄

10 檔案管理 (續) 作業系統對檔案管理有下列幾個項目: 檔案的建立與刪除 目錄的建立與刪除
提供管理檔案和目錄的能力,例如複製、移動、和更改檔名等

11 I/O系統管理 作業系統的任務之一就是建立使用者與週邊裝置之間的友善介面。
作業系統是透過驅動程式來將複雜的週邊設備隱藏起來,使用者只要合法地使用驅動程式介面,就可以驅動週邊設備。 另一個 I/O 重要的概念 裝置即檔案

12 I/O系統管理 (續) I/O 系統管理包括了: 記憶體管理部分,包含了緩衝、快取與週邊並行(spooling) 裝置驅動程式的介面
特定硬體裝置的驅動程式

13 輔助記憶體管理 電腦系統中提供了輔助記憶體來支援主記憶體 輔助記憶體的速度相當慢,要如何讓存取輔助記憶體的動作有效率便相當地重要。
因為主記憶體主要的缺點就是斷電後裡面的資料會全部消失。 輔助記憶體的速度相當慢,要如何讓存取輔助記憶體的動作有效率便相當地重要。

14 輔助記憶體管理 (續) 作業系統在輔助記憶體管理中負責下列幾個部分: 管理未使用的空間 分配空間給需要的檔案 磁碟排程

15 網路 網路將許多電腦連結成分散式系統 在分散式系統中有各式各樣的電腦 分散式系統的好處 電腦並不共享記憶體、週邊設備或是計時器
每一台電腦都有自己的記憶體及計時器,這些電腦之間用各種線路來聯繫 在分散式系統中有各式各樣的電腦 連接這些電腦的線路就通稱為通訊網路 分散式系統的好處 增加計算的速度 資料共享 提高系統可靠度

16 保護系統 作業系統必須提供一些保護機制以提高系統的可靠度 行程不能任意修改別人甚至是作業系統的記憶體空間。
作業系統必須防止同時存取一個檔案所會發生的問題。 使用計時器來避免一個行程佔用 CPU 的時間太長。 讓使用者無法直接存取週邊設備的控制暫存器,只能透過系統呼叫來取得使用權。

17 命令直譯程式系統 在電腦系統中,除了作業系統以外,還需要其他重要的系統程式幫忙才能執行使用者所下的命令。 命令直譯程式 圖型使用者介面

18 第三章 作業系統結構 系統組成 作業系統服務 系統呼叫 系統結構 虛擬機器 系統設計 摘要

19 作業系統服務 下列幾項服務是一般作業系統都會提供的: 還有一些服務是用來提高系統的效能 程式執行 I/O 操作 檔案管理 通訊 錯誤偵測
資源分配 統計 保護

20 第三章 作業系統結構 系統組成 作業系統服務 系統呼叫 系統結構 虛擬機器 系統設計 摘要 行程控制 X 記憶體管理 X 檔案操作 X

21 系統呼叫 系統呼叫是使用者行程與作業系統間的介面 系統呼叫發生時 讓使用者行程可以使用週邊設備 讓使用者行程得到較高的權限來處理工作
產生陷阱中斷進入系統模式 作業系統取得控制權 判斷使用者行程請求的是哪一種系統呼叫 執行使用者行程所需要的服務

22 第三章 作業系統結構 系統組成 作業系統服務 系統呼叫 系統結構 簡單結構 分層方法 微核心 虛擬機器 系統設計 摘要

23 系統結構 維護與修改作業系統是一件龐大又複雜的工程,需要好好規劃。 常見的方法是 將作業系統模組化 每個模組都要經過周詳的定義
形成一個有組織的系統結構

24 簡單結構 MS-DOS 是以建立一個簡單的小系統為目標來實作。 MS-DOS 希望以最簡單的方法來提供使用者最多的功能。

25 MS-DOS 系統結構 應用程式 常駐程式 MS-DOS驅動程式 ROM BIOS 驅動程式

26 簡單結構 Unix 一些常用的技術來輔助作業系統的模組化 Unix 系統架構分為核心及系統程式兩個部份。
這種方式可以讓作業系統對電腦硬體與應用程式作較佳的控制。 一些常用的技術來輔助作業系統的模組化 由上而下的作法

27 Unix 系統結構 使用者 命令直譯程式 編譯器和直譯器 系統函式庫 核心的系統呼叫介面 訊號 終端機處理 終端機驅動程式
字元 I/O 系統 檔案系統 置換 區塊I/O系統 磁碟和磁帶驅動程式 CPU排程 分頁替換 需求分頁 虛擬記憶體 硬體的核心介面 終端機控制器 終端機 裝置控制器 磁碟、磁帶、光碟 記憶體控制器 記憶體

28 分層方法 分層方法是將作業系統模組化的方法之一。 分層方法最主要的好處就是模組化,這個方法讓除錯更加容易。
例如一個系統若是分為 N 層的話,最底層(第零層)是硬體,而最高層(第 N 層)是使用者介面,作業系統也是其中一層。 分層方法最主要的好處就是模組化,這個方法讓除錯更加容易。 分層方法的缺點是執行起來會比較沒有效率 在每一層往下尋求服務時,都會需要傳遞些資料或是參數,因此系統中的層次越多,對系統的額外負擔也會越大。

29 微核心 微核心就是很小的核心 微核心的優點是作業系統容易擴充與維護。 巨大核心內不必要的模組盡量移出,改由使用者層或是函式庫來處理這些服務。
核心內只剩最重要的服務。 微核心的優點是作業系統容易擴充與維護。

30 第三章 作業系統結構 系統組成 作業系統服務 系統呼叫 系統結構 虛擬機器 實作 優點 系統設計 摘要

31 虛擬機器 虛擬機器最主要的概念是希望每個在電腦系統中的使用者都認為自己擁有一整部電腦,而且這部電腦上的資源都由一個人獨享,甚至隨時可以重新開機。 虛擬機器是以分享電腦中的實體資源來達成每個使用者都擁有一部真實電腦的假象 利用排程讓行程分享 CPU 資源,使得行程以為自己擁有 CPU。 利用週邊並行和檔案系統的作法,提供虛擬的讀卡機和虛擬的印表機。 使用者的終端機則可以提供虛擬機器的控制台。 虛擬機器主要的困難是發生在磁碟系統中 可以在實體磁碟上切割出數個虛擬磁碟供給虛擬機器使用。

32 虛擬機器的系統層次 硬體 虛擬機器 核心 行程

33 實作 虛擬機器要能夠模擬出實體機器所提供的功能給使用者。 虛擬機器和實體機器主要的不同在於執行的時間差異:
虛擬機器在處理 I/O 時是用週邊並行的方式,所以可以節省一些時間。 虛擬機器必須要直譯每個指令,這又會浪費一些時間。

34 優點 系統資源可以得到完全的保護。 虛擬機器也是個很好的研究與發展作業系統的工具。 虛擬機器能讓不同架構的硬體能夠相互執行彼此的程式。

35 第三章 作業系統結構 系統組成 作業系統服務 系統呼叫 系統結構 虛擬機器 系統設計 設計目標 X 機制和策略 X 實作 摘要

36 系統設計 在設計一個系統之前,最重要的是先定義好系統的目標與規格。 系統的設計會與所選擇的硬體與系統的類型有關。
每種系統都有不同的特性以及需要支援的硬體。 設計的問題並沒有一個最佳解法。

37 實作 傳統的作業系統都是以組合語言寫成的。 現今的作業系統也可以用高階語言和組合語言混合來寫: 高階的程式碼來撰寫系統的好處
Linux, MicroSoft ? 高階的程式碼來撰寫系統的好處 減少程式開發的時間 程式碼更精簡 容易瞭解 方便除錯 編譯器可以最佳化 容易移植

38 實作 (續) 高階語言所實作出來的作業系統有下列缺點 其他影響速度因素 系統設計師要能找出系統效率的瓶頸並想辦法增進 執行速度較慢
需要較大的執行空間 其他影響速度因素 資料結構 演算法 系統設計師要能找出系統效率的瓶頸並想辦法增進 監督系統的運作情形 加入額外的程式來計算與偵測系統的行為 資料分析 統計出系統各部分的執行效率


Download ppt "作業系統 第三章 作業系統結構."

Similar presentations


Ads by Google