Browse Prior Art Database

Interchangeable File System Compression Algorithm

IP.com Disclosure Number: IPCOM000115372D
Original Publication Date: 1995-Apr-01
Included in the Prior Art Database: 2005-Mar-30
Document File: 2 page(s) / 94K

Publishing Venue

IBM

Related People

Craft, DJ: AUTHOR

Abstract

The implementation of filesystem compression capabilities has historically been tied to one or two non interchangeable algorithms. This invention allows the interchange of differing compression algorithms without rebuilding the filesystem or filesystem specific commands. Additionally this invention allows easy compression algorithm maintainability by allowing the same code to be used by both the kernel and commands.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Interchangeable File System Compression Algorithm

      The implementation of filesystem compression capabilities has
historically been tied to one or two non interchangeable algorithms.
This invention allows the interchange of differing compression
algorithms without rebuilding the filesystem or filesystem specific
commands.  Additionally this invention allows easy compression
algorithm maintainability by allowing the same code to be used by
both the kernel and commands.

      File systems such as the Journaled File System (JFS) provide an
abstraction of compartmentalized data (files) between the user and
the raw physical disk.  One of the capabilities of the JFS is to
compress and decompress data such that it appears in normal
uncompressed format to the user, but appears in a shortened
compressed format on disk.  This compression and decompression
ability requires an algorithm that must be accessible to the
filesystem immediately before and after disk operations.  This
compression algorithm operates in the supervisory machine state along
with other JFS code.  The capability also exists for the user to
bypass the JFS data abstraction, by reading from and writing to, the
raw physical disk.  This interaction is often performed by commands
that backup and restore data.  Commands that perform direct data
exchange with the disk, need to interpret compressed data in the same
manner as the JFS.   For this reason the compression and
decompression algorithm needs to be accessible to user level commands
immediately before and after disk operations.  The need for the same
functionality, namely the compression and decompression algorithm, in
both user and supervisory machine states, leads to either code
duplication or the limitation of the algorithm to just the
supervisory machine state.  This need also normally inhibits the
replacement of the algorithm since the filesystem and related
commands are bound with the algorithm machine instructions.  This
invention compartmentalizes the compression algorithm into an
extension
that can be used in either the kernel or user level environment.

      The compression algorithm exists as a single state independent
module and a kernel specific front end.  The state independent module
can be loaded with the kernel specific module to form an AIX* kernel
extension or loaded independently as a command level load module.
The kernel specific front end exists to setup...