國立聯合大學 資訊管理學系 陳士杰老師 前置觀念 : 系統基礎概念. 國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 2 Outline On line v.s. Off line Process 硬體保護 Caching I/O Structure Deadlock.

Slides:



Advertisements
Similar presentations
LinkIt ONE開發板的簡介.
Advertisements

計算機程式語言實習課.
Foundations of Computer Science
中央广播电视大学开放教育试点课程 计算机操作系统.
CHAP 2 Computer-System Structures 计算机系统结构
Chapter 2: Computer-System Structures计算机系统结构
最新計算機概論 第3章 計算機組織.
第6章 死結(Deadlock).
性能测试培训 在组设置中可使用此模板作为演示培训材料的起始文件。 节
Hadoop 單機設定與啟動 step 1. 設定登入免密碼 step 2. 安裝java step 3. 下載安裝Hadoop
主題五 CPU Learning Lab.
題目:十六對一多工器 姓名:李國豪 學號:B
Chapter 5 迴圈.
行程管理簡介 日期 : 2018/9/21.
第7章 中斷系統.
Operating System Concepts 作業系統原理 Chapter 3 行程觀念 (Process Concept)
PIC16F1827介紹 以微控器為基礎之電路設計實務-微處理器實驗室.
第一篇 Unix/Linux 操作介面 第 1 章 Unix/Linux 系統概論 第 2 章 開始使用 Unix/Linux
第8章作業系統.
Chapter 7 死結(Deadlocks)
作 業 系 統 第三組 楊育翰 顏瑞霖.
2-3 基本數位邏輯處理※.
5 Computer Organization (計算機組織).
Operating System Concepts 作業系統原理 CHAPTER 2 系統結構 (System Structures)
Operating System Internals and Design principles
Chapter 3 行程觀念 (Process Concept)
在NS-2上模擬多個FTP連線,觀察頻寬的變化
2-1 接腳說明 2018/11/30 第2章 系統分析.
學習目標 列出Von Neumann machine的元件以及它們的功能。
Ch 9: Input/Output System 输入/输出系统
SQL Stored Procedure SQL 預存程序.
Echo Server/Client Speaker:Fang.
連結資料庫管理系統.
重點 資料結構之選定會影響演算法 選擇對的資料結構讓您上天堂 程式.
Linux CPU的排程 邱姸婕.
OSGi (Open Service Gateway Initiative)
Chap3 Linked List 鏈結串列.
Operating System Principles 作業系統原理
第3章 認識處理元.
PLC-GPPW軟體使用教學 授課教師:張祖烈
義守大學電機工程學系 陳慶瀚 第4章 VHDL Sequential語法 義守大學電機工程學系 陳慶瀚
4-15 WDT HT66F50.
第七單元 正反器 (教科書第四章) 數位系統實驗
Operation System(OS).
網路安全管理報告 緩衝區溢位攻擊 學生:吳忠祐 指導教授:梁明章.
網頁程式概論 建國科技大學資管系 饒瑞佶 2015/9 V1 2016/4 V2 2016/9 V3.
RTOS.
中国科学技术大学计算机系 陈香兰 2013Fall 第七讲 存储器管理 中国科学技术大学计算机系 陈香兰 2013Fall.
计算机系统结构(2012年春) ----存储层次: Cache基本概念
緩衝區溢位攻擊 學生:A 羅以豪 教授:梁明章
資訊傳播工程學系 蔡奇偉 副教授 專業英文導讀 課程說明 資訊傳播工程學系 蔡奇偉 副教授
Process Description And Control
MicroSim pspice.
CHAPTER 6 Concurrency:deadlock And Starvation
MiRanda Java Interface v1.0的使用方法
黃影雯副教授講授 E_Mail Address:
Chapter 15 檔案存取 LabVIEW中的檔案存取函數也可將程式中的資料儲存成Excel或Word檔。只要將欲存取的檔案路徑位址透過LabVIEW中的路徑元件告訴檔案存取函數後,LabVIEW便可將資料存成Excel或Word檔;當然也可以將Excel或Word檔的資料讀入LabVIEW的程式中。
一、簡介 電腦硬體設計:純硬體電路(hardware)及韌體電 路(firmware)兩種方式。
第一章 操作系统引论 1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能
Cloud Operating System - Unit 03: 雲端平台建構實驗
資料表示方法 資料儲存單位.
MultiThread Introduction
多站台網路預約系統之 AJAX即時資料更新機制
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
Chapter 4 Multi-Threads (多執行緒).
快取映射 之直接對映 計算整理.
Develop and Build Drives by Visual C++ IDE
JUDGE GIRL 使用介紹 & 常見問題 TAs :
ABAP Basic Concept (2) 運算子 控制式與迴圈 Subroutines Event Block
中正大學,資工系,作業系統實驗室 陽春副教授 羅習五
Presentation transcript:

國立聯合大學 資訊管理學系 陳士杰老師 前置觀念 : 系統基礎概念

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 2 Outline On line v.s. Off line Process 硬體保護 Caching I/O Structure Deadlock

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 3 von Neumann model von Neumann model The data and program are stored as binary patterns in memory CPU

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 4 ■ On line v.s. Off-line CPU P1P1 Hard Disk Printer On-line Main Memory ①資料 1 ②資料 1 ②執行 資料 1 ③資料 2 ①結果 1 ②結果 1 ③執行 其它工作 或 ③結果 2 I/O Device

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 5 正在執行中的程式 Def: 正在執行中的程式 (A program in execution) 。 Process 主要包含有:  Code Section ( 程式碼、程式區間 )  Data Section ( 資料區間 )  Program Counter ( 程式計數器 )  CPU Register 如 : 通用暫存器、基底 ( 限制 ) 暫存器 … 。  Stack 相互 Call 來 Call 去從事遞迴工作存放返回 位址 ∵多個 Process 之間會相互 Call 來 Call 去及從事遞迴工作,用以存放返回 位址。 檔案 (File) 程式未執行時,只是一個存放在電腦硬碟中的檔案 (File) 。 Process( 行程 ) 存放於 Memory Space

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 6 Process 與 Program 的不同 ProcessProgram 主動 (Active) 被動 (Passive) 帶有 Program Counter ,用以指出 下一個指令所在 儲存於次儲存體 (e.g., Disk) 中的檔 案

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 7 行程狀態圖 (Process State Transition Diagram) 描述 Process 由 開始到結束的生命週期 (Life-Cycle) Process 在執行時會改變其狀態。而 Process STD 則是用以描述 Process 由 開始到結束的生命週期 (Life-Cycle) ,而一個 Process 在此週期中會經 歷數種狀態。 Initial 在 Initial 時,稱 Program 為 Job (J 1, J 2, J 3 ) Job Queue Ready 在 Ready 時,稱 Program 為 Process (P 1, P 2, P 3 ) Ready Queue ① Running ② Terminate ③ Abort ④ ⑤ Block (Wait) ⑥ 此時不會和其它 Process 搶 CPU 或其它 資源。 Process 此時還在 Mem. 中,但不在 Ready Queue ,所以不是 CPU 配置資源的對象, 即 Sleep in Mem. 。 ⑦

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 8 觸發此狀態圖每一個狀態轉換之行為如下: 引入 ( 或產生 ) 一個新的 Program 到電腦  要引入 ( 或產生 ) 一個新的 Program 到電腦去執行 從記憶體中挑選出一個 Process 到 CPU  要從記憶體中挑選出一個 Process 到 CPU 去執行 做完其工作  一個 Process 做完其工作時,就正常結束 發生不正常結果  一個 Process 發生不正常結果時,就中止 除零 除零 溢位 溢位 短暫中止  發生短暫中止時,會直接回到 Ready 狀態 被高優先權 Process 插隊 被高優先權 Process 插隊 中斷發生 中斷發生 CPU Time Slice Expires CPU Time Slice Expires 較長時間中止  發生較長時間中止時,會將 Process Block 住 Wait for I/O complete Wait for I/O complete Wait for resource available Wait for resource available CPUData 都在 Mem. 此 STD 是控管 CPU 這項資源,且 Data 都在 Mem. 中。

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 9 Initial Ready Running Terminate Abort Block (Wait) Suspended Block (Disk) ① ② 將 Process 移到 Disk 中,即 Swap Out 的 動作。 Suspended Ready (Disk) 此時資料還 在 Disk 中。 ③ Swap In 的動作。

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 10 觸發此狀態圖每一個狀態轉換之行為如下: 待在 Mem. 的時間太長 搶 Mem. 這項資源  當 Process 待在 Mem. 的時間太長 ( 被 Block 太久 ) ,或有其它高優先 權的 Process 來搶 Mem. 這項資源。  所等待的 Long-Time Event 發生,或是花費長時間的事情做完了 (e.g., Long-Time I/O complete) 。  將 Process 從 Disk 中引入 Mem. 中的 Ready Queue 。 Mem.Data 都在 Disk 此 STD 是控管 Mem. 這項資源,且 Data 都在 Disk 中。

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 11 硬體保護 (Hardware Protection) 基礎設施 ( 前題 ) :  雙模式運作 (Dual-Mode Operation)  特權指令 (Privileged Instruction)

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 12 實施 Protection 的前題 Dual-Mode 運作 系統必須提供 Dual-Mode 運作。 會引起系統危害的指令特權指令 (Privileged Instruction) 必須將會引起系統危害的指令,設定為特權指令 (Privileged Instruction) 。

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 13 雙模式運作 (Dual-Mode Operation) 系統運作的狀態可分為兩種:  Monitor Mode ( 監督模式 ) O.S. 的 System Process 可以執行的狀態 O.S. 的 System Process 可以執行的狀態。在此模式下, O.S. 掌控對系 統的控制權 Supervisor ModeSystem Mode 又稱 Supervisor Mode 或 System Mode 有權利執行特權指令 (Privileged Instruction) 在此 Mode 下,才有權利執行特權指令 (Privileged Instruction)  User Mode ( 使用者模式 ) User Program 可執行時的 系統狀態 User Program 在此模式下允許被執行,即 User Program 可執行時的 系統狀態 Illegal Instruction Error 錯誤中斷 (Trap) 在此模式下,不能執行特權指令,否則會引起 “ Illegal Instruction Error ” ,產生錯誤中斷 (Trap) , O.S. 會強迫 Process 中止

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 14 硬體對 Dual-Mode 製作的支援 模式位元 (Mode Bit) Dual-Mode 需要硬體的額外支援,即提供一個模式位元 (Mode Bit) 用以區分此兩種模式,通常  0: 表示 Monitor Mode  1: 表示 User Mode

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 15 Dual-Mode 的目的 保護作業系統不受錯誤的 User Program 之破壞,即防止 User Program 執行特權指令,造成可能的危害。

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 16 特權指令的種類 I/O 指令 與記憶體管理有關的暫存器之修改指令 與 Timer 設定有關的指令 Enable/Disable 指令 系統停止 (Halt) 指令 從使用者模式改變到監督模式的指令

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 17 硬體保護 (I/O Protection) 直接使用 Hardware Device 防止 User Program 在執行時,直接使用 Hardware Device 。 透過 O.S. User Program 必須透過 O.S. 提出 Hardware Request ,再由 O.S. 控制 Hardware 運作,並將 Hardware Result 告知 User Program 。 執行流程:  發出 Hardware Request ,即 System Call ,以轉換 Modes  執行相對應的硬體服務  回傳結果給 O.S.  O.S. 再將結果回傳給 User Program

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 18 User Program O.S. 相對應的 I/O Service Routines User Mode Monitor Mode    

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 19 快取 (Caching) 最近 ( 可能是 馬上 ) 就會被再存取 快取 (Caching) 的觀念是:利用快速的記憶體來保存最近 ( 可能是 馬上 ) 就會被再存取的資料。 Caching 和 Cache Memory 不同, Caching 是動名詞,為一種處理 機制; Cache Memory 只是 Caching 的一個例子。 在硬體系統中,快取記憶體 (Cache Memory) 分為兩種:  內建在 CPU  內建在 CPU 中的 L1 快取  在 CPU 之外  在 CPU 之外,稱為 L2 快取 先從 L1 快取尋 找再從 L2 記憶體尋找最後才到主記憶體裡 (RAM) 尋找 L1 快取比 L2 快取記憶體快,所以 CPU 找尋資料時,會先從 L1 快取尋 找,找不到再從 L2 記憶體尋找,最後才到主記憶體裡 (RAM) 尋找。 所以快取記憶體愈大,電腦執行效率就愈大。

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 20 節省資料收尋的時間 資料命中率 (Cache hit rate) 有多少次數能準 確找出資料 L1 、 L2 快取的設計是用來節省資料收尋的時間。然而,快 取容量加倍,並不代表速度會加倍,是跟資料命中率 (Cache hit rate) 有很大的關係,也就是有多少次數能準 確找出資料。 快取記憶體的容量 由於快取記憶體的容量有限制,所以快取記憶體的管理是 必要

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 21 I/O 結構 (I/O Structure) I/O 結構 (I/O Structure) 是討論當 User Process 發出 I/O Request 後,控制權多久會交 還給 User Process? User Process 可不可以繼續往下執行 ?  即: User Process 可不可以繼續往下執行 ? 有兩種架構 :  Synchronous I/O structure ( 同步 I/O 架構 )  Asynchronous I/O structure ( 非同步 I/O 架構 )

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 22 同步 I/O 結構 (Synchronous I/O Structure) 當 I/O 完成運作後 是當 I/O 完成運作後才會將控制權 交還給 User Process 。 只有一個 I/O 請求產生  優點:在一段時間內只有一個 I/O 請求產生。 ∴當 I/O Complete 中斷 產生時, O.S. 即知是由何種 Device 發出。 並行的 I/O 處理  缺點:不允許並行的 I/O 處理。

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 23 非同步 I/O 結構 (Asynchronous I/O structure) 立刻將控制權交還給 User Process 立刻將控制權交還給 User Process , 不需空等 I/O 運作完成。 在一段時間內可有多個 I/O Request 同時發生。 “Device Status Table” 各種 Device 的位址 使用狀況位於某 Device 的 I/O 請 求之執行狀況 O.S. 必須有一個 “Device Status Table” 以記錄各種 Device 的位址、 使用狀況和位於某 Device 的 I/O 請 求之執行狀況。

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 24 裝置狀態表 (Device-Status Table) 裝置:讀卡機一號 狀態:閒置 裝置:印表機三號 狀態:忙碌 裝置:磁碟一號 狀態:閒置 裝置:磁碟二號 狀態:閒置 裝置:磁碟三號 狀態:忙碌 印表機要求 位址: 長度: 1372 磁碟三號要求 檔案: xxx 指令:讀取 位址: 長度: 磁碟三號要求 檔案: yyy 指令:寫入 位址: 長度: 500

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 25 The Deadlock Problem ( 死結問題 ) The Deadlock Problem ( 死結問題 ) 自已掌握住自已所 握有的資源不放又向該群體中的其它行程要求資源的狀況 指的是一群體中被堵塞住的所有行程,這些行程自已掌握住自已所 握有的資源不放,同時又向該群體中的其它行程要求資源的狀況。 Example  假設一個系統中有兩個資源 R 1 與 R 2 ,而且該系統產生出兩個行程 P 1 與 P 2  R 1 已配置給 P 2 , R 2 已配置給 P 1 ,但這兩個行程在執行過程中又向對 方要求對方正在使用中的資源,因此造成系統打結。 P1P1 P2P2 R1R1 R2R2 : Process : Resource : Acquire : Hold

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 26 Deadlock Characterization ( 死結的特性 ) 當以下四個條件同時成立時,死結就會發生了:  Mutual exclusion ( 互斥 ): 不可共用的型 式一次只能有一個行程使用它 在系統中所提供的資源中,至少有一個資源必須是不可共用的型 式,也就是該資源一次只能有一個行程使用它。 等到該資源被釋放 若其它行程想要使用該資源,則必須等到該資源被釋放才能夠去 用它。  Hold and wait ( 佔用與等候 ): 已佔用至少一個資源正等候其他行程已佔用另外 資源之行程 必須存在一個已佔用至少一個資源且正等候其他行程已佔用另外 資源之行程。 等候狀態 也就是當某個行程已經取得某項系統資源,而且正在要求其它系 統資源的使用權,但該系統資源正被其它的行程所使用,此時該 行程就必須要進入等候狀態。

國立聯合大學 資訊管理學系 資料庫系統課程 ( 陳士杰 ) 27  No preemption ( 不可搶先 ): 只能在佔用它的行程在完成工作之後,才會被釋 放 系統所提供的資源只能在佔用它的行程在完成工作之後,才會被釋 放給其它行程使用。  Circular wait ( 循環式等候 ): 等候行程的集合 {P 0, P 1, ……, P n } 必須存在一等候行程的集合 {P 0, P 1, ……, P n } ,其中 P 0 等候的資 源已被 P 1 佔用, P 1 所等候的資源已被 P 2 佔用, …. , P n-1 所等候的資源 已被 P n 佔用,而 P n 所待候的資源已被 P 0 佔用。