Fundamentals of Operating Systems

 Fundamentals of Operating Systems

This lecture presentation reviews fundamental operating system principles, including virtualization, process scheduling, memory management, and security features, offering a strong conceptual foundation.

Lab implementing simple file system operations including file creation, deletion, reading, writing, seeking, and inode management on emulated disk with superblock and data block allocation.

Lab on building custom memory manager simulating malloc/free functionality using mmap system calls. Covers memory allocation, deallocation, chunk splitting, merging, and heap management.

Introduction to virtual memory concepts including address spaces, multiprogramming, time sharing, heap and stack management, memory protection, and process memory layout.

Lab implementation of threading in XV6 covering thread creation, thread joining, thread exit, barrier synchronization, waitpid implementation, and user-space concurrency primitives.