Operating Systems - definition, purpose, development, design, structures, components, services, system calls, system programs, system structure, virtual machines, system design and implementation. Process Management - concept, scheduling, operation and cooperation, threads, inter-process communication, CPU Scheduling criteria and algorithms, semaphores, classical problems, critical regions, monitors, deadlocks. Storage Management - memory management, background, address space, swapping, contiguous allocation, paging, segmentation, paging, virtual memory, page replacement algorithms, file system interface and implementation, file concept, access methods, protection, implementation. I/O Systems - Mass storage structure, I/O hardware and interface, disk structure scheduling, management and reliability (RAID). Distributed Systems - structures, file systems, design issues, file naming, file access and replication, event ordering, mutual exclusion, deadlock detection, election and reaching agreement methods. Protection and Security - goals, access matrix, program and system threats. |