第8章作業系統.

Slides:



Advertisements
Similar presentations
第 3 章操作系统基础 3.1 操作系统概述 3.2 操作系统的功能模块 3.3 典型操作系统概述.
Advertisements

孔明锁制作.
第10章 领导职能与有效指挥 渤海大学 终身教授 单凤儒.
Foundations of Computer Science
第四章 電腦軟體 課前指引 實體的電腦裝置,我們稱之為「硬體」(Hardware),至於軟體則是個抽象的概念,軟體是經由人類以各種不同的程式語言撰寫而成,以達到控制硬體、進行各種工作的抽象化(例如文書處理)等動作。有些讀者經常迫不及買了一台新電腦,就以為可以開始使用!事實不然,一部配備齊全的電腦,如果沒有合適的軟體來控制與搭配,絕對也是英雄無用武之地。一般來說,我們將軟體分「系統軟體」(System.
操作系统 袁昕.
4.5 实时调度算法 实时调度是为了完成实时处理任务而分配计算机处理器的调度方法。实时处理任务要求计算机在用户允许的时限范围内给出计算机的响应信号。 实时处理任务可分为 硬实时任务(hard real-time task) 软实时任务(soft real-time task)。 其中,前者要求计算机系统必须在用户给定的时限内完成,后者允许计算机系统在用户给定的时限左右处理完毕。
中央广播电视大学开放教育试点课程 计算机操作系统.
操作系统原理 Principles of Operating System
前言 1.课程安排: 第一章 操作系统引论(7学时) 第二章 进程管理(14学时) 第三章 处理机调度与死锁(10学时)
第五章 处理机管理 5.1 引言 5.2 调度算法 5.3 调度算法性能分析 5.4 实时调度 5.5 多处理机调度 5.6 调度算法举例
操作系统结构.
中小企營商基準培訓指南 品質保證 最佳營商典範 -艾發特有限公司
第2章 操作系统的用户界面 2.1 运行一个用户程序的过程 2.2 操作系统的用户界面 2.3 操作系统提供给用户程序的服务
第8章 机床操作 主讲:臧红彬 博士.
第三章 处理机调度与死锁 3.1 处理机调度的基本概念 3.2 调度算法 3.3 实时调度 3.4 多处理机系统中的调度
8.1 系統軟件、應用軟件和驅動程序 電腦軟件 是使電腦處理指定工作的一連串指令 大致可分大為三類: 驅動程序 系統軟件 應用軟件.
第五章 设备管理 5.1 I/O系统 5.2 I/O控制方式 5.3 缓冲管理 5.4 设备分配 5.5 设备处理 5.6 磁盘存储器管理.
第10章 多处理器和实时调度 主要内容: 多处理器调度 实时调度 操作系统调度例 分类与粒度 设计问题 进程调度 实时进程的要求与特点
認識Windows 98系統 計網中心 王素貞.
第一章 引论 1.1操作系统的概念 计算机系统: 计算机硬件 计算机软件 计算机硬件:运算器、控制器、存储器、输入设备和 输出设备
Operating System CPU Scheduing - 2 Monday, August 11, 2008.
Operating System CPU Scheduing - 3 Monday, August 11, 2008.
作業系統的結構 日期 : 2018/9/17.
第6章 電腦軟體 應用軟體 多元程式處理 系統軟體 記憶體配置 作業系統簡介 虛擬記憶體 作業系統的演進與發展 行程管理
Operating System Concepts 作業系統原理 Chapter 3 行程觀念 (Process Concept)
3-1 電腦作業系統的功能與類型 3-2 Windows XP的基本操作 3-3 Windows XP的檔案管理
課程名稱:計算機概論 授課老師:李春雄 博士
C H A P T E R 11 体系结构对操作系统的支持.
计算机应用基础 第二章 操作系统基础 2018/11/16.
PDA的紹介及比較 (個人數位助理) 1. 什麼是PDA? 2. PDA的發展 3. PDA的功能 4. PDA的架構
第七章 生產管理 第一節 生產管理基本概念 第二節 生產計畫 第三節 途程計畫 第四節 生產排程 第五節 計畫評核術及要徑法 第六節 工作分派與跟催 第七節 生產管制 工業工程與管理 第二版.
Applied Operating System Concepts
第4章 作業系統的介紹及操作.
專題製作實務歷程分享 三信家商-觀光事業科 喻天福、吳秋慧.
第二章 行程管理 朱肇明 資管系 講師 大華技術學院.
作 業 系 統 第三組 楊育翰 顏瑞霖.
第三章 处理机调度与死锁 3.1 处理机调度的层次和调度算法的目标 3.2 作业与作业调度 3.3 进程调度 3.4 实时调度
讲师:田家华 第1章 认识计算机 本章要点   计算机的发展 计算机的组成.
Operating System Concepts 作業系統原理 CHAPTER 2 系統結構 (System Structures)
Chapter 3 行程觀念 (Process Concept)
第5章 智能信息设备.
主題九 認識作業系統.
作業系統 家庭和小型企業網路– 第二章.
Chapter 4 多執行緒 (Multi Thread)
1-1-1作業系統的功能 提供使用者操作介面 提供程式執行環境 控制輸入\輸出程序 分配系統資源 管理與維護磁碟中的檔案
和諧社區資訊服務推廣計畫 -軟體雲端社區 資訊研習營
作業系統 (Operating System)
第三章 用户接口与作业管理 用户与操作系统的接口 批处理操作系统的作业管理 作业的基本概念:作业、作业步、作业流 交互式系统作业管理
嵌入式系統 資工系 魏 凱 城.
Operating System Principles 作業系統原理
第3章 認識處理元.
01.Java语言概述 讲师:复凡.
作業系統 第三章 作業系統結構.
Operation System(OS).
RTOS.
中国科学技术大学计算机系 陈香兰 Fall 2013 第三讲 线程 中国科学技术大学计算机系 陈香兰 Fall 2013.
靜宜大學專用 PowerPoint 檔案 數位教材
Chap2 Stack & Queue.
嵌入式系統 資工系 魏 凱 城.
小学5.
導 論 教學投影片.
李元金 计算机与信息工程学院 第 14 讲 存储器管理(3) 李元金 计算机与信息工程学院 1/
实验三 键盘软加锁实验 2019/5/9.
第5章 智能信息设备.
第一章 操作系统引论 1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能
李元金 计算机与信息工程学院 第7讲 处理机调度与死锁(1) 李元金 计算机与信息工程学院 1/
进程调度算法和作业调度算法。 (1) 先来先服务(FCFS)调度算法
PURSUING EXCELLENCE / TOWARD SUCCESS WUCHANG UNIVERSITY OF TECHNOLOGY
Nachos Project Assignment 2
Presentation transcript:

第8章作業系統

本堂課重點 8-1 何謂作業系統 8-2 作業系統的演進 8-3 行程管理 8-4 常見的作業系統

8- 1 何謂作業系統 8-1-1 電腦的軟硬體組成 8-1-2 作業系統的功能 8-1-3 提供使用者介面 8-1-4 管理系統資源 8-1-5 提供程式執行的環境及系統呼叫服務

8-1-1 電腦的軟硬體組成 當我們新購買了一部電腦, 或自行組裝好電腦硬體後, 首先要安裝的就是作業系統, 裝完作業系統之後, 才可以接著安裝文書處理軟體、影像處理軟體、遊戲…等各種應用軟體。

8-1-2 作業系統的功能 提供使用者介面。 管理系統資源。 提供程式執行的環境及系統呼叫服務。

8-1-3 提供使用者介面 使用者介面依使用者在操作時, 主要是以滑鼠或鍵盤操作的不同, 可分為 命令列介面 (CLI, Command-Line Interface) 圖形使用者介面 (GUI, Graphical User Interface)

8-1-3 提供使用者介面 命令列介面 以文字模式呈現, 需由鍵盤輸入指令, 方能執行所需要的 功能。

8-1-3 提供使用者介面 圖形使用者介面 以視窗圖形模式呈現操作介面及各種電腦資源, 讓使用者透過滑鼠點選圖示、視窗、功能表、工作列…來指揮電腦工作。

8-1-4 管理系統資源 系統資源包含了以下幾種: 行程管理:是指目前正在執行的程式。 記憶體管理:當程式要被執行時, 需要先被載入到記憶體才行, 作業系統即負責了記憶體的管理 檔案系統管理:檔案是電腦儲存資訊的單位。 輸入/ 輸出設備管理:由於輸入/ 輸出 (I/O, Input/Output) 設備的種類繁多, 包含滑鼠、鍵盤、螢幕、印表機…等, 因此作業系統需要有能力控制這些設備, 讓使用者、應用軟體能方便的使用。

8-1-5 提供程式執行的環境及系統呼叫服務 作業系統提供了應用軟體的執行環境, 及使用各種資源 (如檔案、網路、I/O……) 時所需的各種系統呼叫 (System Call) 服務函式。如此一來, 程式設計師在撰寫程式時, 就不用辛苦地處理低階的工作, 只要呼叫這些『系統呼叫服務函式』即可。

8-2 作業系統的演進 8-2-1 真空管電腦時代 8-2-2 批次系統 8-2-3 多元程式系統 8-2-4 分時系統 8-2-5 個人電腦系統 8-2-6 多處理器系統 8-2-7 分散式系統 8-2-8 叢集系統 8-2-9 即時系統 8-2-10 手持式系統

8-2-1 真空管電腦時代 1940年代中期, 真空管 電腦問市, 當時需要 一個大房間才能容納。

8-2-2 批次系統 1950年代中期, 為了讓電腦 運作更有效率, 會將同類型 程式集中, 只需載入一次 編譯/連結/載入器, 即可 整批輸入電腦執行

8-2-3 多元程式系統 發展背景 相較於 CPU, I/O 設備的執行效率還是很慢, 在批次系統中, 雖然程式可以一個接一個地執行, 但只要某份工作正在等待 I/O 設備 (例如讀取或儲存資料),CPU 就會為了要等待其執行完成, 而處於閒置狀態。為了改善此一情況, 於是發展出多元程式 (Multi-programming) 系統。

8-2-3 多元程式系統 優點 相較於批次系統的工作是一個接著一個執行,在多元程式系統中, 作業系統會先在記憶體載入多個工作。 因此, 就不用為了要等待某些I/O 動作完成, 使 CPU 處於閒置狀態, 因而能有效地發揮電腦效率。

8-2-3 多元程式系統 主要功能 在多元程式系統中, 當同時有多個工作準備好要被載入記憶體時, 由於記憶體空間有限, 作業系統必須選擇要將哪一個工作載入到記憶體中。 這個選擇的功能即稱為工作排程 (Job Scheduling), 而作業系統中負責這項功能的稱為排程程式 (Scheduler)。

8-2-4 分時系統 在多人同時使用的系統中, 多元系統是沒辦法與使用者產生迅速的互動。於是發展出了分時 (Time-sharing) 系統 (或稱為多工系統)。 在分時系統中, 系統會將各種資源 (主要是 CPU) 的執行時間分成很多小片段, 稱為時間配額 (Time Quantum) 或時間片段 (Time Slice), 然後分配給執行的工作。

8-2-5 個人電腦系統 發展背景 早期的電腦大都屬於多人共同使用的大型主機, 例如 Unix。隨著電腦硬體技術的提升, 價格日益低廉, 於是發展出只供單人使用的個人電腦系統, 例如 DOS 、Windows 95/98/Me/XP/Vista 及 MacOS。 主要功能 個人電腦系統主要是為了供個人使用, 因此相較而言, 其較強調操作介面的友善度, 讓使用者可以更方便地使用。

8-2-6 多處理器系統 發展背景 有些電腦為了有更好的執行能力, 會採用支援多 CPU 的主機板, 並同時插上 2 顆以上的 CPU。此時即需搭配支援多顆 CPU 的多處理器系統 (Multiprocessor System)。 主要功能 多處理器系統會充分利用每個 CPU 的運算能力, 將程式指派給不同的 CPU同時執行, 以加快程式的執行速度。

8-2-6 多處理器系統 優點 提高產能:由於同時間有多個 CPU 可執行程式, 因此能減少每個程式的執行時間。 提高可靠度:由於有多個 CPU, 若電腦在運作時, 有其中一個 CPU 故障, 其他 CPU 仍可繼續工作, 雖然效能會降低, 但可確保系統持續運作, 而提升其可靠度。

8-2-7 分散式系統 發展背景 前面所提到的幾個作業系統特性, 都是由單一電腦來完成要執行的工作。但隨著工作量需求的日益提升, 單一電腦能提供的效能已無法滿足需求;再加上這幾年網路的快速發展, 於是開始發展出分散式系統 (Distributed System)。在分散式系統中, 是將網路上的多台電腦相串連, 以單一電腦的形式提供服務。

8-2-7 分散式系統 主要功能 在分散式系統中, 同一個工作會被拆成幾個部分, 分配給不同的電腦同時運算, 以提升整體的執行效率。

8-2-8 叢集系統 叢集系統 (Clustered System) 也是透過網路將多台電腦串連在一起。但目前叢集系統尚未有統一的定義, 以下分別介紹 2 種主要的類型。 高可用性叢集 『高可用性 (HA, High Availability)』叢集的目的就在於提高服務的可用性, 減少停擺的機率, 終極的目標為 100%可用性, 也就是提供一年 365 天、一天 24 小時的服務, 讓使用者可以隨時連線, 完全不會發生服務中斷的情形。

8-2-8 叢集系統

8-2-8 叢集系統 負載平衡叢集 『伺服器端負載平衡叢集系統』架構可將使用者需求分配到多台電腦執行,因此能有效地達到負載平衡的目的。

8-2-9 即時系統 即時系統 (Real-Time System) 設計的目的是:指定的工作不僅要正確完成, 而且還需要在指定的時間前完成。

8-2-9 即時系統 即時系統分成硬即時系統及軟即時系統兩種 硬即時系統 (Hard Real-Time System) 保證所執行的工作一定會在指定的時間內完成。 軟即時系統 (Soft Real-Time System) 所執行的工作只是有更高的執行優先權, 但並不保證能在期限內完成。

8-2-10 手持式系統 手持式系統是近幾年來頗受注目的發展, 包含了 PDA (Personal Digital Assistant, 個人數位助理)、行動電話等。

8-3 行程管理 8-3-1 何謂行程 8-3-2 行程的狀態 8-3-3 先到先做排程 8-3-4 最短工作先做排程 8-3-5 優先權排程 8-3-6 循環分配排程

8-3-1 何謂行程 行程與程式主要有以下 3 點的差異: 程式是儲存在儲存媒體上, 如硬碟機、光碟片、軟碟片、隨身碟……;行程則由於正在執行中, 因此是在記憶體內。 程式是靜態的, 是一組可被執行的固定程式碼;行程則是動態的, 除了程式碼外, 還包含以下會變動的資料:

8-3-1 何謂行程 程式是一直存在的, 如果沒有被刪除, 會一直存在磁碟中;而行程則是暫時的, 當行程執行結束, 行程就不在了。 程式記數器 暫存器 (Register) 行程堆疊 (Process Stack) 資料區段 (Data Section) 程式是一直存在的, 如果沒有被刪除, 會一直存在磁碟中;而行程則是暫時的, 當行程執行結束, 行程就不在了。

8-3-2 行程的狀態 一個行程在執行的過程中, 會處於以下 5 種狀態: 新建 (New) :行程正在產生中。這是每個 行程初始的狀態。 就緒 (Ready) :行程已經準備好被執行。 執行 (Running) :CPU 正在執行此行程。 等待 (Waiting) :行程在等待某個事件 (Event) 或 I/O 動作完成。 結束 (Terminated) :行程已經完成。

8-3-2 行程的狀態

8-3-3 先到先做排程 先到先做 (FCFS, First-Come First-Served) 排程是一個最簡單的演算法,它挑選行程的方式, 就是依照其要求使用 CPU 的先後順序, 先提出要求的行程會先被執行, 而不考慮其他的條件

8-3-3 先到先做排程 以下 3 個處於就緒狀態的行程, 其所需的 CPU 執行時間分別如下:

8-3-3 先到先做排程 若進入就緒狀態的先後順序分別為 P1、P2、P3 (但幾乎同時到達)。此時, 我們以甘特圖 (Gantt Chart) 來表示執行這 3 個行程所需要的時間:

8-3-3 先到先做排程 如果這 3 個行程進入就緒狀態的先後順序改為 P3、P2 、P1, 則其甘特圖將變成如下:

8-3-4 最短工作先做排程 當挑選行程時, 最短工作先做 (SJF, Shortest Job First) 排程會從目前處於就緒狀態的行程中, 挑選所需 CPU 執行時間最短的行程來執行, 而不管其提出要求的先後順序。

8-3-4 最短工作先做排程 由於其所需時間由短至長, 分別為 P2 、P3、P1, 因此其甘特圖將如下所示:

8-3-5 優先權排程 在優先權 (Priority) 排程中, 每個行程都會有一個優先權, 排程程式會依照每個行程優先權的高低, 來依序執行。

8-3-5 優先權排程 這 3 個行程的優先權由高至低, 分別為 P3、P2、P1, 因此其甘特圖將如下所示:

8-3-6 循環分配排程 循環分配 (RR, Round Robin) 排程主要是針對分時系統而設計的。排程程式會設定一個時間配額, 然後依 『先到先做 (FCFS, First-Come First-Served) 』的順序輪流執行就緒狀態中的每個行程。

8-3-6 循環分配排程 若時間配額為 4 毫秒, 且成為就緒狀態的先後順序為 P1、P2 、P3 (但幾乎同時到達), 則其甘特圖如下:

8-4 常見的作業系統 8-4-1 DOS 8-4-2 Windows 95/98/Me/XP/Vista 8-4-3 Windows NT/2000/Server 2003/2008 8-4-4 Unix/Linux/FreeBSD 8-4-5 Mac OS 8-4-6 Palm OS/Windows Mobile

8-4-1 DOS DOS (Disk Operating System) 是早期 x86 (286、386...) 個人電腦常安裝的作業系統。它只有命令列介面, 使用者必須記住命令名稱, 才能下達操作命令。

8-4-2 Windows 95/98/Me/XP/Vista

8-4-3 Windows NT/2000/Server 2003/2008

8-4-4 Unix/Linux/FreeBSD

8-4-5 Mac OS

8-4-6 Palm OS/Windows Mobile 目前 PDA 所使用的作業系統, 早期佔有率最高的是 Palm OS, 而現今主流則是 Windows Mobile。 Palm OS Windows Mobile