Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Utilizing Drive Level Compression through Cross-File Compressing

IP.com Disclosure Number: IPCOM000111034D
Original Publication Date: 1994-Feb-01
Included in the Prior Art Database: 2005-Mar-26
Document File: 2 page(s) / 92K

Publishing Venue

IBM

Related People

Dewey, DW: AUTHOR

Abstract

To increase the capacity of optical drives, compression ability can be added. The natural approach to utilizing this would be for the file system to compress the data of an individual file and then store it as it would before. This disclosure covers alterations to the file system structure that allows data of multiple files to be compressed together and still maintain the capability of individual delete of the files. This method enables multiple small files to be written together with a single disk operation and still be compressed. Efficiency in compressing small files is gained while maintaining the existing file system semantics.

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

Utilizing Drive Level Compression through Cross-File Compressing

      To increase the capacity of optical drives, compression ability
can be added.  The natural approach to utilizing this would be for
the file system to compress the data of an individual file and then
store it as it would before.  This disclosure covers alterations to
the file system structure that allows data of multiple files to be
compressed together and still maintain the capability of individual
delete of the files.  This method enables multiple small files to be
written together with a single disk operation and still be
compressed.  Efficiency in compressing small files is gained while
maintaining the existing file system semantics.

      The unit of compression by the drive is termed a "transfer
unit".  A transfer unit is written to the drive.  The drive then
compresses that buffer and writes it to the media beginning at the
designated address and returns the resulting size of the compressed
write to the issuing system.  Without modification of the current
file system, a single files data may consist of multiple transfer
units, but a transfer unit would contain the data of only one file.

The modification that follows allows a transfer unit to contain the
data of multiple files.

      Currently the IBM High Performance Optical File System format
contains a directory with an entry for each file.  This entry uses
extent descriptors to point directly to the data of the file.  A new
structure is inserted "between" these extent descriptors and the
data.  Instead of pointing directly to physical sectors, the
directory entry will point to a "compression map" that is used to
store the physical location of transfer units on the media.

      The compression occurs during packed writes.  In this scenario,
multiple files are being written with single writes already, hence
the cross file cache buffer contains the data of the transfer unit.
When allocating space for a packed write scenario, the code allocates
a physical area as before.  The buffers are written sequentially to
this area using the drive compaction.  Unused area saved by the
compaction can then be placed back into the free space file.

      A compression map consists of an array of "transfer unit
descriptors" (TUD) and a bitmap array that will be used to map
deleted logical blocks.  The transfer unit descriptor consists of
three fields and is used to map a range of logical blocks (original
user data) to a transfer unit on...