The Viva File System

  • Authors:
  • Eric H. Herrin, II;Raphael A. Finkel

  • Affiliations:
  • -;-

  • Venue:
  • The Viva File System
  • Year:
  • 1993

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper describes the Viva File System or VIFS, a technique for high-performance file allocation on disks. VIFS uses bitmaps to represent both free blocks on the disk and allocated blocks in each file. Allocation bitmaps provide a very fast method of finding blocks close to the last allocated block in a file. Fragments (partial blocks) are used to store the overflow from the last file block; the minimum size of a fragment is chosen when the file system is initialized. Conventional file systems, such as the Berkeley Fast File System (FFS), can store a file containing 96KB of data without using indirect blocks and around 16 MB of data for each indirect block. With the same block size, VIFS can store up to about 10 MB of data without using indirect blocks and up to 500 MB of data per indirect block. The design of VIFS allows some previously synchronous operations to occur asynchronously, resulting in significant speed improvements over FFS. VIFS provides multiple read-ahead to maintain its high speed when several processes are competing for disk accesses. We provide experimental measurements taken from an implementation of Viva in a BSD 4.3 kernel. The measurements show that VIFS is significantly faster than FFS for nearly all file system opera- tions.