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

Adaptive multitasking for dataset storage

Assignee: International Business Machines Corp
•
Filing: 1996-05-20
•
Granted: 1998-07-07
•
Expires: 2016-05-20
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Data is stored in one or more data storage devices, the number of active data storage devices being adaptively adjusted to maximize parallelism while minimizing device overhead. Multiple datasets are first received, these being designated for storage in multiple data storage devices. Next, a first one of the received datasets is stored in a first one of the data storage devices. Concurrently with storage of the first dataset, the following steps are performed: (1) selecting a second received dataset from those remaining to be stored, (2) selecting an available data storage device by employing a predetermined criteria, and (3) beginning storage of the second dataset in the selected data storage device. The predetermined criteria for selecting an available data storage device may involve, for example, selecting an available device based on a "first fit" or a "best fit" scheme. Concurrently with storage of the second dataset, storage of a third dataset starts. Likewise, the process of storing each subsequent dataset commences while the previous dataset is being stored. This technique promotes efficiency, since later-received datasets may be stored in previously used storage devices that have already finished storing earlier datasets. Accordingly, less processing overhead is occupied in activating previously dormant data storage devices.

Inventors

  • 👤 Donald Reynold Blea
  • 👤 Ronald Maynard Kern
  • 👤 Gregory Edward McBride
  • 👤 David Michael Shackelford

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 04:24
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/16; G06F11/20; G06F11/2053; G06F11/2056; G06F11/2082; G06F3/00; G06F3/06; G06F3/0601; G06F3/0602; G06F3/0614; G06F3/0628; G06F3/0629; G06F3/0632; G06F3/0668; G06F3/0671; G06F3/0683; G06F3/0689; G06F11/2064; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99956

Claims Analysis

Total Claims: 48
Claim 1
Independent Claim 148 words
A method for operating a digital computing system to store data using multiple data storage devices, said method comprising the steps of: (a) receiving a plurality of datasets, the plurality of datasets being in an order; (b) processing a dataset first in order by: choosing a data storage device that is available to satisfy data storage requests; and storing the first dataset in the chosen data storage device; (c) processing a dataset next in order by performing a sequence of processing steps, said processing steps being initiated during the steps of processing a dataset immediately previous in order, said processing steps comprising: selecting a remaining dataset next in order; employing a predetermined criteria to select a data storage device that is available to satisfy data storage requests; and storing the selected dataset in the selected data storage device; and (d) repeating step (c) a predetermined number of times.
Claim 2
Independent Claim 148 words
A method for operating a digital computing system to store data using multiple data storage devices, said method comprising the steps of: (a) receiving a plurality of datasets, the plurality of datasets being in an order; (b) processing a dataset first in order by: choosing a data storage device that is available to satisfy data storage requests; and storing the first dataset in the chosen data storage device; (c) processing a dataset next in order by performing a sequence of processing steps, said processing steps being initiated during the steps of processing a dataset immediately previous in order, said processing steps comprising: selecting a remaining dataset next in order; employing a predetermined criteria to select a data storage device that is available to satisfy data storage requests; and storing the selected dataset in the selected data storage device; and (d) repeating step (c) a predetermined number of times.
Claim 3
Dependent Claim 29 words
The method of claim 1, step (d) comprising the steps of repeating step (c) until each of the plurality of datasets has been stored in a data storage device.
Claim 4
Dependent Claim 13 words
The method of claim 1, each dataset having at least a predetermined size.
Claim 5
Dependent Claim 46 words
The method of claim 1, step (c) further comprising the steps of: determining whether the selected dataset exceeds a predetermined size threshold, and if so, dividing the selected dataset into a number of sub-components and separately processing each sub-component as one of the plurality of datasets.
Claim 6
Dependent Claim 80 words
The method of claim 1, the data storage devices having a predetermined order, the steps of employing a predetermined criteria to select a data storage device that is available to satisfy data storage requests comprising the steps of: selecting a first data storage device next in order; and determining whether the first data storage device is not available to satisfy data storage requests, and if so, selecting a data storage device next in order to the first data storage device.
Claim 7
Dependent Claim 73 words
The method of claim 1, the data storage devices having a predetermined order, the steps of employing a predetermined criteria to select a storage device that is available to satisfy data storage requests comprising the steps of: identifying data storage devices that are available to satisfy data storage requests; and selecting from the identified data storage devices that are available to satisfy data storage requests a data storage device presently next in order.
Claim 8
Dependent Claim 41 words
The method of claim 1, the steps of employing a predetermined criteria to select an available data storage device comprising the steps of: selecting a data storage device having less occupied storage space than at least one other data storage device.
Claim 9
Dependent Claim 99 words
The method of claim 1, further comprising steps of: creating a status record indicating whether each of the data storage devices is available or not available to satisfy data storage requests; each time storage of a dataset begins in a data storage device, updating the status record to indicate that said data storage device is presently not available to satisfy data storage requests; said step of employing a predetermined criteria to select an available data storage device comprising the steps of referencing the status record to identify a data storage device that is available to satisfy data storage requests.
Claim 10
Dependent Claim 21 words
The method of claim 1, the order of the plurality of datasets being an order in which the datasets are received.
Claim 11
Independent Claim 116 words
A method of transferring an ordered sequence of datasets from a buffer to multiple data storage devices, comprising the steps of: (a) selecting a dataset according to the order and selecting an available data storage device according to a predetermined criteria; (b) storing the selected dataset in the selected data storage device; (c) substantially concurrently with the storing step, selecting a dataset next in order and choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria; (d) storing the chosen dataset in the chosen data storage device; and (e) repeating steps (c) and (d) until all datasets in the sequence have been stored in a data storage device.
Claim 12
Independent Claim 116 words
A method of transferring an ordered sequence of datasets from a buffer to multiple data storage devices, comprising the steps of: (a) selecting a dataset according to the order and selecting an available data storage device according to a predetermined criteria; (b) storing the selected dataset in the selected data storage device; (c) substantially concurrently with the storing step, selecting a dataset next in order and choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria; (d) storing the chosen dataset in the chosen data storage device; and (e) repeating steps (c) and (d) until all datasets in the sequence have been stored in a data storage device.
Claim 13
Dependent Claim 21 words
The method of claim 10, the order of the plurality of datasets being an order in which the datasets are received.
Claim 14
Dependent Claim 76 words
The method of claim 10, the data storage devices having a predetermined order, the step of choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria comprising the steps of: (1) determining whether a data storage device next in order is not available to satisfy data storage requests, and if not, choosing said data storage device; (2) otherwise, repeating step (1) until a data storage device is chosen.
Claim 15
Dependent Claim 81 words
The method of claim 10, the data storage devices having a predetermined order, the step of choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria comprising the steps of: identifying data storage devices that are available to satisfy storage requests; and selecting from the identified data storage devices that are available to satisfy data storage requests a data storage device that is available to satisfy data storage requests presently next in order.
Claim 16
Dependent Claim 56 words
The method of claim 10, the data storage devices having a predetermined order, the step of choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria comprising the steps of: selecting a data storage device having less occupied storage space than at least one other data storage device.
Claim 17
Dependent Claim 174 words
An article of manufacture, comprising a data storage medium tangibly embodying a program of machine readable instructions executable by a digital processing apparatus to perform method steps for operating a digital computing system to store data using multiple data storage devices, said method steps comprising the steps of: (a) receiving a plurality of datasets, the plurality of datasets being in an order; (b) processing a dataset first in order by: choosing a data storage device that is available to satisfy data storage requests; and storing the first dataset in the chosen data storage device; (c) processing a dataset next in order by performing a sequence of processing steps, said processing steps being initiated during the steps of processing a dataset immediately previous in order, said processing steps comprising: selecting a remaining dataset next in order; employing a predetermined criteria to select a data storage device that is available to satisfy data storage requests; and storing the selected dataset in the selected data storage device; and (d) repeating step (c) a predetermined number of times.
Claim 18
Dependent Claim 174 words
An article of manufacture, comprising a data storage medium tangibly embodying a program of machine readable instructions executable by a digital processing apparatus to perform method steps for operating a digital computing system to store data using multiple data storage devices, said method steps comprising the steps of: (a) receiving a plurality of datasets, the plurality of datasets being in an order; (b) processing a dataset first in order by: choosing a data storage device that is available to satisfy data storage requests; and storing the first dataset in the chosen data storage device; (c) processing a dataset next in order by performing a sequence of processing steps, said processing steps being initiated during the steps of processing a dataset immediately previous in order, said processing steps comprising: selecting a remaining dataset next in order; employing a predetermined criteria to select a data storage device that is available to satisfy data storage requests; and storing the selected dataset in the selected data storage device; and (d) repeating step (c) a predetermined number of times.
Claim 19
Dependent Claim 31 words
The article of manufacture of claim 15, step (d) comprising the steps of repeating step (c) until each of the plurality of datasets has been stored in a data storage device.
Claim 20
Dependent Claim 15 words
The article of manufacture of claim 15, each dataset having at least a predetermined size.
Claim 21
Dependent Claim 48 words
The article of manufacture of claim 15, step (c) further comprising the steps of: determining whether the selected dataset exceeds a predetermined size threshold, and if so, dividing the selected dataset into a number of sub-components and separately processing each sub-component as one of the plurality of datasets.
Claim 22
Dependent Claim 82 words
The article of manufacture of claim 15, the data storage devices having a predetermined order, the steps of employing a predetermined criteria to select a data storage device that is available to satisfy data storage requests comprising the steps of: selecting a first data storage device next in order; and determining whether the first data storage device is not available to satisfy data storage requests, and if so, selecting a data storage device next in order to the first data storage device.
Claim 23
Dependent Claim 73 words
The article of manufacture of claim 15, the data storage devices having a predetermined order, the steps of employing a predetermined criteria to select a storage device that is available to satisfy data storage requests comprising the steps of: identifying data storage devices that are available to satisfy data storage requests; and selecting from the identified data storage devices that are available to satisfy data storage requests a data storage device presently next.
Claim 24
Dependent Claim 43 words
The article of manufacture of claim 15, the steps of employing a predetermined criteria to select an available data storage device comprising the steps of: selecting a data storage device having less occupied storage space than at least one other data storage device.
Claim 25
Dependent Claim 101 words
The article of manufacture of claim 15, further comprising steps of: creating a status record indicating whether each of the data storage devices is available or not available to satisfy data storage requests; each time storage of a dataset begins in a data storage device, updating the status record to indicate that said data storage device is presently not available to satisfy data storage requests; said step of employing a predetermined criteria to select an available data storage device comprising the steps of referencing the status record to identify a data storage device that is available to satisfy data storage requests.
Claim 26
Dependent Claim 23 words
The article of manufacture of claim 15, the order of the plurality of datasets being an order in which the datasets are received.
Claim 27
Dependent Claim 141 words
An article of manufacture, comprising a data storage medium tangibly embodying a program of machine readable instructions executable by a digital processing apparatus to perform method steps for transferring an ordered sequence of datasets from a buffer to multiple data storage devices, said method steps comprising: (a) selecting a dataset according to the order and selecting an available data storage device according to a predetermined criteria; (b) storing the selected dataset in the selected data storage device; (c) substantially concurrently with the storing step, selecting a dataset next in order and choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria; (d) storing the chosen dataset in the chosen data storage device; and (e) repeating steps (c) and (d) until all datasets in the sequence have been stored in a data storage device.
Claim 28
Dependent Claim 141 words
An article of manufacture, comprising a data storage medium tangibly embodying a program of machine readable instructions executable by a digital processing apparatus to perform method steps for transferring an ordered sequence of datasets from a buffer to multiple data storage devices, said method steps comprising: (a) selecting a dataset according to the order and selecting an available data storage device according to a predetermined criteria; (b) storing the selected dataset in the selected data storage device; (c) substantially concurrently with the storing step, selecting a dataset next in order and choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria; (d) storing the chosen dataset in the chosen data storage device; and (e) repeating steps (c) and (d) until all datasets in the sequence have been stored in a data storage device.
Claim 29
Dependent Claim 23 words
The article of manufacture of claim 24, the order of the plurality of datasets being an order in which the datasets are received.
Claim 30
Dependent Claim 78 words
The article of manufacture of claim 24, the data storage devices having a predetermined order, the step of choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria comprising the steps of: (1) determining whether a data storage device next in order is not available to satisfy data storage requests, and if not, choosing said data storage device; (2) otherwise, repeating step (1) until a data storage device is chosen.
Claim 31
Dependent Claim 76 words
The article of manufacture of claim 24, the data storage devices having a predetermined order, the step of choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria comprising the steps of: identifying data storage devices that are available to satisfy data storage requests; and selecting from the identified data storage devices that are available to satisfy data storage requests a data storage device presently next in order.
Claim 32
Dependent Claim 51 words
The article of manufacture of claim 24, the data storage devices having a predetermined order, the step of choosing a non-busy data storage device according to a predetermined criteria comprising the steps of: selecting a data storage device having less occupied storage space than at least one other data storage device.
Claim 33
Dependent Claim 160 words
A digital processing apparatus, comprising: multiple data storage devices; and a host processor, coupled to the multiple storage devices, to adaptive store data in the multiple data storage devices by performing method steps comprising: (a) receiving a plurality of datasets, the plurality of datasets being in an order; (b) processing a dataset first in order by: choosing a data storage device that is available to satisfy data storage requests; and storing the first dataset in the chosen data storage device; (c) processing a dataset next in order by performing a sequence of processing steps, said processing steps being initiated during the steps of processing a dataset immediately previous in order, said processing steps comprising: selecting a remaining dataset next in order; employing a predetermined criteria to select a data storage device that is available to satisfy data storage requests; and storing the selected dataset in the selected data storage device; and (d) repeating step (c) a predetermined number of times.
Claim 34
Dependent Claim 160 words
A digital processing apparatus, comprising: multiple data storage devices; and a host processor, coupled to the multiple storage devices, to adaptive store data in the multiple data storage devices by performing method steps comprising: (a) receiving a plurality of datasets, the plurality of datasets being in an order; (b) processing a dataset first in order by: choosing a data storage device that is available to satisfy data storage requests; and storing the first dataset in the chosen data storage device; (c) processing a dataset next in order by performing a sequence of processing steps, said processing steps being initiated during the steps of processing a dataset immediately previous in order, said processing steps comprising: selecting a remaining dataset next in order; employing a predetermined criteria to select a data storage device that is available to satisfy data storage requests; and storing the selected dataset in the selected data storage device; and (d) repeating step (c) a predetermined number of times.
Claim 35
Dependent Claim 29 words
The apparatus of claim 29, step (d) comprising the steps of repeating step (c) until each of the plurality of datasets has been stored in a data storage device.
Claim 36
Dependent Claim 13 words
The apparatus of claim 29, each dataset having at least a predetermined size.
Claim 37
Dependent Claim 46 words
The apparatus of claim 29, step (c) further comprising the steps of: determining whether the selected dataset exceeds a predetermined size threshold, and if so, dividing the selected dataset into a number of sub-components and separately processing each sub-component as one of the plurality of datasets.
Claim 38
Dependent Claim 80 words
The apparatus of claim 29, the data storage devices having a predetermined order, the steps of employing a predetermined criteria to select a data storage device that is available to satisfy data storage requests comprising the steps of: selecting a first data storage device next in order; and determining whether the first data storage device is not available to satisfy data storage requests, and if so, selecting a data storage device next in order to the first data storage device.
Claim 39
Dependent Claim 73 words
The apparatus of claim 29, the data storage devices having a predetermined order, the steps of employing a predetermined criteria to select a storage device that is available to satisfy data storage requests comprising the steps of: identifying data storage devices that are available to satisfy data storage requests; and selecting from the identified data storage devices that are available to satisfy data storage requests a data storage device presently next in order.
Claim 40
Dependent Claim 41 words
The apparatus of claim 29, the steps of employing a predetermined criteria to select an available data storage device comprising the steps of: selecting a data storage device having less occupied storage space than at least one other data storage device.
Claim 41
Dependent Claim 99 words
The apparatus of claim 29, further comprising steps of: creating a status record indicating whether each of the data storage devices is available or not available to satisfy data storage requests; each time storage of a dataset begins in a data storage device, updating the status record to indicate that said data storage device is presently not available to satisfy data storage requests; said step of employing a predetermined criteria to select an available data storage device comprising the steps of referencing the status record to identify a data storage device that is available to satisfy data storage requests.
Claim 42
Dependent Claim 21 words
The apparatus of claim 29, the order of the plurality of datasets being an order in which the datasets are received.
Claim 43
Dependent Claim 138 words
A digital computing system, comprising: multiple data storage devices; a buffer connected to each of the storage devices; and a host processor to transfer an ordered sequence of datasets from the buffer to the multiple data storage devices by performing method steps comprising: (a) selecting a dataset according to the order and selecting an available data storage device according to a predetermined criteria; (b) storing the selected dataset in the selected data storage device; (c) substantially concurrently with the storing step, selecting a dataset next in order and choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria; (d) storing the chosen dataset in the chosen data storage device; and (e) repeating steps (c) and (d) until all datasets in the sequence have been stored in a data storage device.
Claim 44
Dependent Claim 138 words
A digital computing system, comprising: multiple data storage devices; a buffer connected to each of the storage devices; and a host processor to transfer an ordered sequence of datasets from the buffer to the multiple data storage devices by performing method steps comprising: (a) selecting a dataset according to the order and selecting an available data storage device according to a predetermined criteria; (b) storing the selected dataset in the selected data storage device; (c) substantially concurrently with the storing step, selecting a dataset next in order and choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria; (d) storing the chosen dataset in the chosen data storage device; and (e) repeating steps (c) and (d) until all datasets in the sequence have been stored in a data storage device.
Claim 45
Dependent Claim 21 words
The apparatus of claim 38, the order of the plurality of datasets being an order in which the datasets are received.
Claim 46
Dependent Claim 76 words
The apparatus of claim 38, the data storage devices having a predetermined order, the step of choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria comprising the steps of: (1) determining whether a data storage device next in order is not available to satisfy data storage requests, and if not, choosing said data storage device; (2) otherwise, repeating step (1) until a data storage device is chosen.
Claim 47
Dependent Claim 74 words
The apparatus of claim 38, the data storage devices having a predetermined order, the step of choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria comprising the steps of: identifying data storage devices that are available to satisfy data storage requests; and selecting from the identified data storage devices that are available to satisfy data storage requests a data storage device presently next in order.
Claim 48
Dependent Claim 56 words
The apparatus of claim 38, the data storage devices having a predetermined order, the step of choosing a data storage device that is available to satisfy data storage requests according to a predetermined criteria comprising the steps of: selecting a data storage device having less occupied storage space than at least one other data storage device.

References Cited (Backward Citations)

US4587628A Cited
US5131087A Cited
US5485610A Cited
US5193184A Cited
US5490260A Cited
US5627995A Cited
US5333299A Cited
US5379412A Cited
US5404510A Cited
US5652879A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-07-06 2002-01-05 2002-07-07 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-07-06 2006-01-05 2006-07-07 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-07-06 2010-01-05 2010-07-07 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag