CPE 358 - Operating Systems Principles
Overview of Operating System Architecture: interfaces, flow of control. Processor Management: concurrent processes, process synchronization and communication, deadlock. Threads. Messages. Memory Management: storage hierarchies, allocation strategies, replacement algorithms. Device Management: design objectives, device drivers, interrupts, input/output devices. File Management: file system structure, file maintenance, storage allocation. A simple program to implement a device driver, etc. Principles of distributed systems, distributed operating systems, processes and threads, concurrent programming, distributed inter-process communication, distributed process scheduling, virtualization, distributed file systems, security in distributed systems, distributed middleware and applications such as the web and peer-to-peer systems.