← Back to Patent Explorer
EP0587437A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

Data compression/decompression and storage of compressed and uncompressed data on a single data storage volume

Assignee: International Business Machines Corp
•
Filing: 1993-09-10
•
Granted: —
•
Expires: 2013-09-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

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 be facile for 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.

Inventors

  • 👤 John Edward Kulakowski
  • 👤 Rodney Jerome Means

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-11-03 18:14
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/06; G06F3/0601; G06F3/0602; G06F3/0608; G06F3/0628; G06F3/0629; G06F3/0631; G06F3/0638; G06F3/064; G06F3/0668; G06F3/0671; G06F3/0673; G06F3/0674; G06F3/0677; G06F3/0683; G11; G11B; G11B20/00; G11B20/00007; G11B20/10; G11B27/00; G11B27/10; G11B27/19; G11B27/28; G11B27/30; G11B27/3027; G11B27/32; G11B27/327; G11B27/329; G06F2212/00; G06F2212/40; G06F2212/401; G11B2220/00; G11B2220/20

Claims Analysis

Total Claims: 13
Claim 1
Independent Claim 204 words
Apparatus for storing data in compressed form in a data storage device having a plurality of addressable like-sized data storage areas, each for recording a predetermined number of data bytes, the data storage device being connected to means for receiving data to be recorded, said received data being arranged in a plurality of addressable data blocks, characterised in that the apparatus comprises, in combination: selection means in the means for receiving data for selecting one or more data transfer units of data blocks to be recorded, each said transfer unit of data blocks having a given number of data bytes and including one or more of said addressable data blocks; compression means connected to the selection means for compressing said transfer unit of data blocks to be recorded as a group of compressed data blocks; data access means in the device connected to said compression means for recording said group of compressed data blocks in said addressable data storage areas as one continuum of compressed data; and directory means indicating which ones of said addressable data storage areas said continuum of data is recorded in, and indicating that said continuum of data contains said selected transfer unit of data blocks in a compressed form.
Claim 2
Dependent Claim 90 words
Apparatus according to claim 1 including: allocation means connected to the selection means for responding to the number of data bytes in each said transfer unit of data blocks to indicate that said transfer unit requires a first number of said addressable data storage areas to record said transfer unit of data blocks; and recording means for recording said transfer unit as a group of compressed data blocks in a second number of said addressable data storage areas, said second number being equal to or less than said first number.
Claim 3
Dependent Claim 107 words
Apparatus according to claim 2 including update means connected to said selection means and to said allocation means for updating a recorded group of compressed data blocks with updated data blocks, including receiving updated ones of said data blocks and selecting a data transfer unit of data blocks to include said updated data blocks; said update means being connected to said allocation means for allocating a number of said addressable data storage areas for receiving and recording said updated compressed data blocks and for deallocating ones of said allocated addressable data storage areas in which are stored the original group of compressed data blocks to be updated.
Claim 4
Dependent Claim 52 words
Apparatus according to any one of claims 1 to 3 wherein the selection means is connected to the data storage device for selecting said given number of data bytes to form a transfer unit in dependence on the number of data bytes which are recordable in each of said data storage areas.
Claim 5
Dependent Claim 108 words
Apparatus according to any one of claims 1 to 4, including range means indicating a range of number of bytes to be used for transferring data blocks between said means for receiving data and said data storage device, wherein said selection means is connected to said range means for receiving said range indication and responding to the received range indication for selecting a predetermined number of said data blocks to be a data transfer unit and to be in one of said groups of data blocks such that each said group of data blocks has a number of data bytes equivalent to a plurality of uncompressed data blocks.
Claim 6
Dependent Claim 138 words
Apparatus according to any one of claims 1 to 5 wherein the apparatus includes: CKD means for supplying a plurality of CKD data blocks; a CKD formatted disk within the data storage device for receiving and recording CKD data; said selection means being connected to said CKD means for receiving and selecting a predetermined number of said CKD data blocks as a data transfer unit of said CKD data blocks; said data access means having CKD recording means for recording said transfer unit of CKD data as compressed by said compression means as a single record on said CKD formatted disk; and repeat means connected to said selection means and to said CKD means for repeatedly actuating the CKD means to supply a transfer unit of CKD data blocks for compression and recording in respective single CKD records.
Claim 7
Dependent Claim 160 words
Apparatus according to any one of claims 1 to 5, including: a host processor connected to a peripheral controller, said data storage device being connected to said peripheral controller; an FBA sectored disk in said data storage device having a plurality of addressable sectors for receiving and recording data blocks; said selection means having means for selecting said data blocks for said data transfer unit to be recorded in a predetermined number of sectors on said FBA sectored disk; and repeat means connected to said selection means for repeatedly actuating the selection means for selecting a plurality of said transfer units of data blocks from one file of such data blocks for compression and recording of said transfer units of data blocks such that said file of data blocks is recorded in compressed form on said FBA sectored disk in a plurality of said continuum of data wherein each said continua consists of one said group of compressed data blocks.
Claim 8
Dependent Claim 103 words
Apparatus according to any one of the preceding claims, including data recording management means connected to said directory means and to said data access means for actuating the directory means to establish a plurality of said file directories, one file directory for each file of data recorded in compressed form; said recording management means actuating said directory means to record in each of said file directories a number of said data blocks to be included in each of said data transfer units of data and including recording a maximum number of bytes to be included in any one of said data transfer units.
Claim 9
Independent Claim 113 words
A method of compressing and recording onto a data storage medium data of a file which is arranged in a plurality of addressable data blocks, the method comprising the steps of: selecting a plurality of said data blocks of said file to be compressed and recorded; segmenting the selected plurality of addressable data blocks into one or more data transfer units; compressing each of said one or more data transfer units and recording them as respective separate groups of compressed data blocks; and creating and maintaining a file directory indicating the address and size of each of said recorded groups for enabling random access to recorded data within said file of data blocks.
Claim 10
Dependent Claim 72 words
A method according to claim 9 including the steps of: before recording one of said groups of compressed data blocks, allocating a first number of addressable data storage areas of the storage medium for recording said one group of compressed data blocks; and after recording said one group of compressed data blocks, deallocating allocated addressable data storage areas, if any, into which said one group of compressed data blocks was not recorded.
Claim 11
Dependent Claim 75 words
A method according to claim 9 or claim 10, including: supplying CKD formatted data blocks of one CKD formatted file and selecting said CKD data blocks to be compressed and recorded; compressing one or more data transfer units of said CKD data blocks into one or more groups, respectively, of compressed CKD data blocks; and recording the one or more groups of compressed CKD data blocks as one record on a CKD formatted record member.
Claim 12
Dependent Claim 87 words
A method according to claim 9 or claim 10, including: selecting an FBA formatted record medium to be said record medium, said FBA formatted record medium having a plurality of addressable data-storing sectors, each data-storing sector being capable of recording a given number of data bytes; and selecting said data transfer unit to have a first predetermined number of said data blocks having a number of uncompressed data bytes equal to a data storage capacity, in data bytes, of a second predetermined number of said data-storing sectors.
Claim 13
Independent Claim 56 words
A method according to any one of claims 9 to 12, including: setting a range of number of bytes to be included in each of said data transfer units; and selecting a number of said data blocks such that a number of data bytes in the selected number of data blocks is within the set range.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag