by Aleena Parvez | Nov 13, 2025
This lab guide explains implementing a simple in-memory key-value store that runs as a client-server application over TCP sockets. It covers socket programming basics, multi-threaded server design, event-driven IO with epoll, and load generation for performance testing of the key-value server.
by Aleena Parvez | Nov 12, 2025
This document introduces the basic concepts of file systems including file abstractions, directories, file operations like open, read, write, and close, and the role of the operating system in managing persistent storage through files.
by Aleena Parvez | Nov 12, 2025
This document introduces a simple file system called vsfs as a case study to explain basic on-disk data structures like inodes, bitmaps, directories, and policies for allocation and access. It covers file read/write operations, caching, and trade-offs in file system implementation details.
by Aleena Parvez | Nov 12, 2025
An introduction to operating systems focusing on their role as system software managing hardware, process management, memory management, IO, and system calls. It discusses OS architectures like monolithic kernels and microkernels and the need for OS in convenience, security, and resource usage efficiency.
by Aleena Parvez | Nov 12, 2025
This lecture covers semaphores as synchronization primitives with counters and their operations (up/post and down/wait). Topics include binary semaphores as mutexes, semaphore usage in producer-consumer problems, and handling deadlocks caused by semaphore misuse.