CS703 - Advanced Operating Systems
Q & A
Online Test
Course Category: Computer Science/Information Technology
Course Level: Graduate
Credit Hours: 3
Pre-requisites: CS201, CS604
Share this page on:
CS-703  Handouts version 1
Modern Operating System - Tanenbaum solution 2nd Edtion
Modern Operating System - Tanenbaum solution 3rd Edtion
Course Contents:
Introduction, Operating System: top-down and bottom up views, design issues, modules and components, services and system calls, structure and organization. Executable file formats, Static Linking, Dynamic linking, Loading programs into memory, Anatomy of a Process, Exceptional control flow, Context switching, Process related system calls, Threads, Concurrency and synchronization: Race conditions, Mutual exclusion and problems arising from them, Locks, semaphores and condition variables, Design of Inter-process communication mechanisms, Readers/writers and producer/consumer problems, Re-entrant code and thread-safe libraries, Deadlock, Design alternatives for highly concurrent servers (research topic). CPU scheduling: Scheduling policies and algorithms, Scheduling algorithm comparison, Real-time and multi-processor scheduling, Linux case study. Dynamic memory management: Internal design alternatives for malloc and free routines, Garbage collection. OS memory management: Memory protection, Program relocation, Memory partitioning techniques, Virtual memory, Paging and segmentation, TLB and cache management. File systems: Naming issues, Design alternatives for file systems, Example file systems and their comparison. I/O management: Memory mapped Vs Direct I/O, Interrupt driven Vs Polled I/O, Device controllers and device drivers, Naming issues, OS I/O architecture, Buffering techniques, Disk devices and their management. Timer management in OS, Event notification mechanisms, UNIX signals, Security and protection: Security aspects in operating systems, Authentication, Authorization, Accounting, Security domains and security models, Protection against worms and viruses, Protection against buffer overflow attacks, Windows case study, Linux case study, Java Security, State of the art OS research topics.
Course Instructor

Mr. Farhan Zaidi MS Computer Science University of Southern California, USA

Modern Operating Systems by Andrew S. Tanenbaum

Operating Systems Internals and Design Principles by William Stallings
Operating Systems by Gary Nutt
Computer Systems: A programmer’s perspective by Randal E. Bryant and David R. O'Hallaron