Data compression/decompression and storage of compressed and uncompressed data on a same removable data storage medium
First Claim
1. In apparatus for storing data in compressed form in a data storage device having a multiplicity of addressable data storage areas, each of the data storage areas for recording a first predetermined number of data bytes, the data storage device being connected to a programmed machine, said programmed machine for receiving data to be recorded, said received data being arranged in a plurality of addressable data blocks, the improvement including, in combination:
- selection means in the programmed machine for selecting a plurality of data transfer units of said data blocks to be recorded, each said data transfer unit of data blocks having a given number of data bytes not less than said first predetermined number and includes one or more of said addressable data blocks;
allocation means in the programmed machine connected to the selection means for responding to said given number to indicate that said data transfer units of data blocks each requires a first number of said addressable data storage areas for storage in the data storage unit and for indicating that all of said first number of said indicated addressable data storage areas are allocated for storing data from respective ones of said selected data transfer units;
compression means in the programmed machine connected to the selection means for receiving and compressing said data transfer units of data blocks into respective compressed blocks to be respectively recorded in a second number of said first number of addressable data storage areas, said second number being equal to or less than said first number;
data access means in said data storage device and being connected to said compression means for respectively receiving and then respectively recording said compressed blocks in said second predetermined ones of said first number of said addressable data storage areas and indicating that the respective compressed block is recorded in the respective ones of said second predetermined ones of said first number of said addressable data storage areas; and
directory means in the programmed machine and connected to said data access means and to said allocation means for receiving said indications of said allocation and said indications of said second ones of said first number of said addressable data storage areas for indicating that said compressed blocks are recorded in said respective second predetermined ones of said first number of said addressable data storage areas and that said recorded compressed blocks contain respective ones of said selected data transfer units of data blocks and that a plurality of said data transfer units of data blocks have been separately compressed and recorded in respective ones of said compressed blocks.
2 Assignments
0 Petitions
Accused Products
Abstract
A data file having a plurality of data blocks is divided into one or more transfer units of data blocks. Before data storage, each transfer unit of data blocks is subjected to its own data compression cycle to create a group of compressed data blocks. The size of the data transfer unit, in bytes, is selected to facilitate addressing and retrieving individual recorded groups of compressed data blocks while providing good channel utilization and compression efficiency. Also the data transfer unit size is selected in part based upon data storage efficiency, i.e. the storage of the compressed data should fill as many addressable data storage areas as possible. Upon recording each group of compressed data bytes, an entry is made into a file directory for enabling addressing the recorded compressed data blocks.
-
Citations
14 Claims
-
1. In apparatus for storing data in compressed form in a data storage device having a multiplicity of addressable data storage areas, each of the data storage areas for recording a first predetermined number of data bytes, the data storage device being connected to a programmed machine, said programmed machine for receiving data to be recorded, said received data being arranged in a plurality of addressable data blocks, the improvement including, in combination:
-
selection means in the programmed machine for selecting a plurality of data transfer units of said data blocks to be recorded, each said data transfer unit of data blocks having a given number of data bytes not less than said first predetermined number and includes one or more of said addressable data blocks; allocation means in the programmed machine connected to the selection means for responding to said given number to indicate that said data transfer units of data blocks each requires a first number of said addressable data storage areas for storage in the data storage unit and for indicating that all of said first number of said indicated addressable data storage areas are allocated for storing data from respective ones of said selected data transfer units; compression means in the programmed machine connected to the selection means for receiving and compressing said data transfer units of data blocks into respective compressed blocks to be respectively recorded in a second number of said first number of addressable data storage areas, said second number being equal to or less than said first number; data access means in said data storage device and being connected to said compression means for respectively receiving and then respectively recording said compressed blocks in said second predetermined ones of said first number of said addressable data storage areas and indicating that the respective compressed block is recorded in the respective ones of said second predetermined ones of said first number of said addressable data storage areas; and directory means in the programmed machine and connected to said data access means and to said allocation means for receiving said indications of said allocation and said indications of said second ones of said first number of said addressable data storage areas for indicating that said compressed blocks are recorded in said respective second predetermined ones of said first number of said addressable data storage areas and that said recorded compressed blocks contain respective ones of said selected data transfer units of data blocks and that a plurality of said data transfer units of data blocks have been separately compressed and recorded in respective ones of said compressed blocks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. In a machine-effected method of compressing and recording data blocks onto a data storage medium having a plurality of addressable data storage areas, including machine-executed steps of:
-
first selecting a plurality of data blocks of a file to be compressed and recorded on the data storage medium; second selecting a plurality of submultiples of said selected data blocks respectively as a plurality of data transfer units; estimating a maximum number of said addressable data storage areas to be allocated for storing said selected plurality of data blocks after compression in said data storage medium; allocating said maximum number of said addressable data storage areas to receive and store said selected plurality of data blocks in a compressed form and indicating the allocation of said addressable data storage areas; compressing and recording each of said data transfer units as respective compressed blocks including recording each of said compressed blocks as a separately recorded record; and creating and maintaining a separate file directory indicating the address and size of each of said recorded compressed block for enabling random access to each said recorded compressed block such that less than an entirety of said file of data blocks are retrieved from said data storage medium for accessing only predetermined ones of said recorded blocks less than all of said recorded compressed blocks and modifying said indicated allocation to indicate a number of said addressable data storage areas storing said compressed block. - View Dependent Claims (10, 11, 12, 13, 14)
-
Specification