COMP755 Advanced Operating Systems

taught by Dr. Ken Williams

This course centers on operating systems for multi-processing environments: concurrent processes, mutual exclusion, job scheduling, memory, storage hierarchy, file systems, security, and distributed processing. Also discussed are virtual resource management strategies.

Syllabus      Class Schedule     Textbook


Overview of Operating Systems

Historical Development of Operating Systems

Overview of Computer Hardware

Brief overview of Real-Time OS

Operating System Structure

Creating Threads

Java Threads

Programming in Parallel                                            The Little Book of Semaphores by Allen B. Downey

More Concurrent Programming


Implementing User Threads



Queuing Theory

Slides on Queuing Theory

System Performance

Slides on System Performance                                  Solution to in class problem

System Performance with Queuing                          Hints for using spreadsheets

Calculating Service Time

Memory Management

Virtual Memory

More on Virtual Memory

Virtual Memory Address Translation

Virtual Memory Page Replacement

File Systems

File System Implementation

I/O Hardware

I/O Management

Distributed File systems

Distributed systems


OS administration

Cloud Computing


Device Drivers

Virtual Machines

Slides on Security

Secure Operating Systems

Stack Overflow

Object Security

Performance Analysis Example

Network Layers

Examples of concurrent programming

slides for class practice

Producer/Consumer using POSIX threads     Producer/Consumer using Java threads

Sun Documentation on Java



last updated October 14, 2013