CSC 501 (002) Fall 2017 Operating Systems Principles Course

CSC 501 (002) Fall 2017 Operating Systems Principles Course description: This course will describe the principles of designing operating systems. Topics include multithreading, synchronization, scheduling, virtual memory, and distributed systems including clusters. This course will be based on textbook & paper readings, paper discussions, projects, a midterm exam, a final exam and in-class participations. The purpose of this course is to teach computer software system structures from a design point of view. We will look at different structuring techniques, and we will examine their usage in both important historical systems and in modern systems. In addition to learning about different system structures and different operating systems, you will learn: 1. How to read a research paper in an objective manner. 2. How to articulate your understanding of and insights into a research paper. 3. How to synthesize research themes and topics across multiple papers. 4. How to apply paper ideas into real systems. Instructor: Hung-Wei Tseng Office hours: Monday Wednesdays 2p-3p @ EB2 3254 E-mail: [email protected] Textbook: Operating Systems: Three Easy Pieces Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau Arpaci-Dusseau Books March, 2015 (Version 0.90) (free online textbook at http://pages.cs.wisc.edu/~remzi/OSTEP/) Grading: 20% midterm 30% final (The final will be cumulative.) 30% projects 10% class participation (We will be using clickers in the class!) 10% reading quizzes The final grading will be based on relative ranking of students in the class instead of absolute scale of grades Lecture schedule: Date Topic Reading 08/17/2017 Intro/Logistics 08/22/2017 The Structure of Operating Systems Arpaci-Dusseau Chapter 2, 4, 5 08/24/2017 The Structure of Operating Systems The Structure of the 'THE'-Multiprogramming System HYDRA: The Kernel of a Multiprocessor Operating System Project Date Topic Reading 08/29/2017 The Structure of Operating Systems The UNIX Time-Sharing System Mach: A New Kernel Foundation For UNIX Development 08/31/2017 Processes & Scheduling Arpaci-Dusseau Chapter 6, 7, 8 09/05/2017 Processes & Scheduling Lottery Scheduling: Flexible Proportional-Share Resource Management. Resource containers: A new facility for resource management in server systems 09/07/2017 Virtual memory Arpaci-Dusseau Chapter 13, 14, 15, 16, 18 09/12/2017 Virtual memory Arpaci-Dusseau Chapter 20, 21, 22 09/14/2017 Virtual memory The Multics Virtual Memory: Concepts and Design WSCLOCK-A Simple and Effective Algorithm for Virtual Memory Management 09/19/2017 Virtual memory Virtual Memory Management in VAX/VMS Machine-Independent Virtual Memory Management for Paged Uniprocessor and Multiprocessor Architectures 09/21/2017 Threads Arpaci-Dusseau Chapter 26, 27, 28, 29 09/26/2017 Threads Arpaci-Dusseau Chapter 30, 31 09/28/2017 Threads Monitors: An Operating System Structuring Concept Experience with Processes and Monitors in Mesa 10/03/2017 Architecture-OS interactions TimeGraph: GPU Scheduling for Real-Time MultiTasking Environment The Performance of µ-Kernel-Based Systems 10/10/2017 Midterm Review 10/12/2017 Midterm 10/17/2017 Architectural support for Virtual memory Arpaci-Dusseau Chapter 19 10/19/2017 Architectural support for Virtual memory A Look at Several Memory Management Units, TLB-Refill Mechanisms, and Page Table Organizations Efficient Virtual Memory for Big Memory Servers 10/24/2017 I/O Arpaci-Dusseau Chapter 36, 37, 38 and Appendix--Flash-based SSDs Project Project #1 Due — Device driver/kernel module Date Topic Reading Project 10/26/2017 I/O eNVy: a non-volatile, main memory storage system When Poll is Better than Interrupt Project #2 Due — Multithreaded support in kernel module 10/31/2017 File systems Arpaci-Dusseau Chapter 39, 40, 41 11/02/2017 File systems A Fast File System for Unix The Google File System 11/07/2017 Log-structured file system The Design and Implementation of a LogStructured File System Don't stack your log on my log 11/09/2017 Distributed systems Arpaci-Dusseau Chapter 47 The Sprite Network Operating System The Distributed V Kernel and its Performance for Diskless Workstations 11/14/2017 Networked systems Implementing Global Memory Management in a Workstation Cluster Arpaci-Dusseau Chapter 48 11/16/2017 Networked systems Web Search for a Planet: The Google Cluster Architecture Windows Azure Storage: A Highly Available Cloud Storage Service with Strong Consistency 11/21/2017 Virtual machine Arpaci-Dusseau Appendix--Virtual machines A comparison of software and hardware techniques for x86 virtualization 11/28/2017 Virtual machine Xen and the Art of Virtualization IX: A Protected Dataplane Operating System for High Throughput and Low Latency 11/30/2017 Final Review 12/12/2017 Final Exam (1pm-4pm) Project #3 Due — File system
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
Related manuals
Download PDF
advertisement