Introduction to Operating Systems: OS structure and strategies, Process concepts, Multithreaded Programming, Process scheduling, Process synchronization, Deadlocks.
Memory management strategies with example architectures: Swapping, Contiguous allocation, Paging, Segmentation, Segmentation with paging, Virtual memory management: Demand paging, Page replacement, Thrashing.
File system interface: File concepts, Access methods and protection. File system implementation: File system structure, Allocation methods, Directory implementation of file systems, Mass storage structures, I/O systems
System Protection: Principles and Domain, Access Matrix and implementation, Access control and access rights, Capability based systems, and Language based Protection
System Security: Problem, Program threats, cryptography, user authentication, implementing security defenses, Firewalling, Computer Security Classification
Case Studies: The Linux System–Design principles, Kernel modules, Process management, Scheduling, Memory management, File systems, Input and Output, Inter process communication. Windows7–Design principles, System components, Terminal services and fast user switching File systems, Networking, Programmer interface.