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.
This paper presents Google File System, a scalable distributed file system designed for large data-intensive applications on commodity hardware. It discusses assumptions, relaxed consistency models, architecture with a single master and many chunkservers, replication, metadata management, atomic record append, and fault tolerance in GFS.
This lecture explores integration of IO devices into computer systems, explaining hardware interfaces, classical and modern system architectures, techniques like polling, interrupts, DMA, memory-mapped IO, and the role of device drivers in providing abstraction for generic OS operations over diverse hardware.
This document explains the crash-consistency problem in file systems and how journaling (write-ahead logging) effectively addresses it by recording transactions in a journal before applying changes to on-disk data. It covers fsck, journaling modes (data vs metadata journaling), recovery, and challenges like block reuse and protocols ensuring atomic updates despite crashes.
Lecture on xv6 context switching mechanism including scheduler thread, swtch function for switching contexts, context structure vs trapframe, saving/restoring registers, yield/exit/sleep triggering context switches, allocproc for new processes, and init process creation.