Boston University EC 440

Introduction to Operating Systems

Schedule: Mon/Wed 4:30PM - 6:15PM PHO 205

Course Description

Operating system concepts and design. Concurrent processes, process synchronization, and deadlocks. Resource management including virtual memory, CPU scheduling, and secondary storage. File structures, input/output.  Virtualization.  Getting involved in Linux. 4 cr.

Instructors & Assistants


Final grade will be determined according to the following weights

Lecture Slides & Recommended Books

Lecture slides are going to be posted after each lecture.  You can find them on Piazza under the Resources Tab.  There are lots of great OS textbooks and resources on line.  While no textbook is required, we recommend two for this course that you can download electronically:

  1. Andrew S. Tanenbaum and Herbert Bos, Modern Operating Systems, Prentice-Hall, 2015
  1. link:
  2. A great general easy to read introduction textbook on operating systems
  1. Andrew S. Tanenbaum and Albert S. Woodhull Operating Systems (Design and Implementation) 3rd Edition, Prentice-Hall, 2006
  1. link:
  2. This book is somewhat lower level, with real examples from Minux, a small microkernel posix compatible operating system.

Course Outline

We will be evolving this course over the term, with topics including:


If you have programming questions (not directly related to the course), TFs may explain/ refer you to the additional materials. However, please note that this class is not for beginners or those who are new to programming. You must have prior programming experience in either C or C++ as some concepts are going to be mentioned in class and required in your projects. If you have any questions, please contact any of the instructors