`U8005247646A
`'
`a
`5,247,646
`[11] Patent Number:
`[19]
`United States Patent
`*
`
`Osterlund et al.
`[45] Date of Patent:
`Sep. 21, 1993
`
`8/1984 White ................................ .. 364/200
`4,467,421
`4,486,870 12/ 1984 Pettigrew et al.
`369/43
`4,490,747 12/1984‘ Yokoyama
`358/296
`4,496,997
`1/1985 Ohtsuki . . ... ...
`...... 360/13
`4,531,166 7/1985 Anderson . . .. .
`. . .. .. 360/73
`4,535,439
`8/1985 Satoh et al.
`..
`369/275
`4,541,019
`9/1985 Precourt .. . . ...
`.. ... 360/15
`4,545,044 10/1985 Satoh et al.
`...... 369/32
`mannymsmmuan . . ..
`.. .. "mfls
`1’587’643
`5/1986 Moncnla al‘
`""
`,633,393 12/1986 Rundel
`4,680,653
`7/1987 Ng et al.
`.. 360/722
`4,682,318
`7/1987 Busby .... ....
`...... 369/59
`4,775,969 10/1988 Osterlund .
`...... 369/53
`4,791,623 12/1988 Deiotte .......
`...... 369/59
`..
`4,929,946 5/1990 O’Brien et a1.
`341/87
`5,034,914 7/1991 Osterlund .........
`395/425
`5,113,512
`5/1992 Miki et al.
`395/425
`5,155,835 10/1992 Belsan ................................. 395/425
`_
`_
`13mm"? Exam'”€7-Dale M- Shaw
`Assistant Examiner—D. Dinh
`Attorney, Agent, or Firm—Pennie & Edmonds
`
`
`
`'
`
`[57]
`
`ABSTRACT
`.
`.
`,
`An Improved 0P“cal disk data S‘mge Sys‘em mm“
`are disclosed In an Optical disk storage System, a data
`compression device is interposed between a host com-
`puter and an optical disk controller to permit data stor—
`age and retrieval operations on an optical disk to occur
`at 3 fas‘er “"9 than won” “herWise be WSSible‘ Data
`is compressed when it is received by the optical disk
`controller and is decompressed before it is sent to the
`host computer. In this way data may be efficiently
`stored on an optical disk while providing plug compati-
`-
`-
`-
`'
`-
`bility With a host computer designed to store and re
`.
`.
`.
`.
`trleve data on a magnetlc media data storage devrce.
`
`26 Claims, 2 Drawing Sheets
`
`[54] COMPRESSED DATA OPTICAL DISK
`STORAGE SYSTEM
`
`[75]
`
`Inventors: Steven W- Osterlund. North
`Kingstown; Michael G. Johnson,
`Wakefield, both of 11.1.
`,
`,
`.
`[73] A5518n86= Ml“th Systems Intern-how,
`thmmfiwmmmKL
`The portion of the term of this patent
`bse “cm to Jul 23 2008 has been
`S‘.’
`9
`'
`1’
`disclaimed-
`‘
`733'475
`Ju1.22, 1991
`
`[ ‘ ] Notice:
`
`21 A 1.
`1
`pp N°
`[
`[22] Filed:
`
`_,
`
`[63]
`
`-
`-
`Apphc'mo" Data
`Rem“!
`Continuation-impart of Ser. No. 207,590, Jun. 16, 1988,
`Pat. No. 5,034,914, which is a continuation-in-part of
`Ser. No. 37,749, Apr. 13, 1987, Pat. No. 4,775,969,
`which is a continuation-in-part of Ser. No. 863,564,
`May 15, 1986, abandoned.
`
`[51]
`Int. Cl.5 ..................... .. G06F 13/00; GllB 7/013
`
`[52] US. Cl. ............................... .. 395/425; 395/275
`[58] Field of Search ................... 395/425, 275; 341/87
`.
`Rae'ences cued
`U.S. PATENT DOCUMENTS
`3,400,371
`9/1968 Amdahl et al.
`..................... 364/200
`3,400,372 9/1968 Beausoleil et al.
`.
`.... " 364/200
`3,629,860 12/1971 Capozzi ............ ..
`340/1725
`4,001,883
`1/1977 Strout et a1.
`........ 360/48
`4,089,027 5/ 1978 Grigoletti ..... ..
`350/72
`4,094,013
`6/1978 Hill et al.
`.... .. 365/234
`....” 365/234
`4,229,808 10/1980 Hui ............... ..
`....“ 364/200
`4,310,883
`1/1982 Clifton et a]. u
`4,321,635
`3/1982 Tsuyuguchi
`360/722
`4,398,227
`8/1983 Anderson ............................ .. 360/71
`
`
`
`[56]
`
`To/Fnom Rom
`Buffer Nemat‘y
`
`25
`
`
`
` Compress i on/Decompr‘ess i on
`
`Nodu I e
`
`To/Ft‘om Host
`Interface Unit
`
`NetApp
`
`Exhibit1004
`
`Page1
`
`NetApp Exhibit 1004 Page 1
`
`
`
`
`
`US. Patent
`
`Sep. 21, 1993
`
`Sheet 1 of 2
`
`5,247,646
`
` commooocaoco_z Loaaaeoo
`
`NetApp
`
`Exhibit1004
`
`Page2
`
`
`
`NetApp Exhibit 1004 Page 2
`
`
`
`US. Patent
`
`Sep.21,1993
`
`Sheet 2 of 2
`
`5,247,646
`
`mm
`
`EomEocu\0p
`
`
`
`xcoeozLobbam
`
`co_mmwcaeoooo\co_mmmcaeoo
`
`o_3voz
`
`
`
`“mo:EOLL\OH
`
`
`
`a_c3ooohcuac_
`
`m.o_|._
`
`NetApp
`
`Exhibit1004
`
`Page3
`
`NetApp Exhibit 1004 Page 3
`
`
`
`
`
`
`1
`
`5,247,646
`
`2
`
`COMPRESSED DATA OPTICAL DISK STORAGE
`SYSTEM
`
`CROSS REFERENCE TO RELATED
`APPLICATIONS
`
`This application is a continuation-in-part US. Pat.
`application Ser. No. 07/207,590, filed June 16, 1988,
`now US. Pat. No. 5,034,914, which is a continuation-in-
`part of Ser. No. 37,749, filed Apr. 13, 1987, now US.
`Pat. No. 4,775,969, which is a continuationoin-part of
`Ser. No. 863,564, filed May 15, 1986, abandoned.
`
`BACKGROUND OF THE INVENTION
`
`5.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`SUMMARY OF THE INVENTION
`
`The present invention relates to an optical media data
`storage system which includes host interface means for
`connection to a host computer and having means for
`receiving a sequence of data storage commands to con-
`trol a magnetic media data storage device from the host
`computer. Data compression means are used for com-
`pressing data transferred from the host interface means
`to the buffer memory means and for decompressing
`data transferred from the buffer memory means to the
`host interface means. The buffer memory means re-
`ceives compressed data from the data compression
`means for optical media storage means and transmits
`compressed data which has been stored on the optical
`media storage means to the data compression means.
`This system also includes optical media storage
`means for storing compressed data thereon, for storing
`compressed data received from the buffer memory
`means, and for supplying compressed data stored
`thereon to the buffer memory means, and microproces-
`sor means for responding to the sequence of commands
`received from the host interface means and for control-
`ling data storage and retrieval operations of the buffer
`memory means and the optical media storage means
`responsive to the sequence of commands.
`All compressed data stored by the optical media stor-
`age means is stored in the buffer memory means prior to
`storage on the optical media storage means and prior to
`supply of the compressed data from the optical media
`storage means to the host computer. Also, while the
`compressed data is stored in the buffer memory means,
`prior to storage on the optical media storage means, the
`compressed data is organized by the microprocessor
`means into discrete groupings or segments, and at least
`one record directory is constructed. Each record direc-
`tory consists of information pertaining to lengths of the
`compressed data records contained in a single discrete
`group or segment of compressed data.
`In one embodiment, a high level directory is used for
`relating one or more record directories to a particular
`host data file constructed by the microprocessor means
`and stored in the buffer memory means, Thus, the seg-
`ments, their associated record directories and the high-
`level directory are transferred from the buffer memory
`to the optical media storage means and stored thereon.
`Information contained in the record directory pertain-
`ing to the length of an individual data record is used to
`locate within a given data group or segment the particu-
`lar record sought by the host computer. These segments
`are recorded onto the optical disk contiguously and
`interspersed with the record directories.
`In another embodiment, the optical media storage
`means comprises an optical disk wherein compressed
`data supplied to the host interface means by the data
`compressing means is organized into a sequence of re-
`cords by the microprocessor means, and information
`pertaining to individual data records which is contained
`within each record directory defines the length of at
`least one record of a single file which includes such
`records.
`Another embodiment of the invention includes a
`method for storing compressed data on the systems
`described above where the following steps are per-
`formed in response to a request from a host computer to
`store a sequence of records:
`
`NetApp
`
`Exhibit1004
`
`Page4
`
`This invention relates to an optical disk storage sys-
`tem and, more particularly, to a faster, more efficient
`embedded directory technique for compressing and
`storing or retrieving data on or from an optical disk to
`permit rapid data storage and retrieval.
`US. Pat. No. 5,034,914 discloses an optical disk sys-
`tem which incorporates a new and improved embedded
`directory technique for storing and retrieving data on
`or from an optical disk. This technique allows an optical
`disk storage device to emulate a magnetic media storage
`device, such as a tape drive, while maintaining plug
`compatibility with a host computer.
`In that patent, a high-level directory is created which
`relates a file to a number of embedded directories inter-
`spersed with data on an optical disk, and written to the
`disk substantially simultaneously with the data. The
`embedded directories each provide an index to a num-
`ber of associated data records, all part of a single corre-
`sponding file. The fact that the embedded directories
`are interspersed with the data reduces the number of
`long head seeks required to access a particular record.
`The embedded directories are written onto the disk
`immediately following the data records to which they
`correspond. The high-level directory is written onto a
`predetermined location on the disk, so that it can be
`located reliably; entries are added to the high-level
`directory as data is written onto the disk.
`The above steps are accomplished by an optical disk
`controller unit interposed between a host computer and
`an optical disk storage system. The controller, which
`includes a microprocessor,
`(1) receives data transmitted from the host computer,
`(2) generates information for a high-level directory,
`(3) constructs embedded directory entries,
`(4) controls writing of the record data, and
`(5) Writes a high-level directory entry, including a
`table of embedded directory disk addresses, onto
`the optical disk.
`'
`Relatively speaking, a significant amount of time is
`required for the optical disk system to store data upon
`or retrieve data from the optical disk. It is the slowest
`element of that system, and is the primary source of
`delay in storing and retrieving data. The greater the
`amount of data, the greater will be the amount of time
`required for the optical disk to complete its storage and ‘
`retrieval tasks. In some cases this may lead to unaccept-
`ably slow rates of data storage and retrieval.
`Thus, there is a need for an optical media storage
`device having a faster, more efficient
`technique for
`storing and retrieving large amounts of data. The pres-
`ent invention provides one such system to satisfy that
`need.
`
`45
`
`50
`
`53
`
`60
`
`65
`
`NetApp Exhibit 1004 Page 4
`
`
`
`3
`the sequence of records is received at the host inter-
`face means and is transferred to the data compres-
`sion means;
`the sequence of records is compressed by the data
`compression means;
`-
`the sequence of compressed records is transferred to
`-the buffer memory means;
`the sequence of compressed records is stored in the
`buffer memory means;
`a record directory is created in the buffer memory
`means;
`
`the record directory is associated with up to a prede-
`termined number of the compressed records; and
`the sequence of compressed records and the record
`directory are stored on the optical media storage
`device.
`
`In response to a request from the host computer for
`the supply of one or more of the stored, compressed
`records, the present method can further include the
`steps of:
`copying all of the compressed records associated
`with the record directory with which the particu-
`lar record or records sought by the host are associ-
`ated into the buffer memory means;
`employing the record directory to locate the particu-
`lar compressed record or records sought by the
`host;
`transferring the compressed record or records sought
`to the data compression means;
`decompressing the records or record sought in the
`data compression means;
`transferring the decompressed records from the data
`compression means to the host interface means; and
`transferring the record or records sought to the host
`from the host interface means.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`The invention will be better understood with refer-
`ence to the accompanying drawings, in which:
`FIG. 1 is a system block diagram showing an optical
`disk controller for converting magnetic tape data from
`a host computer to data to be placed on an optical disk;
`and
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`FIG. 2 is a block diagram showing a data compres—
`sion/decompression module interposed between the
`host interface and the RAM buffer memory of FIG. 1.
`
`45
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`FIG. 1 shows an Overview of the system described in
`US. Pat. No. 5,034,914, the content of which is ex-
`pressly incorporated by reference herein.
`As explained in that patent, computer 19 represents
`any computer, e.g., a Digital Equipment Company
`VAX 11/780, which provides an output for recording
`on various conventional peripheral data storage .de-
`vices. Such devices include magnetic tape drives, e.g., a
`nine-track drive, whereby data is recorded on nine
`tracks of a tape. The computer 19 is thus operated as if
`to store conventional nine-track magnetic tape data.
`According to one aspect of the patent, such data is
`written onto an optical disk 24 rather than to a tape. In
`other words, communication between the optical disk
`and the computer 19 is “plug compatible” with the
`conventional communication between the computer 19
`and a conventional tape drive. In this way, no modifica-
`tion of the host’s operating system or. software is re-
`quired.
`
`50
`
`55
`
`60
`
`65
`
`5,247,646
`
`4
`In order to accomplish this result, an optical disk
`controller unit 10 is interposed between the computer
`19 (which may be substantially any host computer) and
`the optical disk system 24 (which may likewise be sub-
`stantially any optical disk storage system). The control-
`ler 10 comprises a solid-state RAM buffer memory 22,
`typically of 1.5 Mbytes capacity, suitable host and disk
`interface units 20 and 23 respectively, and a micro-
`processor 21. The interface unit 20 by which the buffer
`22 is connected to the computer 19 may implement a
`conventional tape interface that is, a conventional con-
`nection protocol. In this way the controller 10 is con-
`nected to the computer 19 as if it were a tape drive. For
`example, the tape interface may conform to the well-
`known “SCSI” (an international standard meaning
`“small computer systems interface") interface standard.
`Similarly, the interface 23 may be any unit suitable for
`coupling the buffer memory 22 to the optical disk sys-
`tem. For example, the SCSI is also suitable for many
`optical disk systems 24.
`The computer 19, interfaces 20 and 23, buffer mem-
`ory 22 and optical disk system 24 are connected by wide
`multibit data buses for fast data transfer; Specifically,
`well-understood direct memory access (DMA) tech-
`niques are preferably employed to transfer data into and
`out of the buffer memory 22. By comparison, the micro-
`processor 21 is connected to the other elements of the
`controller 10 for control only.
`The microprocessor 21 is controlled by software
`which is more fully descn'bed in US. Pat. No.
`5,043,914. Generally, however, the software provides at
`least the following functions:
`(1) Generates information for a high-level directory
`in microprocessor buffer memory consisting of disk
`addresses of embedded directory entries;
`(2) Constructs embedded directory entries compris-
`ing record length information corresponding to the
`lengths of the records to be stored;
`(3) Controls writing of the record data and embedded
`directory entries to the optical .disk; and
`(4) Writes a high-level directory entry including a
`table of embedded directory disk addresses to the
`optical disk.
`During reading operations, the high-level directory
`entry is read from the optical disk and used to determine
`the disk addresses of the embedded directory entries
`corresponding to the records which are sought. The
`embedded directory thus identified and the associated
`segment of data records are copied from the optical disk
`into the RAM buffer. The appropriate embedded direc-
`tory entry is then employed to locate the desired data
`within the data segment.
`The microprocessor 21 can be any suitable unit; for
`example, a Motorola model 68010 is suitable. For buffer
`memory 22, semiconductor memory also available from
`Motorola is suitable, but other conventional memory
`devices may be used. The SCSI interface 23 coupling
`the microprocessor 21 and optical disk 24 may be pur-
`chased from Applied Controlled Concepts Corpora-
`tion, Milwaukee, Wis, as model AVME 1686, or similar
`units can be obtained from other vendors.
`According to the present invention, data storage and
`retrieval rates may be substantially increased over those
`of US. Pat. No. 5,034,914 by the use of a data compres-
`sion/decompression module as shown in FIG. 2. This
`data compression module 25 is interposed between the
`optical disk controller unit 10 and the host computer 19.
`The data compression module 25 may be one of several
`
`NetApp
`
`Exhibit1004
`
`Page5
`
`NetApp Exhibit 1004 Page 5
`
`
`
`5,247,646
`
`5
`different types, although a preferred unit is a STAC
`9704 purchased from Stac Electronics, Inc., 5993 Ave-
`nida Encinas, Carlsbad, Calif, which uses a compres-
`sion algorithm optimized for high speed byte-oriented
`file streams.
`
`In an arrangement similar to that described in US.
`Pat. No. 5,034,914, the compression module 25, the host
`computer 19 and the optical disk controller 10 are con-
`nected by multibit data basses for fast data transfer.
`Specifically, direct memory access techniques are em—
`ployed to transfer data between the host computer 19,
`the decompression module 25 and the controller 10.
`In the present invention, after raw data formatted by
`the host 19 for storage on a magnetic media storage
`device has been received by the host interface unit 20, it
`is transmitted to the compression/decompression mod-
`ule 25 where said data is compressed. The Compressed
`data is then stored on an optical disk storage medium as
`previously described in US. Pat. No. 5,034,914.
`One advantage of the present invention is that, by
`compressing the data before it is sent to the optical disk,
`the total amount of data to be indexed and stored on the
`disk is reduced. As a result, substantially less time is
`required for the optical disk system 24 to store such data
`on an optical disk. In particular, when data is com-
`pressed and then written to the optical disk system 24 by
`the controller 10, the write task can be completed faster
`because the compression operation has reduced the
`amount of data which must be stored.
`
`' Similarly, when data is to be retrieved from the opti-
`cal disk, the data is recovered from optical disk system
`24 by the controller 10 and is then decompressed by the
`compression module 25 before being transmitted
`through the host interface means to the host computer
`19. Accordingly, the read operation is also made more
`efficient by means of the present invention because the
`optical disk system 24 has less data to retrieve.
`Significantly, the data compression module is used
`advantageously in the present invention by inserting it
`directly into the data stream immediately after it exits
`from the host interface unit after being received from
`the host. Since the compression module is capable of
`compressing and decompressing data with negligible
`delay, the device allows the optical disk storage device
`to have an overall faster rates of data storage and re-
`trieval. This result is achieved because optical disk sys-
`tem 24 no longer slows down the system by storing
`redundant information.
`
`As noted above, a further advantage of the present
`invention is that, since less data is written onto the opti-
`cal disk via the compression module, there is less optical
`media required to store an equivalent amount of uncom-
`pressed data. Consequently, more data may be stored on
`the optical disk than would otherwise be possible.
`While a preferred embodiment of the invention has
`been described, it will be understood by those of skill in
`the art that modifications and improvements to the
`above described exemplary embodiment of the inven-
`tion may be made without departing from the spirit and
`scope thereof, as will be apparent to those skilled in the
`art, and the claims are intended to cover such modifica-
`tions and improvements.
`We claim:
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`1. An optical media data storage system comprising:
`host interface means for connection to a host com-
`puter and including means for receiving a sequence
`of data storage commands to control a magnetic
`media data storage device from said host computer;
`
`65
`
`6
`data compression means for compressing data trans-
`ferred from said host interface means to said buffer
`
`memory means and for decompressing data trans-
`ferred from said buffer memory means to said host
`interface;
`buffer memory means coupled to said data compres-
`sion means for receiving compressed data which is
`to be stored on an Optical media storage means, and
`for transmitting compressed data which has been
`stored on the optical media storage means to said
`data compression means;
`optical media storage means for storing compressed
`data thereon, for storing compressed data received
`from said buffer memory means, and for supplying
`compressed data stored thereon to said buffer
`memory means; and
`microprocessor means for responding to said se-
`quence of commands received from said host inter-
`face means and for controlling data storage and
`retrieval operations of said buffer memory means
`and said optical media storage means responsive to
`said sequence of commands;
`a high level directory relating one or more record
`directories to a particular host data file constructed
`by said microprocessor means and stored in said
`buffer memory means;
`wherein all compressed data stored by-said optical
`media storage means is stored in said buffer mem-
`ory means prior to storage on said optical media
`storage means and prior to supply of said com-
`pressed data from said optical media storage means
`to said host computer;
`wherein while said compressed data is stored in said
`buffer memory means, prior to storage on said
`optical media storage means, said compressed data
`is organized by said microprocessor into discrete
`groupings or segments, and at
`least one record
`directory is constructed, each said record directory
`consisting of information pertaining to lengths of
`the compressed data records contained in a single
`discrete group or segment of compressed data;
`wherein said segments, their associated record direc-
`tories and said high-level directory are transferred
`from said buffer memory to said optical media
`storage means and stored thereon;
`wherein said information contained in said record
`
`directory pertaining to length of an individual data
`record is used to locate within a given data group
`or segment the particular record sought by the host
`computer;
`wherein said segments are recorded onto said optical
`medium storage means contiguously and inter-
`spersed with said record directories.
`2. The system of claim 1 wherein said buffer memory
`comprises solid—state random-access-memory (RAM)
`for efficient accessing and editing by said microproces—
`sor means of buffered compressed data during data
`transfer operations between said optical media data
`storage system and said host computer.
`3. The system of claim 2 wherein said RAM is ac-
`cessed by input and output pointer means for accessing
`said RAM with new records being stored at the location
`indicated by the input pointer, and copied to the optical
`media storage device means when said RAM is filled to
`a predetermined degree ‘ indicated by said output
`pointer, whereafter said pointers are updated.
`4. An optical media data storage system comprising:
`
`NetApp
`
`Exhibit1004
`
`Page6
`
`NetApp Exhibit 1004 Page 6
`
`
`
`5,247,646
`
`7
`host interface means for connection to a host com-
`puter and including means for receiving a sequence
`of data storage commands to control a magnetic
`media data storage device from said host computer;
`data compression means for compressing data trans-
`ferred from said host interface to said buffer mem-
`ory means and for decompressing data transferred
`from said buffer memory means to said host inter-
`face means;
`buffer memory means coupled to said data compres-
`sion means for receiving compressed data to be
`stored on an optical disk, and for supplying com-
`pressed data which has been stored on the optical
`disk to said data compression means;
`optical media storage means, comprising an optical
`disk for storing compressed data thereon, for storo
`ing compressed data received from said buffer
`memory means and for supplying compressed data
`stored on said optical disk to said buffer memory
`means; and
`microprocessor means for responding to said se-
`quence of commands received from said host inter-
`face means and for controlling data storage and
`retrieval operations of said buffer memory means
`and said optical media storage means, responsive to
`said sequence of commands;
`wherein all compressed data stored by said optical
`media storage means is stored in a buffer memory
`means prior to storage on said optical media stor-
`age means and prior to supply of said compressed
`data from said optical media storage means to said
`host computer;
`wherein while said compressed data is stored in said
`buffer memory means, prior to storage on said
`optical media storage means, said compressed data
`is organized by said microprocessor into discrete
`groupings or segments, and at
`least one record
`directory is constructed, each said record directory
`consisting of information pertaining to lengths of
`the compressed data records contained in a single
`discrete group or segment of compressed data;
`wherein data supplied to said host interface means by
`said host computer is organized into a sequence of
`records by said microprocessor means; and
`wherein information pertaining to individual data
`records which is contained within each said record
`directory defines the length of at least one record
`of a single file which includes such records.
`5. The system of claim 4 further comprising a high-
`level directory relating each file to a corresponding
`record directory or set of record directories is accessed
`to determine the location or sector address of the corre-
`sponding record directory or directories and records on
`the optical disk each time one or more records from a
`particular file are sought.
`6. The system of claim 5 wherein after said high-level
`directory has been accessed to determine the location or
`sector address of the first record directory for a particu-
`lar file, a quantity of compressed data including at least
`the particular record directory and a number of the
`corresponding records located contiguously with re-
`spect to said record directory are read from the optical
`disk by means of the host interface means and copied to
`the buffer memory, and the information pertaining to
`the length of each of the records which are stored in the
`corresponding record directory is employed by the
`microprocessor means to determine the particular re-
`cord or records sought by the host computer from the
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`4s
`
`50
`
`55
`
`65
`
`8
`quantity of compressed data copied to the buffer mem-
`ory.
`7. The system of claim 6 wherein said high level
`directory is stored at a predetermined physical location
`specified by said micrOprocessor on said disk.
`8. The system of claim 6 wherein said record directo-
`ries containing data pertaining to each of said records
`are stored in close physical proximity to the corre-
`sponding records on the disk.
`9. The system of claim 5 wherein the information
`stored in said record directories pertaining to each of
`the records consists of the length of each record.
`10. The system of claim 9 wherein a particular record
`of a sequence of records stored with respect to a given
`directory is located by counting the number of bytes of
`data determined in accordance with the record length
`information, beginning from a known starting point in
`said sequence of records.
`11. The system of claim 4 wherein said records are
`not of predetermined length.
`12. The system of claim 4 wherein said host interface
`means is connected to said host computer at a host
`communication port of said host computer adapted for
`communication with said magnetic media storage de-
`vice and is adapted to respond to a sequence of data
`storage commands identical to a sequence of such com-
`mands employed by said host computer to communi-
`cate with said magnetic media storage device.
`13. The system of claim 5 further comprising means
`for storing information relating to the status of the indi-
`vidual records stored by the optical disk, and to the
`relationship between successive portions of a single file
`not stored contiguous to one another on the optical
`disk.
`
`14. The system of claim 13 wherein said microproces-
`sor means is operatively connected to both said optical
`media storage device and to said buffer memory means
`for the purpose of controlling the transfer of said re-
`cords between said buffer memory means and said opti-
`cal media storage means.
`15. A method for storing compressed data, said com-
`pressed data being organized into a sequence of records
`with associated record directories on an optical media
`storage device wherein said records are not limited to a
`specific length, except to the extent that they may not
`exceed the largest record length value which may be
`expressed in the embedded directory said system com-
`prising a buffer memory, data compression means, a
`host interface means, and an optical media storage de-
`vice, means for connecting the buffer memory to the
`host interface means and to the optical media storage
`device, and microprocessor means for controlling the
`transfer of data therebetween,
`said method comprising the following steps per-
`formed in response to a request from a host com-
`puter to store a sequence of records:
`receiving said sequence of records at said host inter-
`face means and transferring said sequence of re-
`cords to said data compression means;
`compressing said sequence of records at said data
`compression means;
`transferring said sequence of compressed records
`from said data compression means to said buffer
`memory means;
`storing said sequence of compressed records in said
`buffer memory means;
`creating a record directory in said buffer memory
`means;
`
`NetApp
`
`Exhibit1004
`
`Page7
`
`NetApp Exhibit 1004 Page 7
`
`
`
`9
`
`5,247,646
`
`associating a record directory with up to a predeter-
`mined number of said compressed records; and
`storing said sequence of compressed records and said
`record directory on said optical media storage
`device; and
`
`said method comprising the following further steps
`performed in response to a request from the host
`computer for supply of one or more of the stored
`compressed records;
`copying all of the compressed records associated
`with the record directory with which the particu-
`lar record or records sought by the host are associ-
`ated into the buffer memory means;
`employing the record directory to locate the particu-
`lar compressed record or records sought by the
`host computer;
`transferring the compressed record or records sought
`to the data compression means;
`decompressing the records or records sought in the
`data compression means; and
`‘
`transferring the record or records sought to the host
`interface means from the data compression means;
`transferring the record or records'sought to the host
`from the host interface means.
`16. The method of claim 15 wherein said record di-
`
`rectory comprises information concerning the lengths
`of compressed records defined by the number of bytes
`of data contained within each compressed record.
`17. The method of claim 16 comprising the further
`step of organizing the compressed records into discrete
`groupings or segments prior to storage on said optical
`media storage device, said discrete groupings or seg-
`ments each consisting of the compressed records associ-
`ated with a particular record directory.
`'18. The method of claim 17 wherein the particular
`record sought by the host computer is located in the
`buffer memory by counting out a number of bytes of
`data corresponding to the total length of the preceding
`CompreSSed records from a predetermined starting
`point.
`p
`19. The method of claim 18 wherein the predeter-
`mined starting point is the end of the segment stored on
`the optical media storage device prior to the segment
`containing the compressed records sought by the host
`cOrnputer.
`20. The method of claim 19, wherein all of the com-
`pressed records associated with a predetermined record
`directory pertain to a single user file.
`21. The method of claim 20, comprising the further
`steps of generating a high level directory and accessing
`same to determine the locations of the record directo-
`
`ries associated with compressed records from that file,
`and copying at least the first of said record directories
`and the