Back to Projects
Backend

ExFS2: User-Space Virtual File System

Implemented an inode-based virtual file system supporting direct and indirect addressing.

2023 Backend
ExFS2: User-Space Virtual File System

About This Project

ExFS2 is a user-space virtual file system that emulates an inode-based storage model using standard files for metadata and data persistence. It supports direct, single-indirect, and double-indirect block addressing to efficiently manage file storage and access. The system is designed to handle the creation and deletion of files and nested directories through path traversal, while dynamically allocating inodes and data blocks. It enables reading and extracting files byte-for-byte to stdout, manages large files through indirect addressing, and supports segment expansion when space runs out. ExFS2 also incorporates a bitmap-based system to reuse freed inodes and blocks for efficient memory and storage utilization. Additionally, it provides the ability to list the contents of directories, offering a complete and functional virtual file system experience.

Key Features

  • Inode-based architecture
  • Indirect block addressing
  • Dynamic inode/data segment creation
  • Bitmap-based allocation and reuse

More Projects