CS 161: Operating Systems





This course is an introduction to operating systems. After completing this course, students should be able to:

  • Explain how operating systems provide the abstractions with which programmers and users are familiar.
  • Work effectively with a partner.
  • Design, implement, modify, and analyze complex software systems
  • Undertake different types of design projects including: implementing to a well-defined interface, designing appropriate interfaces to provide specified functionality, extending an existing body of code.
  • Explain through examples how violation of good design and coding practices lead to security problems.
  • Analyze how operating systems problems are addressed in different systems and understand why particular approaches were taken.