Download presentation
Presentation is loading. Please wait.
1
計 算 機 概 論 Chapter 10 作業系統
2
Ch010 作業系統 2 學習目標 描述作業系統的兩個主要任務 定義記憶體及程序管理 解釋邏輯位址與實體位址間的關係 基礎:第 5.2 節 范紐曼 電腦架構 ( 第 5 章講義第 10 -17 頁 )
3
Ch010 作業系統 3 10.1 軟體分類 應用軟體( application software )是寫來達成我 們特定的需求 — 來解決現實世界中的問題 文字處理程式、遊戲、庫存控制系統、汽車診斷程式 與飛彈導引程式等都是應用軟體 系統軟體( system software )在基礎層次上管理 一個電腦系統 它提供了一些工具及一個工作環境讓應用程式能夠被 建構及執行
4
Ch010 作業系統 4 作業系統 作業系統( operating system )管理電腦資 源,例如記憶體與輸入 / 輸出裝置,並提供 一個介面讓人可以與電腦相互溝通 作業系統可以讓應用程式與其他系統資料 相互溝通
5
Ch010 作業系統 5 圖 10.1 作業系統與電腦系統中 許多部分的互動關係
6
Ch010 作業系統 6 資源管理 多元程式( multiprogramming )是一種可 以讓許多的程式同時在主記憶體中爭取 CPU 的存取權以便能夠被執行的技術 記憶體管理( memory management ):持 續追蹤什麼程式在記憶體中,以及它們在 記憶體中的什麼位置
7
Ch010 作業系統 7 資源管理 ( 續 ) 程序( process )可以被定義作一個在執行 中的程式 作業系統要有程序管理( process management ) 來小心地追蹤程序的進展及記錄所有中間的狀 態 CPU 排程( CPU scheduling )決定在任一時 間點上那一個在記憶體中的程序可以被 CPU 執行
8
Ch010 作業系統 8 分時 分時( timesharing )系統是讓許多使用者 在同一時間與一台電腦交談 多元程式允許許多作業同時啟動,它提升 了程式設計者可直接與電腦系統對談的能 力,而仍然共享電腦的資源 在分時系統中,每一個使用者有他或她自 己的虛擬機器( virtual machine ),在此機 器上所有的系統資源 (實際上) 都可以使用
9
Ch010 作業系統 9 10.2 記憶體管理 作業系統必須要有一些技術來: 追蹤一個程式是如何存在記憶體中及存放在何處 轉換邏輯程式位址成為實際記憶體位址 邏輯位址( logical address ),有時候也稱為虛擬 或相對位址,指定一個相對於程式的通用位置, 而不是相對於真實的主記憶體 實體位址( physical address )則是指在主記憶體 元件中的真實位址
10
Ch010 作業系統 10 記憶體管理 ( 續 ) 圖 10.3 記憶體是一個連續的位元群體, 由指定的位址來參考它的內容
11
Ch010 作業系統 11 早期:單一連續記憶體管理 有兩個程式在記 憶體中: 作業系統 應用程式 這種方法被稱作單 一連續記憶體管理 Figure 10.4 主記憶體分 成兩個部分
12
Ch010 作業系統 12 單一連續記憶體管理 ( 續 ) 邏輯位址就是一個相對於程式起始位置的 簡單整數 要產生實體位址,我們只要將邏輯位址加 上程式在實際主記憶體的起始位址即可
13
Ch010 作業系統 13 單一連續記憶體管理 ( 續 ) 圖 10.5 連繫一個邏輯位址到 實體位址
14
Ch010 作業系統 14 分割記憶體管理 在任何時間點上,記憶體都 被分成一些的分割區,有的 分割區是空的而有的則是被 分配給程式使用 基底暫存器( base register ) :保存目前分割區起始位址 的暫存器 範圍暫存器( bounds register ) : 保存目前分割 區長度的暫存器 圖 10.6 在分割記憶體管理 中的位址解析度
15
Ch010 作業系統 15 10.3 程序管理 程序的狀態 圖 10.8 程序的生命週期
16
Ch010 作業系統 16 Windows 工作管理員 Ctrl+Alt+Delete
17
Ch010 作業系統 17 程序控制區塊 作業系統必須對每一個作用中的程序管理 大量的資料 通常這些資料是被儲存在一個稱為程序控 制區塊( process control block, PCB )的資 料結構中 每一個狀態是以一串列的 PCB 來表示,而每一 個 PCB 是表示在該狀態的每一個程序
18
Ch010 作業系統 18 程序控制區塊 ( 續 ) 要記得的是我們只有一個 CPU ,所以也只有一組 CPU 暫存器 這些暫存器包含的是與目前正在執行的程序相關的值 每一次當一個新的程序進入執行狀態時: 目前正在執行之程序的暫存器值將存入它的 PCB 中 新的執行程序之暫存器值就被載入 CPU 這種資訊交換的動作被稱為內文切換( context switch )
19
Ch010 作業系統 19 10.4 CPU 排程 CPU 排程是決定在備妥狀態中的哪一個程序 可以被移入執行狀態的一種動作 就是決定哪一個程序可以使用 CPU 以完成其 計算的進展
20
Ch010 作業系統 20 CPU 排程 - 先到先服務 程序是依照它到達執行狀態的先後次序來 移入 CPU 中執行 先到先服務( FCFS )的排程做法是非先佔 式的
21
Ch010 作業系統 21 CPU 排程 - 最短工作優先 先檢視所有在備妥狀態的程序然後分派給 最短服務時間的那一個。 它通常以非先佔式演算法來實現。
22
Ch010 作業系統 22 補充: Windows 系統管理 開始 -> 控制台 系統 使用者帳戶 新增或移除程式 網路連線
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.