Introduction to Operating Systems

CS 8803: Georgia Tech OMSCS Course Information




Introduction to Operating Systems is a graduate-level introductory course in operating systems. This course teaches the basic operating system abstractions, mechanisms, and their implementations. The core of the course focuses on OS support for concurrency (threads) and synchronization, resource management (CPU, memory, I/O), and distributed services. The practical component of the course teaches multithread programming, inter-process communication, and distributed interactions via RPC.


To undertake this course, you should have taken an undergraduate level course on, or be otherwise familiar with, basic hardware and software aspects of computer systems organization. Prior programming experience with C is recommended, as C is required for the practical component of this course. Also, any experience using command line interfaces in Linux will be useful when creating and building projects for this course.


  • Students are expected to abide by the Georgia Tech Honor Code and academic policies as specified in the Georgia Tech Catalog
    • Honest and ethical behavior is expected at all times
    • All incidents of suspected dishonesty will be reported to and handled by the Office of Student Affairs
    • You are to complete all assignments yourself, unless the assignment instructions explicitly state otherwise
    • You may discuss the assignments with your classmates, but you may not copy any solution (or part of a solution) from a classmate
  • Readings should be completed before the lesson for which they are listed
  • All assignment and project policies, due dates, and submission information will be listed on T-Square
  • Any changes to these policies and other course announcements will be posted on Piazza, which you are expected to read
  • If you have any questions concerning a grade that you received in this course, first contact the teaching assistant who graded it