Mar 28, 2024  
OHIO University Graduate Catalog 2019-20 
    
OHIO University Graduate Catalog 2019-20 [Archived Catalog]

Add to Portfolio (opens a new window)

CS 5420 - Operating Systems


In-depth coverage of computer operating systems and related computer architecture issues. Coverage of physical devices, interrupts, and communication between the computer and external hardware. Interfaces between user programs and the operating system, system calls, software interrupts, and protection issues. Context switching, process address spaces, and process scheduling. Process synchronization, interprocess communications, critical sections, and deadlock detection and recovery. Memory mapping, swapping, paging, and virtual memory.

Requisites:
Credit Hours: 3
Repeat/Retake Information: May not be retaken.
Lecture/Lab Hours: 3.0 lecture
Grades: Eligible Grades: A-F,WP,WF,WN,FN,AU,I
Learning Outcomes:
  • Students will develop the ability to design and implement a distributed program. Such designs often involve deadlock and critical section issues.
  • Students will develop the ability to design and implement a simplified UNIX command interpreter.
  • Students will develop the ability to represent Boolean expressions in SOP and POS formats.
  • Students will gain a detailed understanding of demand paging.
  • Students will gain a detailed understanding of dual-mode operation of modern hardware.
  • Students will gain a detailed understanding of frame allocation.
  • Students will gain a detailed understanding of how processes are created, managed, and destroyed under UNIX.
  • Students will gain a detailed understanding of how to interact with generic memory, disk drives, and serial devices.
  • Students will gain a detailed understanding of how to protect hardware on particular platforms such as SPARC and Intel hardware.
  • Students will gain a detailed understanding of the Unix command interpreter.
  • Students will gain a detailed understanding of the components of a process: CPU registers, memory, etc.
  • Students will gain a detailed understanding of the mechanisms for switching between modes on various kinds of hardware.
  • Students will gain a detailed understanding of the relationship between virtual memory and memory management.
  • Students will gain a detailed understanding of the three basic classes of critical section problems: bounded buffer, reader/writer, and the dining philosophers.
  • Students will gain a detailed understanding of the various mechanisms used to provide synchronization: disabling interrupts, software algorithms, semaphores, monitors.
  • Students will gain a detailed understanding of the various page replacement algorithms.
  • Students will gain a general understanding of how to protect time, memory, and devices on a general platform.
  • Students will gain a thorough understanding of the principle of virtual memory.
  • Students will gain an understanding of major computing components: CPU, bus, memory, cache, hardware controllers, serial devices.
  • Students will gain an understanding of the causes of deadlock.
  • Students will gain an understanding of the distinction between the personal computer model and the model of a real operating system: multiple users and multiple copies of a program.
  • Students will gain an understanding of the evolution of operating system software.
  • Students will gain an understanding of the fundamental pieces of a modern operating system: memory model, process model, protection model, and device abstraction.
  • Students will gain an understanding of the general problem of race conditions and the critical section.
  • Students will gain an understanding of the general solutions to deadlock: avoidance, prevention, detection.
  • Students will gain an understanding of the implications of the security features of an operating system.
  • Students will gain an understanding of the mechanisms that can be used to detect deadlock in a program.
  • Students will gain an understanding of the most fundamental concept in operating systems: the division between user-level programs and the OS code itself.
  • Students will gain an understanding of the purpose of command interpreters.
  • Students will gain an understanding of the reasons why operating systems behave the way they do based on the evolution of software over the last 50 years
  • Students will gain an understanding of why hardware protection is fundamental.



Add to Portfolio (opens a new window)