BGSU Logo
BGSU Home BGSU Academics BGSU Admissions The Arts BGSU Athletics Libraries Offices
Department of Computer Science
Computer Science Home Undergraduate Program Graduate Program Computer Science Faculty Academic Advising Mission and Vision
Small font Medium font Larger font Largest font
Left Bracket CS 5080: Operating Systems Right Bracket

Course Description

Structure of operating systems. Physical input-output, buffering, interrupt processing. Memory, processor, device, information management; resource management interdependencies. Job and processor scheduling. Concurrent programming. Prerequisites: Admission to MS in CS program, or consent of department, plus CS 3270 or equivalent.

Course Syllabus

  1. Memory Management
    1. Allocation Algorithms (first fit, best fit, worst fit)
  2. Virtual Memory
    1. Paging
    2. Segmentation
    3. Paged Segmentation
    4. Demand Paging
    5. Page Replacement Algorithms
    6. Working Sets
  3. Processor Management
    1. Process Concepts
    2. Multiprogramming and Multiprocessing
    3. Scheduling Algorithms
      1. Non-preemptive Scheduling
      2. Preemptive Scheduling
  4. Concurrent Processes
    1. Disjoint Processes
    2. Mutual Exclusion
      1. Critical Section Problem
    3. Process Cooperation
      1. Semaphores and their implementation
      2. Interprocess Communication
    4. Monitors and Concurrent Languages
  5. Deadlock
    1. The Deadlock Problem
    2. Necessary Conditions for Deadlock
    3. Deadlock Handling Methods
      1. Deadlock Prevention
      2. Deadlock Avoidance
      3. Deadlock Detection with Resource Graph
  6. Operating System Structure
    1. Components
    2. Protection
    3. Supervisor Calls
    4. Polling, Interrupts, DMA
  7. File Systems
    1. Organization
    2. Allocation
    3. Free Space Management
    4. Disk Scheduling

webmaster@cs.bgsu.edu