BCS 415: Operating Systems Internals and Design

This course will involve the study of the fundamentals of operating systems design and implementation. The concepts covered include process management, memory management, file systems, I/O system management, distributed systems, and security. Students will examine how these concepts are found in several current open-source operating systems, including Vista, UNIX and/or Linux.  Credits: 3.00


BCS 215 and BCS 230 with a grade of C or better

Course Objectives

At the completion of this course, students will:

  1. Understand the major operating system software subsystem managers and their functions.
  2. Understand the functionality of early memory management allocation schemes such as fixed partitions, dynamic partitions and relocatable dynamic partitions.
  3. Understand the functionality of more advanced memory management allocation schemes such as paged, segmented and virtual memory.
  4. Understand processes and process scheduling algorithms.
  5. Learn how deadlock is caused and how it can be avoided or recovered from.
  6. Understand process and thread synchronization.
  7. Understand the functionality of a device manager.
  8. Understand the functionality of a file manager.


  • McHoes and Flynn, Understanding Operating Systems, Sixth Edition. Course Technology Incorporated, 2011.

Farmingdale State College

Monday-Friday 8:30am-4:30pm