operating system operating system
play

Operating System Operating System Concepts Concepts - PDF document

Syllabus Syllabus Operating System Operating System Concepts Concepts


  1. Syllabus Syllabus Operating System Operating System 目的: Concepts Concepts ‧ 介紹作業系統的基本概念、組成原理 ‧ 透過實習,培養學生系統程式製作的基礎 王凡 王凡 能力 ‧ 培養學生參與大型軟體製作的經驗 farn@ce.ee.ntu.edu.tw farn @ce.ee.ntu.edu.tw ‧ 培養團隊合作的能力 Dept. of Electrical Dept. of Electrical Engineering Engineering ‧ 提昇台灣學生系統程式製作能力 National Taiwan University National Taiwan University ‧ 協助建立台大作業系統教學實驗環境 感謝資工系郭大維教授慷慨借用投影片教材 感謝 SUNY-Stony Brook 的 Stoller 教授,提供 Nachos 實習資料 1 2 Syllabus Syllabus Syllabus Syllabus 對象: 對學生的課前要求: ‧對計算機資料結構的基本認識與能力 ‧ 資管系、電機系同學 ‧使用 C/C++ 語言 ‧ 對系統程式、硬體驅動程式,有興趣研究 ‧聰明、勤奮、勇於接受挑戰 的同學 ‧ 想要挑戰高難度程式製作的同學 3 4 Syllabus Syllabus Syllubas Syllubas 成績評量: ( subject to changes.) : • 授課教授 : 王凡 @ Room 435. 電機系 . • 期中考 (25%) 、 NTU.TW • 上課時間 : 9 :10-12:00, Wednesday • 期末考 (25%) 、 • 教室:管貳 202 • 作業 (20%) 、 • 教科書: Silberschatz, Galvin, and Gagne, • 學期 Nachos 計畫( 30 %) “Operating System Concept,” Sixth Edition, John Wiley & Sons, Inc., 2002. 台灣代理:新月圖書公司 台北市重慶南路一段 143 號 3 樓 02-2331-1578 、 23317856 5 6

  2. Syllabus Syllabus Syllabus Syllabus ‧學期計畫: Nachos 作業系統實習 教師與課程網址: ‧在 PC Linux 下執行 http://cc.ee.ntu.edu.tw/~farn ‧模擬 MIPS 硬體架構 ‧目前暫訂兩個部分: 教師e m a i l : – Thread management f a r n @ c c . e e . n t u . e d u . t w – Virtual memory management 7 8 Syllabus Syllabus Syllabus Syllabus 預定課程進度 預定課程進度 課程簡介 第四章、 1. 2/19 7. 4/2 第一章 第二次學期計畫報告介紹: 2. 2/26 第二章 第一階段工作說明,t h r e a d m a n a g e m e n t 3. 3/5 第二章、第三章 第五章 4. 3/12 8. 4/9 第三章 期中考 5. 3/19 9. 4/16 第四章、 第五章、第六章 6. 3/26 10. 4/23 第一次學期報告介紹: Nachos 簡介 第六章 11. 4/30 9 10 10 Syllabus Syllabus Syllabus Syllabus 預定課程進度 預定課程進度 第六章、第七章 端午節 12. 5/7 16. 6/4 繳交學期報告第一階段工作報告 第十章 17. 6/11 第七章 期末考 13. 5/14 18. 6/18 第八章 繳交學期計畫報告 14. 5/21 19. 6/25 第三次學期報告說明:第二階段工作說 明: virtual memory 第九章 13. 5/28 11 11 12 12

  3. Syllabus Syllabus Contents Contents ‧助教: 1. Introduction –陳佳蘊(資管碩士班一年級) 2. Computer-System –林仲輝(資管碩士班一年級) Structures ‧助教時間:每週一小時,時間、地點待宣布 3. Operating-System Structures 4. Processes 5. Threads 6. CPU Scheduling 7. Process Synchronization 8. Deadlocks 13 13 14 14 9. Memory Management Introduction Introduction Chapter 1. Chapter 1. • What is an Operating System? Introduction Introduction – A basis for application programs – An intermediary between users and hardware • Amazing variety – Mainframe, personal computer (PC), handheld computer, embedded computer without user view Convenient vs Efficient 15 15 16 16 Computer System Computer System User View User View Components Components • The user view of the computer varies by the interface being used! User User ................. User • Examples: – Personal Computer � Ease of use compilers, Application Programs word processors, – Mainframe or minicomputer � spreadsheets, Operating System maximization of resource utilization Browsers, etc. • Efficiency and fair share – Workstations � compromise between Hardware CPU, I/O devices, individual usability & resource memory, etc. utilization • OS – a government/environment – Handheld computer � individual provider usability 17 17 18 18 – Embedded computer without user view

  4. System View System View System Goals System Goals • Two Conflicting Goals: • A Resource Allocator – Convenience for the user! – CPU time, Memory Space, File Storage, I/O Devices, Shared Code, – Efficient operation of the computer Data Structures, and more system! • A Control Program – Safety and security • We should – Control execution of user programs – Prevent errors and misuse – recognize the influences of operating systems and computer architecture on • OS definitions – US Dept.of each other Justice against Microsoft in 1998 – and learn why’s and how ’s of OS by – The stuff shipped by vendors as an tracing their evolution and predicting OS 19 19 20 20 what they will become! – Run at all time UNIX Architecture UNIX Architecture Mainframe Systems Mainframe Systems User user user user useruser user user interface • The first used to tackle many commercial and scientific System call Shells, compilers, X, application programs, etc. interface applications! CPU scheduling, signal handling, – 0th Generation – 1940?s virtual memory, paging, swapping, – A significant amount of set-up time file system, disk drivers, caching/buffering, etc. in the running of a job – Programmer = operator Kernel interface terminal controller, terminals, to the hardware – Programmed in binary � physical memory, device controller, devices such as disks, memory, etc. assembler � (1950) high level language UNIX 21 21 22 22 Mainframe Mainframe – Batch Systems Batch Systems Mainframe Mainframe – Batch Systems Batch Systems – Spooling (Simultaneous Peripheral Operation • Batches sorted and On-Line) • loader submitted by the operator ~ Replace sequential-access devices with random-access • job sequencing device • Simple batch systems monitor • control card => Overlap the I/O of one job with the computation of – Off-line processing interpreter others ~ Replace slow input device with e.g. card � disk, CPU services, disk � printer faster units � replace card User Program readers with disks – Job Scheduling Area disks disks – Resident monitor CPU ~ Automatically transfer control card reader printer from one job to the next 23 23 24 24

  5. Mainframe Mainframe – Multiprogrammed Multiprogrammed Mainframe – Time Mainframe Time-Sharing Sharing Systems Systems Systems Systems on-line file system virtual memory sophisticated CPU scheduling • Time sharing (or • Multiprogramming increases monitor CPU job synchronization protection & security scheduling multitasking) is a CPU utilization by organizing ...... job1 logical extension of and so on jobs so that the CPU always job2 multiprogramming! has one to execute – Early disk job3 1960 – Started in 1960s and become common in – Multiporgrammed batched 1970s. systems – An interactive (or hand- – Job scheduling and CPU on) computer system scheduling disk – Multics, IBM OS/360 – Goal : efficient use of scarce 25 25 26 26 resources Desktop Systems Desktop Systems Parallel Systems Parallel Systems • Personal Computers (PC’s) • Tightly coupled: have more than one processor in close communication – Appeared in the 1970s. sharing computer bus, clock, and – Goals of operating systems keep sometimes memory and peripheral changing devices • Less-Powerful Hardware & Isolated Environment � Poor Features • Loosely coupled: otherwise – Benefited from the development of mainframe OS’s and the dropping of hardware cost – Advanced protection features • User Convenience & Responsiveness • A Tandem fault-tolerance solution 27 27 28 28 Parallel Systems Parallel Systems Parallel Systems Parallel Systems • Advantages • Symmetric multiprocessing model: each processor runs an identical copy of the – Speedup – Throughput OS – Lower cost – Economy of Scale – More reliable – Graceful Degradation � • Asymmetric multiprocessing model: a master- slave relationship Fail Soft (detection, diagnosis, correction) ~ Dynamically allocate or pre-allocate tasks ~ Commonly seen in extremely large systems ~ Hardware and software make a difference? • A Tandem fault-tolerance solution 29 29 30 30

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend