ECE 69500 - Operating Systems Design and Implementation

Course Details

Lecture Hours: 3 Credits: 3

Areas of Specialization:

Counts as:

Experimental Course Offered:

Spring 2015, Spring 2016, Spring 2017

Catalog Description:

This course covers advanced topics in modern Operating Systems, including the modern topics. It will introduce modern operating system design challenges and solutions in response to emerging hardware evolution such as many core, mobile system, and IoT, and application revolution such as mobile apps and cloud services, and advanced topics such as operating systems bugs detection, energy efficiency, and security. This course will convey useful techniques in system software construction through hands-on projects, as well as important design principles commonly seen in system software, including abstraction, modularity, policy vs mechanism, interface vs implementation, etc.

Required Text(s):

  1. Operating Systems: Principles and Practice , T. Anderson and M. Dahlin , Recursive Books , 2012 , ISBN No. 978-0985673512

Recommended Text(s):

  1. Operating System Concepts , 9th Edition , A. Silberschatz , 2012 , ISBN No. 978-1118063330
  2. Operating Systems: Design and Implementation , 2nd Edition , A. Tannenbaum, A. Woodhull , Prentice Hall , 1997 , ISBN No. 978-0003458909
  3. Operating Systems: Three Easy Pieces , Remzi H. Arpaci-Dusseau and Andrea C. Arpaci-Dusseau , 2015

Lecture Outline:

Weeks Major Topics
1 Overview: Kernel and Process
2 Kernel Designs: microkernel and exokernel
1 Operating system bugs
1 Overview: Virtual Memory
1 Virtual Machines
1 Overview: Synchronization
2 Novel Locks and OS Scalability
1 Overview: File Systems
1 File system characterization and distributed file system
1 Energy Efficiency
2 Mobile operating systems: Android and iOS
1 Modern Browsers