第06章软体简介课件_第1页
第06章软体简介课件_第2页
第06章软体简介课件_第3页
第06章软体简介课件_第4页
第06章软体简介课件_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、作業系統簡介1作業系統(Operating System)的目的方便的人機介面命令列介面:Command line,如DOS圖形化使用者介面:GUI (Graphic User Interface),如Windows XP,Mac OS等有效的管理資源Memory:虛擬記憶體(virtual memory)Processor:程序排程(process scheduling)Device:死結 (dead lock)Information:檔案(file)Others:載入(loader),鏈結(linker),庫存程式(library),公用程式(utility)2計算機作業方式Batch(批

2、次):將程式及資料事先準備好(一疊卡片,一個.bat檔)交給電腦一次完成。適用於周期性,時效要求低的作業。如:聯考閱卷,稅務申報等。 Real Time(即時):輸入資料後立即處理,並在一定時限內產生輸出。(Response time 時限)用於Special-Purpose電腦系統,如飛機自動導航/駕駛系統,證卷交易系統。(事關人命,金錢交易)3計算機作業方式On-Line(線上作業) Off-Line(離線作業)I/O設備與主機有實體連線,能立即作I/O處理,為Real time的必要條件。變化:分散式系統中,電腦透過網路,與系統取得連線。Time-Sharing(分時作業)Multipr

3、ogramming的一種,各程式分配一段時間輪流交替執行,為最普遍的執行方式(公平,簡單,效果不錯)Multiprogramming:電腦Memory內有2個以上互不相關的程式可同時被執行,CPU交替執行之,使得User產生電腦專屬執行某一程式的錯覺。由OS控制4計算機作業方式Multiprogramming(多工程式處理)-1970s同時(currently)執行數個程式(以軟體方式),各個程式感覺是同時執行。Multiprocessing(多元處理)-1970s同時(simultaneously)執行數個程式(以硬體方式),格個程式真正是同時執行。Multitasking(多工處理)-19

4、80s電腦Memory內有2個以上屬於同一程式的工作(task)可被同時執行。Task:執行一個特定功能的一段程序(副程式)Multithreading(多序執行)-1990s如Java5Virtual Memory虛擬記憶體優點使User的程式不受實際Memory容量的限制。Memory內部程式/資料的保護。Memory內部資訊的共享(sharing)。作法Demand Page(分頁):以Mem的使用為主,將程式/資料分成等量大小(頁),沒有fragment(碎片)。Demand Segment(分段):以程式的保護為主,根據程式性質,分成數個大小不同的區段(段),有fragment (碎

5、片)。6Virtual Memory虛擬記憶體Page Fault 代換策略FIFO (First In First Out) 先進先出,最直觀,效果差LRU (Least Recently Used)最近最久未用,合理Optimal最晚才會再用,最佳,理論上限Random:實際上使用CPUMain MemoryPage framePage framePage framePage frameHardDiskPage 1Page 2Page 3Page 4Page 5Page 6Page 7Page 8Page 9Page 10某段程式或一段資料例:CPU需要順序(頁參考順序):1,3,6,9,

6、10,4,7Page 1Page 3Page 6Page 9? Page Fault7Page Fault 代換策略實作FIFO(先進先出)頁參考順序:0,1,2,3,4,2,1,5,6,7,2,3,7,4,5,6,0Page frame=3參考順序01234215672374560PF 0PF 1PF2Page Fault000033335552222551111444466633336222221117777444共發生 page fault ()= 次341567234560158自我練習FIFO(先進先出)頁參考順序:1,2,3,4,5,0,1,4,5,6,7,4,5,6,7,1,0P

7、age frame=4參考順序PF 0PF 1PF 2PF 3 Fault共發生 page fault ()= 次90Page Fault 代換策略實作LRU(最近最久未用) Least Recently Used頁參考順序:0,1,2,3,4,2,1,5,6,7,2,3,7,4,5,6,0Page frame=3參考順序01234215672374560PF 0PF 1PF2Page Fault0共發生 page fault ()= 次31503331117777776011144455522244412222226663335524156723456010自我練習LRU(最近最久未用) L

8、east Recently Used頁參考順序:1,2,3,4,5,0,1,4,5,6,7,4,5,6,7,1,0Page frame=4參考順序PF 0PF 1PF 2PF 3 Fault共發生 page fault ()= 次11Page Fault 代換策略實作Optimal(取代最晚才會再用的) 效果最好理論上限,但不可行頁參考順序:0,1,2,3,4,2,1,5,6,7,2,3,7,4,5,6,0Page frame=3參考順序01234215672374560PF 0PF 1PF2Page Fault0共發生 page fault ()= 次12000344444444445511

9、1111156777777622222222223333334567356012自我練習Optimal(取代最晚才會再用的)頁參考順序:1,2,3,4,5,0,1,4,5,6,7,4,5,6,7,1,0Page frame=4參考順序PF 0PF 1PF 2PF 3 Fault共發生 page fault ()= 次13Process Management (程序管理)Process (程序)一段執行中的程式碼(a program in execution)Process 的 STD (State Transition Diagram) 狀態轉換圖User1 submit Job1User2

10、submit Job2Usern submit JobnJnJ3,J2,J1Job QueueReadyPnP3,P2,P1Ready QueueRUNWAITTime out等I/O完成I/O已完成MemoryDisk:Long-term scheduler (長程排程器)Complete:Short-term scheduler (短程排程器):Medium-term scheduler (中程排程器)14Process Management (程序管理)Process Scheduler (程序排程器)的目標System Balance (系統平衡)程序大致可分為I/O bound:大多

11、數時間在做I/O,如Word。CPU bound:大多數時間在跑CPU,如TV game。Scheduler(排程器)為使CPU,I/O同時忙碌,故以I/O bound process(程序)為優先選擇。15Process Management (程序管理)Process 的排程策略Non-Preemptive(不可插隊式) FCFS (First Come First Serve):先來先做SJF (Shortest Job First):最短先做Preemptive(可插隊式) RR (Round-Robin):啄木鳥/Time-sharing,適用於一般電腦。SRTF (Shortest

12、 Remaining Time First):最短剩餘時間優先。解釋名詞:Average Turnaround Time:平均迴轉時間程序從進入ready queue後,到全部完成的平均時間。Average Waiting Time:平均等待時間程序從進入ready queue後,到全部完成的平均等待時間。16Process Scheduling 程序排程Non-Preemptive (不可插隊式)FCFS 先來先做 (First Come First Serve)Process #Burst TimeArrived Time1100243355447p4p3P2p1305710141923A

13、verage Waiting TimeAverage Turnaround Time代表process已經進入ready queue中等待,但尚未執行代表process進入CPU中開始執行=(0+(10-3)+(14-5)+(19-7)/4=7#=(10+(14-3)+(19-5)+(23-7)/4=12.75#17自我練習Non-Preemptive (不可插隊式)FCFS 先來先做 (First Come First Serve)Process #Burst TimeArrived Time1100263335457p4p3P2p1Average Waiting Time=?Average

14、 Turnaround Time=?18Process Scheduling 程序排程Non-Preemptive (不可插隊式)SJF 最短先做 (Shortest Job First)Process #Burst TimeArrived Time1100243355447p4p3P2p1305710141823Average Waiting Time=(0+(10-3)+(18-5)+(14-7)/4=6.75#Average Turnaround Time=(10+(14-3)+(23-5)+(18-7)/4=12.5#19自我練習Non-Preemptive (不可插隊式)SJF 最短

15、先做 (Shortest Job First)Process #Burst TimeArrived Time1100263335457p4p3P2p1Average Waiting Time=?Average Turnaround Time=?20Process Scheduling 程序排程Preemptive (可插隊式)SRTF 剩餘最短時間先做 (Shortest Remaining Time First)Process #Burst TimeArrived Time1100243355447p4p3P2verage Waiting Time=(16-3)+0

16、+(11-5)+0)/4=4.75#Average Turnaround Time=(23-0)+(7-3)+(16-5)+(11-7)/4=10.5#21自我練習Preemptive (可插隊式)SRTF 剩餘最短時間先做 (Shortest Remaining Time First)Process #Burst TimeArrived Time1100263335457p4p3P2p1Average Waiting Time=?Average Turnaround Time=?22Process Scheduling 程序排程Preemptive (可插隊式)RR 啄木鳥 (Round-r

17、obin)Process #Burst TimeArrived Time1100243355447p4p3P2verage Waiting Time=(12+(1+4)+(3+6+4)+(5+4)/4=9.75#Average Turnaround Time=(22+(12-3)+(23-5)+(20-7)/4=15.5#Time slice(時間間隔)=22468121822201623自我練習Preemptive (可插隊式)RR 啄木鳥 (Round-robin)Process #Burst TimeArrived Time1100263335457p4p3P2

18、p1Average Waiting Time=?Average Turnaround Time=?24Device Management (設備管理)Device (設備)分為Dedicated(專屬):如printer, tapeShared(共用):如Memory, DiskRace Condition(競賽現象)當O.S安排程式使用資源的次序不當所產生的錯誤現象。(將專屬的Device當成共用的Device使用,就會產生Race Condition)如:將一台printer當成共用Device,2個以上的程式同時要求列印時,會產生什麼狀況?解決之道:程式中加入“要求printer”及“釋

19、放”指令對專屬Device做Mutual Exclusion(互相排斥)控制25Device Management (設備管理)Process 1要求printer要求tape釋放tape釋放printerProcess 2要求tape要求printer釋放tape釋放printerP1P2printertape等等Dead lock (死結)26Dead lock (死結)Dead lock 發生之四大必要條件(缺一不可)Mutual Exclusion (互斥)Hold & Wait (持有並等待)Non-preemptive (不可強佔)Circuit Waiting (循環等待)Dead lock 的解決Prevention (預防) 釜底抽薪 破除任一必要條件,使Dead lock 不可能發生。Avoidance (避免) 步步為營 O.S分配資源時,先判斷是否導致Dead lock發生。Detection & Recovery (偵測及復原) 見機行事 Dead lock發生後,犧牲某一方釋放資源,打開

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论