130 likes | 258 Views
Introduction to Operating Systems. J. H. Wang Sep. 15, 2011. Instructor and TA. Instructor Jenq-Haur Wang ( 王正豪 ) Assistant Professor, CSIE, NTUT Office: R1534, Technology Building E-mail: jhwang@csie.ntut.edu.tw Homepage: http://www.ntut.edu.tw/~jhwang/ Tel: ext. 4238
E N D
Introduction to Operating Systems J. H. Wang Sep. 15, 2011
Instructor and TA • Instructor • Jenq-Haur Wang (王正豪) • Assistant Professor, CSIE, NTUT • Office: R1534, Technology Building • E-mail: jhwang@csie.ntut.edu.tw • Homepage: http://www.ntut.edu.tw/~jhwang/ • Tel: ext. 4238 • Office Hour: 8:10-10:00 on Tuesdays, 10:10am-2:00pm on Wednesdays • TA • (TBD)
Course Overview • Course: Operating Systems • Time: 9:10-12:00am on Thursdays • Classroom: R1324, Technology Building • Prerequisite: Data Structures, Computer Organization • Course webpage: http://www.ntut.edu.tw/~jhwang/OS/
Target Students • For those who • May not major in CSIE during undergraduate studies, but are interested in operating systems, and • Are familiar with basic data structures, computer organization, and a high-level programming language, and • Are preparing to investigate more details in selected advanced topics and recent developments in modern operating systems
Resources • Textbook: Operating System Concepts, 8th ed., by Abraham Silberschatz, Peter Baer Galvin, and Greg Gagne, John Wiley & Sons, Inc. (International Student Edition, imported by 新月) • http://codex.cs.yale.edu/avi/os-book/ • (Both 7th edition and Java edition are also acceptable) • References: • Understanding the Linux Kernel, 3rd ed., by Daniel P. Bovet and Marco Cesati, O'Reilly, 2005 • Distributed Systems: Principles and Paradigms, 2nd ed., by Andrew S. Tanenbaum and Maarten van Steen, Prentice-Hall, 2006. • Papers from related conference proceedings or journals
Teaching • Lectures • Homework (and program) assignments • Should be turned in within two weeks • Mid-term exam • One term project: system development or paper presentation (more on this later)
Grading Policy • (Tentative) Grading policy • About 5 written exercises: 40% • (including possibly programming exercises) • Midterm exam: 30% • One final project or paper presentation: 30% • Regarding the midterm alert • ! (for all x, alerted(x) => failed(x)) • ! (for all x, !alerted(x) => !failed(x) • Conclusion: pay attention to your own potential score as early as possible!
Course Description • Introduction to basic components in operating systems • Process management and coordination • Memory management • Storage management • Advanced topics (depending on schedule) • Distributed systems • Special-purpose systems • Case studies and recent developments
Outline & Schedule • Outline • Basics (Ch. 1-2) • Introduction • System structures • Process management (Ch. 3-7) • Process concept • Multithreaded programming • Process scheduling • Synchronization • Deadlocks • Memory management (Ch. 8-9) • Memory management strategies • Virtual memory management
Outline & Schedule (Cont’) • Outline (cont’d) • Storage management (Ch. 10-13) • File system • Secondary storage structure • I/O systems • System protection and security (Ch. 14-15) • Distributed systems (Ch. 16-18) • Distributed operating systems • Distributed file systems • Distributed synchronization • Special purpose systems (Ch. 19-20) • Real-time systems • Multimedia systems • Case studies (Ch. 21-23)
Outline & Schedule (Cont’) • (Tentative) Schedule • Basics: 2-3 wks • Process management: 5-6 wks • Memory management: 3-4 wks • Storage management: 3-4 wks • Advance topics: 1-2 wks (if time permits)
More on the Term Project • Programming of selected OS components • CPU scheduling, disk scheduling, deadlock avoidance, memory page replacement algorithms, ... • Survey of recent developments in OS on various platforms • For example, mobile devices, cloud computing, … • Presentation of academic papers (conference proceedings, journals) • OS: ACM SOSP, USENIX OSDI, … • Distributed systems: ACM PODC, ICDCS, …