






















Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
A course syllabus for CS 537: Intro to Operating Systems taught by Professor Andrea Arpaci-Dusseau at the University of Wisconsin-Madison in Fall 2019. an overview of the course, learning outcomes, assessments, important links, and materials. The course covers topics such as OS virtualization, synchronization primitives, persistence, and advanced topics like virtualization, concurrency, and network and distributed file systems. The document also includes information about the professor's background and research interests.
Typology: Lecture notes
1 / 30
This page cannot be seen from the preview
Don't miss anything!
Professor Andrea Arpaci-Dusseau PhD from U.C. Berkeley – Implicit Coscheduling of Parallel Jobs Postdoc at Stanford – Taught OS course there Teach CS 537, CS 736 (Adv OS), CS 739 (Dist Systems) and CS 402 Co-Advised about 25 PhD students, mostly research in file and storage systems Co-Chair for 2018 OSDI Program Committee 2018 (w/ Remzi) - SIGOPS Mark Weiser award for "outstanding leadership, innovation, and impact in storage and computer systems research"
Lecture Material (50%) Two midterms and a final exam Closed book, multiple choice Assess OS concepts discussed in class May have homeworks as part of this Form study groups of 5 or so; meet weekly to discuss lecture content Projects (50%) Eight programming projects done on CS Linux labs Gain hands-on experience, Build your own OS system calls!
Lecture Tue and Thu, 11:00-12: Location: 1125 BioChem Conceptual content, Shows Slides, Reading matches textbook chapters Discussion 5 “smaller” sections on Wednesday … Hands-on code walk through (BYOL) Explain programming projects Led by TAs (and Peer Mentors)
Course website https://canvas.wisc.edu/courses/ Piazza https://piazza.com/wisc/fall2019/fa19compsci537001/home
Free
Abstraction: Provide standard library for resources What is a resource? Anything valuable (e.g., CPU, memory, disk) What abstraction does modern OS typically provide? CPU: process and/or thread Memory: address space Disk: files
Advantages of OS providing abstraction? Allow applications to reuse common facilities Make different devices look the same Provide higher-level or more useful functionality Challenges What are the correct abstractions? How much of hardware should be exposed?
Advantages of OS providing resource management? Protect applications at a common layer Provide efficient access to resources (cost, time, energy) Provide fair access to resources Challenges What are the correct mechanisms? What are the correct policies?