110 likes | 250 Views
This document provides an in-depth exploration of file system organization within traditional UNIX and Berkeley Fast File System paradigms, starting from the foundational components like boot blocks, super blocks, and inodes. It discusses the fragmentation issues of traditional UNIX file systems, advancements with Berkeley's restructuring using cylinder groups, and introduces crucial features like the quota system, symbolic links, and file truncation in Linux. Additionally, the Virtual File System (VFS) concept is outlined, emphasizing its clean design and systematic object-oriented approach for integrating various file systems.
E N D
Advanced Operating Systems File System Internals
UNIX File System Organisation • The Traditional UNIX organisation from Ed 7 onwards has been • Boot Block, Super Block, Inodes, Data
UNIX File System Organisation • Searching and allocation is done through logical device and inumber
UNIX File System Organisation • Problems of Traditional UNIX FS • Fragmentation of disc • No way to use disc geometry • Short file names
Berkeley Fast File System • Restructured File System organisation using cylinder groups • 1 or more cylinders per group • Identical superblocks in cylinder group • Superblocks offset for each in cylinder group
Berkeley Fast File System • Inode/file allocation • File inode is allocated in parent directory cylinder group • New directory placed in new cylinder group • Large and small files are segregated • Use of 8k byte blocks & 1k fragements
Berkeley Fast File System • Filename size changes • 255 character file names • Changed directory organisation • Quota system introduced • Symbolic links introduced • File truncation introduced
Linux file system • Added VFS – Virtual File System • Allows other system to be added • Clean, object orientated, design of system • 3 parts • Inode object • File object • File system object
Virtual File System • VFS Objects define an action for each file system • Each object has a pointer into a table of functions for each file system implementation • File system object is the hierarchy • Files found through fs-inode paring