Course Websites

CS 423 - Operating Systems Design

Last offered Spring 2021

Official Description

Organization and structure of modern operating systems and concurrent programming concepts. Deadlock, virtual memory, processor scheduling, and disk systems. Performance, security, and protection. Course Information: Same as CSE 423. 3 undergraduate hours. 3 or 4 graduate hours. Prerequisite: CS 241 or ECE 391.

Related Faculty

Course Director

Text(s)

Operating Systems: Principles & Practice (2nd Edition), Thomas Anderson, Michael Dahlin, 2014

Linux Kernel Development (3rd Edition), Robert Love, 2010

Learning Goals

Be able to explain and implement kernel programming principles based on Linux Operating System (1) (2) (6)
Be able to explain basic OS components and the inter-dependencies among operating system components such as process management, memory management, file system management, I/O management, as well as get understanding of implementation of some of these basic components through machine poblems. (1) (2) (6)
Be able to explain, analyze and argue system tradeoffs based on OS design decisions (1) (3) (5)
Be able to explain and analyze the performance impact of basic operating system concepts and principles as they relate to distributed and embedded computing paradigms. (1) (3) (5)
Be able to explain, analyze, and argue about OS security issues and their impact on various OS components. (1) (3) (4) (5)

Topic List

  • Process and Thread Management including Scheduling and Synchronization in general terms and within Linux OS
  • Memory Management including Virtual Memory Management
  • File System including Performance Optimization
  • Input and Output Management including DMA, Interrupts, Memory-Mapped IO, Device Drivers, Disk Management, Timers and Power Management
  • Virtualization of Hardware, OS and Applications
  • Parallel OS including multi-core load balancing and scheduling
  • Distributed OS including distributed file systems and middleware
  • Operating System Security including mandatory access control, information flow control, authorization, encryption, and other security pittfalls and attacks
  • Special topics in operating systems including mobile and multimedia OS concepts

Assessment and Revisions

Revisions in last 6 years
No significant changes (there were no structural changes of the course, but we have updated the material based on the newest version of the same Tannenbaum textbook from 6 years ago)

Required, Elective, or Selected Elective

Selected Elective.

TitleSectionCRNTypeHoursTimesDaysLocationInstructor
Operating Systems DesignC331378ONL31400 - 1515 T R    Wade Fagen-Ulmschneider
Andrew Bumsok Yoo
Jason David Liu
Operating Systems DesignC431379ONL41400 - 1515 T R    Wade Fagen-Ulmschneider
Andrew Bumsok Yoo
Jason David Liu