← Back to Patent Explorer
US4467421A Expired / Lapsed US ⏱️ 0.0 years remaining

Virtual storage system and method

Assignee: Storage Technology Corp
•
Filing: 1982-06-02
•
Granted: 1984-08-21
•
Expires: 2002-06-02
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A virtual storage system for use in conjunction with a host computer is disclosed. The system features a memory control processor external to the host computer which divides user-defined data sets into blocks of a size convenient for storage on, e.g., magnetic media and individually assigns these blocks to locations determined external to the host. In this way, the extent of a particular data file is not specified by the user; nor is empty space allocated in anticipation of future use. The virtual memory system may additionally comprise a high speed cache memory for receiving data written to the memory system at high speed from the host. Data anticipated to be the subject of future requests can be staged to the cache, so that it can be supplied to the host at high speed, thus improving system performance. Data compression and decompression may be incorporated in the storage system. Numerous data back-up and automated recovery processing operations may additionally be performed by this system without specific instruction from the host.

Inventors

  • 👤 Barry B. White

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-23 11:10
CPC Classifications
G; G06; G06F; G06F3/00; G06F3/06; G06F3/0601; G06F3/0668; G06F3/0671; G06F3/0673; G06F3/068; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0866; G06F3/0602; G06F3/061; G06F3/0613; G06F3/0628; G06F3/0662; G06F3/0664; G06F2212/00; G06F2212/31; G06F2212/312

Claims Analysis

Total Claims: 39
Claim 1
Independent Claim 156 words
Apparatus for the storage of digital data organized into records comprising: host interface means for receiving data from a host computer; cache means connected to said host interface means for temporary storage of said data; storage device interface means for connecting said cache means to one or more memory storage devices of one or more classes of storage devices for comparatively long-term storage of said data; and controller means including address recall means, for: (a) determining where said data is to be stored on said storage devices; (b) controlling flow of said data from said host interface means through said cache means and said storage device interface means onto said storage devices; and (c) storing the addresses at which said data has been stored on said storage devices; whereby a given user-defined data set may be stored on a plurality of storage devices, selected from one or more classes of storage devices by said controller means.
Claim 2
Dependent Claim 156 words
Apparatus for the storage of digital data organized into records comprising: host interface means for receiving data from a host computer; cache means connected to said host interface means for temporary storage of said data; storage device interface means for connecting said cache means to one or more memory storage devices of one or more classes of storage devices for comparatively long-term storage of said data; and controller means including address recall means, for: (a) determining where said data is to be stored on said storage devices; (b) controlling flow of said data from said host interface means through said cache means and said storage device interface means onto said storage devices; and (c) storing the addresses at which said data has been stored on said storage devices; whereby a given user-defined data set may be stored on a plurality of storage devices, selected from one or more classes of storage devices by said controller means.
Claim 3
Dependent Claim 50 words
The apparatus of claim 1 wherein each said data set is divided into pages of length convenient for storage on devices of said classes by said controller, which operates individually on each of said pages to determine where and on what class of storage devices said page shall be stored.
Claim 4
Dependent Claim 57 words
The apparatus of claim 1 wherein said host interface means comprises channel adapter means for compression of said data by replacing successive identical bytes of data by a compressed data word comprised of one of said identical bytes together with a character indicative of the number of times said identical byte was repeated in the uncompressed data.
Claim 5
Dependent Claim 23 words
The apparatus of claim 3 wherein said compressed data word additionally comprises a character for identification of said compressed data word as such.
Claim 6
Dependent Claim 139 words
A data processing and storage system, comprising: at least one host computer for performing arithmetic and logic operations on digital data, an extremely high speed, relatively low capacity memory means in said computer, and interface means for transmitting and receiving data from external memory means; and a virtual storage system, comprising: relatively low speed, high capacity storage devices; host interface means for receiving data from and transmitting data to said host; a high speed, relatively low capacity cache memory means connected to said host interface means; and a controller for allocating appropriate storage locations on said relatively low speed, high capacity storage devices for data received from said host and stored in said cache, for accordingly controlling the flow of data from said cache to said relatively low speed, high capacity storage devices, and for storing said storage locations.
Claim 7
Dependent Claim 139 words
A data processing and storage system, comprising: at least one host computer for performing arithmetic and logic operations on digital data, an extremely high speed, relatively low capacity memory means in said computer, and interface means for transmitting and receiving data from external memory means; and a virtual storage system, comprising: relatively low speed, high capacity storage devices; host interface means for receiving data from and transmitting data to said host; a high speed, relatively low capacity cache memory means connected to said host interface means; and a controller for allocating appropriate storage locations on said relatively low speed, high capacity storage devices for data received from said host and stored in said cache, for accordingly controlling the flow of data from said cache to said relatively low speed, high capacity storage devices, and for storing said storage locations.
Claim 8
Dependent Claim 19 words
The system of claim 5 wherein said relatively low speed, high capacity storage devices include devices of plural classes.
Claim 9
Independent Claim 46 words
The system of either of claims 5 or 6, in which said host computer does not control the location of storage of said data on said relatively low speed, high capacity storage devices, nor the choice of class of device on which said data is stored.
Claim 10
Dependent Claim 44 words
The system of claim 5 wherein said data is divided by said controller into pages of convenient length for storage on said relatively low speed, high capacity storage devices and the location for storage of each said page is determined individually by said controller.
Claim 11
Dependent Claim 49 words
The system of claim 5 wherein said controller operates to store a single user-defined data set over plural storage devices as required, whereby a user of said system is not required to define the extent of storage locations for the containment of data sets operated on by said host.
Claim 12
Dependent Claim 32 words
The system of claim 5 wherein a single user identified data set may be divided into pages by said controller and stored on differing ones of said relatively low speed storage devices.
Claim 13
Independent Claim 117 words
The method of operation of a data processing and storage system, said system comprising data processing means for outputting results of said processing for storage, and a data storage unit, said data storage unit comprising: plural types of addressable storage devices for long-term storage of said data; and controller means for allocating long-term storage locations within said long-term storage devices to said data and for controlling flow of data from said data processing means to said long-term storage devices; wherein the improvement comprises performing the step of determining where and on what type of addressable data storage device(s) the data is to be stored in said controller means, exclusive of the function of said data processing unit.
Claim 14
Independent Claim 117 words
The method of operation of a data processing and storage system, said system comprising data processing means for outputting results of said processing for storage, and a data storage unit, said data storage unit comprising: plural types of addressable storage devices for long-term storage of said data; and controller means for allocating long-term storage locations within said long-term storage devices to said data and for controlling flow of data from said data processing means to said long-term storage devices; wherein the improvement comprises performing the step of determining where and on what type of addressable data storage device(s) the data is to be stored in said controller means, exclusive of the function of said data processing unit.
Claim 15
Dependent Claim 25 words
The method of claim 11, wherein data is stored on relatively higher speed storage devices, and is periodically copied to relatively lower speed storage devices.
Claim 16
Dependent Claim 28 words
The method of claim 12 wherein only that data stored on said relatively higher speed storage device in the interim following the last previous copying operation is copied.
Claim 17
Dependent Claim 28 words
The method of claim 11 wherein said data is simultaneously stored on differing ones of storage devices of the same type upon receipt in said data storage unit.
Claim 18
Dependent Claim 39 words
The method of claim 11 wherein said data is supplied by said processing unit to said storage unit in user-defined data sets, and said data sets are divided into pages by said controller for storage in said storage unit.
Claim 19
Dependent Claim 34 words
The method of claim 15 wherein the length of each said page is determined in accordance with the characteristics of the type of storage device on which storage locations for said pages are allocated.
Claim 20
Dependent Claim 40 words
The method of claim 11, further comprising the step of temporarily storing said data in said short-term memory means within said data storage unit during said step of determining at what long-term storage location said data is to be stored.
Claim 21
Dependent Claim 30 words
The method of claim 11 further comprising the step of compressing said data prior to said step of determining at what long-term storage location said data is to be stored.
Claim 22
Dependent Claim 21 words
The method of claim 18 wherein said data is divided into pages for storage assignment after said compressing step is performed.
Claim 23
Dependent Claim 120 words
A magnetic data storage system comprising means for receiving data from a host computer, means for temporary storage of said data, means for allocating locations on long-term storage media for said data, and for controlling flow of said data through said system, memory means for recall of said locations for long-term storage of said data, and means for periodically duplicating data stored in a first long-term storage location by copying it to a second long-term storage means, wherein said means for duplicating data is controlled such that said copying step is performed with respect to only that data which has been operated upon in the interim since the last preceding copying step, as indicated by said memory means for recall.
Claim 24
Dependent Claim 120 words
A magnetic data storage system comprising means for receiving data from a host computer, means for temporary storage of said data, means for allocating locations on long-term storage media for said data, and for controlling flow of said data through said system, memory means for recall of said locations for long-term storage of said data, and means for periodically duplicating data stored in a first long-term storage location by copying it to a second long-term storage means, wherein said means for duplicating data is controlled such that said copying step is performed with respect to only that data which has been operated upon in the interim since the last preceding copying step, as indicated by said memory means for recall.
Claim 25
Dependent Claim 72 words
A data storage and recall system, comprising means for receiving data from means for processing data, means for long-term storage of said data, means for temporary storage of said data, means for allocating locations on long-term storage media for said data, means for controlling flow of said data through said system, memory means for recall of said locations for long-term storage of said data, and means for outputting said data upon instruction.
Claim 26
Dependent Claim 72 words
A data storage and recall system, comprising means for receiving data from means for processing data, means for long-term storage of said data, means for temporary storage of said data, means for allocating locations on long-term storage media for said data, means for controlling flow of said data through said system, memory means for recall of said locations for long-term storage of said data, and means for outputting said data upon instruction.
Claim 27
Dependent Claim 144 words
A data storage system for connection to a host computer, said host computer being adapted to indicate to said storage system that a particular data access request is one of a sequence of such requests to be directed to a particular user data set during execution of a particular user program, wherein said data storage system comprises: long-term, lower speed data storage means and shorter term, higher speed data storage means, where upon receipt from said host computer by said data storage system of a first data access command request directed to a portion of a user data set, said data storage system transfers a larger portion of said user data set than that requested from said large capacity, slower speed memory means into said smaller capacity, higher speed memory means in anticipation of further host access requests directed to said user data set.
Claim 28
Dependent Claim 144 words
A data storage system for connection to a host computer, said host computer being adapted to indicate to said storage system that a particular data access request is one of a sequence of such requests to be directed to a particular user data set during execution of a particular user program, wherein said data storage system comprises: long-term, lower speed data storage means and shorter term, higher speed data storage means, where upon receipt from said host computer by said data storage system of a first data access command request directed to a portion of a user data set, said data storage system transfers a larger portion of said user data set than that requested from said large capacity, slower speed memory means into said smaller capacity, higher speed memory means in anticipation of further host access requests directed to said user data set.
Claim 29
Dependent Claim 47 words
The system of claim 22 wherein said user data set is divided into pages by controller means comprised in said storage system, said pages being stored on plural ones of long-term data storage devices, the locations of storage of said pages being retained in address memory means.
Claim 30
Dependent Claim 149 words
Method of operation of a data processing and storage system comprising a host computer system and a data storage system, said data storage system comprising: long-term magnetic storage media of relatively high capacity and relatively low speed, and short-term semi-conductor memory means of relatively low capacity and relatively high speed, wherein said host indicates to said storage system that a particular data access request is one of a series of access requests directed to a particular user-defined data set in execution of a user program, wherein said data storage system comprises processor means for responding to said indication by transferring portions of said user defined data set not called for by said host from said large capacity, slow speed magnetic storage means to said low capacity, high speed semi-conductor memory means in anticipation of further requests directed to said data set by said host in execution of said program.
Claim 31
Dependent Claim 149 words
Method of operation of a data processing and storage system comprising a host computer system and a data storage system, said data storage system comprising: long-term magnetic storage media of relatively high capacity and relatively low speed, and short-term semi-conductor memory means of relatively low capacity and relatively high speed, wherein said host indicates to said storage system that a particular data access request is one of a series of access requests directed to a particular user-defined data set in execution of a user program, wherein said data storage system comprises processor means for responding to said indication by transferring portions of said user defined data set not called for by said host from said large capacity, slow speed magnetic storage means to said low capacity, high speed semi-conductor memory means in anticipation of further requests directed to said data set by said host in execution of said program.
Claim 32
Dependent Claim 35 words
The method of claim 24 wherein said user-defined data set is divided into pages, said pages being individually assigned to storage locations on plural ones of said long-term magnetic memory devices by said processor means.
Claim 33
Dependent Claim 109 words
A data storage subsystem for connection to a host computer by way of a channel comprising: magnetic disk data storage means; magnetic tape data storage means; solid-state cache data storage means; data bus means for transmission of data from said channel to said disk means, from said disk means to said cache means and from said cache means to said tape means; and controller means for directing the flow of data along said data bus means connecting said cache means, said channel means and said tape means unit, whereby a data set can be copied from a disk memory means into said cache and thence to said tape means.
Claim 34
Dependent Claim 109 words
A data storage subsystem for connection to a host computer by way of a channel comprising: magnetic disk data storage means; magnetic tape data storage means; solid-state cache data storage means; data bus means for transmission of data from said channel to said disk means, from said disk means to said cache means and from said cache means to said tape means; and controller means for directing the flow of data along said data bus means connecting said cache means, said channel means and said tape means unit, whereby a data set can be copied from a disk memory means into said cache and thence to said tape means.
Claim 35
Dependent Claim 25 words
The subsystem of claim 26 further comprising means for determining where and on what type of magnetic storage media said data is to be stored.
Claim 36
Dependent Claim 40 words
The subsystem of claim 26 wherein said means for determining further comprises means for division of a user data set into subportions sized in accordance with the physical characteristics of the media on which said subportions are to be stored.
Claim 37
Dependent Claim 30 words
The subsystem of claim 28 further comprising means for recall of the location at which said subportions are stored, and for reassembly of said subportions into a complete data set.
Claim 38
Dependent Claim 134 words
In a data storage subsystem adapted to be connected to a channel interfacing a host computer system with a data storage subsystem, the improvement which comprises: said data storage subsystem comprising: controller means; disk storage means; tape storage means; and solid state cache memory means, said cache means being effectively connected to said magnetic disk storage means and to said magnetic tape storage means, said controller means controlling flow of data between said disk means and said cache means and between said cache means and said tape means, whereby upon indication that a given data set or portion of a data set should be copied to tape media for backup purposes, said data set or portion of a data set may be copied from said disk to said cache and thence to said tape.
Claim 39
Dependent Claim 134 words
In a data storage subsystem adapted to be connected to a channel interfacing a host computer system with a data storage subsystem, the improvement which comprises: said data storage subsystem comprising: controller means; disk storage means; tape storage means; and solid state cache memory means, said cache means being effectively connected to said magnetic disk storage means and to said magnetic tape storage means, said controller means controlling flow of data between said disk means and said cache means and between said cache means and said tape means, whereby upon indication that a given data set or portion of a data set should be copied to tape media for backup purposes, said data set or portion of a data set may be copied from said disk to said cache and thence to said tape.

References Cited (Backward Citations)

US4084228A Cited
US4035778A Cited
US4077059A Cited
US4096567A Cited
US4091455A Cited
US4189770A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1987-08-21 1988-02-20 1988-08-21 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1991-08-21 1992-02-20 1992-08-21 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1995-08-21 1996-02-20 1996-08-21 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag