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

Computer sysem data I/O by reference among CPUS and I/O devices

Assignee: Hewlett Packard Development Co LP
•
Filing: 1995-12-20
•
Granted: 1998-08-04
•
Expires: 2015-12-20
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An apparatus and method for getting descriptors to data and passing the descriptors among data sources and sinks, thereby avoiding copying the data among the data sources and sinks. The data source/sink which consumes the data actual initiates the copying of the actual data itself, using global pointers to the data in the descriptors.

Inventors

  • 👤 Leonard R. Fishler
  • 👤 Bahman Zargham

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 08:35
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/54; G06F9/544

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 122 words
In a data processing system having a distributed memory architecture that includes a plurality of data source/sinks (DSSs) having associated memories, coupled as nodes to a network and with data accessible by memory address over the network, a method comprising the steps of: creating a first descriptor to first data on a first of said plurality of DSSs; transferring said first descriptor onto a second of said plurality of DSSs without transferring the first data; and transferring said first descriptor from said second DSS onto a third of said plurality of DSSs, wherein the number of times said first data is transferred to said second DSS is less than the number of times said first descriptor is transferred from said second DSS.
Claim 2
Dependent Claim 122 words
In a data processing system having a distributed memory architecture that includes a plurality of data source/sinks (DSSs) having associated memories, coupled as nodes to a network and with data accessible by memory address over the network, a method comprising the steps of: creating a first descriptor to first data on a first of said plurality of DSSs; transferring said first descriptor onto a second of said plurality of DSSs without transferring the first data; and transferring said first descriptor from said second DSS onto a third of said plurality of DSSs, wherein the number of times said first data is transferred to said second DSS is less than the number of times said first descriptor is transferred from said second DSS.
Claim 3
Dependent Claim 34 words
The method of claim 1, further comprising the steps of: creating on said second DSS, a second descriptor to second data; and chaining said first and second descriptors to form a first chained descriptor.
Claim 4
Dependent Claim 22 words
The method of claim 1 further comprising the step of: transferring said first chained descriptor to one of said plurality of DSSs.
Claim 5
Dependent Claim 31 words
The method of claim 1, further comprising the step of: retrieving a portion of the first data from said first DSS to said third DSS by means of said first descriptor.
Claim 6
Dependent Claim 44 words
The method of claim 1 wherein one of said steps of transferring comprises duplicating said first descriptor, thereby creating a duplicate descriptor and incrementing a counter to said first data; and transferring one of said descriptor and said duplicate descriptor onto said second DSS.
Claim 7
Dependent Claim 21 words
The method of claim 1 wherein the number of times said first data is transferred to said second DSS is zero.
Claim 8
Dependent Claim 18 words
The method of claim 6 further comprising the steps of: destroying said duplicate descriptor; and decrementing said counter.
Claim 9
Dependent Claim 122 words
In a data processing system having a distributed memory architecture that includes a plurality of data source/sinks (DSS) having associated memories, coupled as nodes to a network and with data accessible by memory address over the network, a method comprising the steps of: creating a descriptor to data on a first of said plurality of DSSs; transferring said descriptor onto a second of said plurality of DSSs without transferring the data; dividing said descriptor into a plurality of descriptors, each of said plurality of descriptors describing a portion of the data; transferring one of said plurality of descriptors from said second DSS onto a third of said plurality of DSSs without transferring the portion of the data described by said one descriptor.
Claim 10
Dependent Claim 122 words
In a data processing system having a distributed memory architecture that includes a plurality of data source/sinks (DSS) having associated memories, coupled as nodes to a network and with data accessible by memory address over the network, a method comprising the steps of: creating a descriptor to data on a first of said plurality of DSSs; transferring said descriptor onto a second of said plurality of DSSs without transferring the data; dividing said descriptor into a plurality of descriptors, each of said plurality of descriptors describing a portion of the data; transferring one of said plurality of descriptors from said second DSS onto a third of said plurality of DSSs without transferring the portion of the data described by said one descriptor.
Claim 11
Dependent Claim 44 words
The method of claim 8 wherein said one of said steps of transferring comprises duplicating said descriptor, thereby creating a duplicate descriptor and incrementing a counter to said first data: and transferring one of said descriptor and said duplicate descriptor onto said second DSS.
Claim 12
Dependent Claim 18 words
The method of claim 9 further comprising the steps of: destroying said duplicate descriptor: and decrementing said counter.
Claim 13
Dependent Claim 29 words
The method of claim 8 further comprising the step of retrieving the portion of the data described by said one descriptor from said first DSS to said third DSS.
Claim 14
Dependent Claim 23 words
The method of claim 8 further comprising the step of chaining before each of said plurality of descriptors a respective descriptor to data.
Claim 15
Dependent Claim 15 words
The method of claim 12 wherein each said respective descriptor data comprises a protocol header.
Claim 16
Independent Claim 110 words
A medium for data storage wherein is located a computer program for performing data I/O among a plurality of data source/sinks (DSSs) by creating a descriptor to data on a first of said plurality of DSSs; transferring said descriptor onto a second of said plurality of DSSs without transferring the data; dividing said descriptor into a plurality of descriptors, each of said plurality of descriptors describing a portion of the data; transferring one of said plurality of descriptors from said second DSS onto a third of said plurality of DSSs; and retrieving the portion of the data described by said one descriptor from said first DSS to said third DSS.
Claim 17
Independent Claim 110 words
A medium for data storage wherein is located a computer program for performing data I/O among a plurality of data source/sinks (DSSs) by creating a descriptor to data on a first of said plurality of DSSs; transferring said descriptor onto a second of said plurality of DSSs without transferring the data; dividing said descriptor into a plurality of descriptors, each of said plurality of descriptors describing a portion of the data; transferring one of said plurality of descriptors from said second DSS onto a third of said plurality of DSSs; and retrieving the portion of the data described by said one descriptor from said first DSS to said third DSS.
Claim 18
Independent Claim 132 words
A medium for data storage where is located a computer program for performing data I/O in a data processing system having a distributed memory architecture that includes a plurality of data source/sinks (DSSS) having associated memories, coupled as nodes to a network and with data accessible by memory address over the network, by creating a first descriptor to first data on a first of said plurality of DSSs; transferring said first descriptor onto a second of said plurality of DSSs without transferring the first data; and transferring said first descriptor from said second DSS onto a third of said plurality of DSSs, wherein the number of times said first data is transferred to said second DSS is less than the number of times said first descriptor is transferred from said second DSS.
Claim 19
Independent Claim 132 words
A medium for data storage where is located a computer program for performing data I/O in a data processing system having a distributed memory architecture that includes a plurality of data source/sinks (DSSS) having associated memories, coupled as nodes to a network and with data accessible by memory address over the network, by creating a first descriptor to first data on a first of said plurality of DSSs; transferring said first descriptor onto a second of said plurality of DSSs without transferring the first data; and transferring said first descriptor from said second DSS onto a third of said plurality of DSSs, wherein the number of times said first data is transferred to said second DSS is less than the number of times said first descriptor is transferred from said second DSS.
Claim 20
Dependent Claim 33 words
The medium for data storage of claim 15 wherein said computer program further retrieves a portion of the first data from said DSS to said third DSS by means of said first descriptor.
Claim 21
Dependent Claim 100 words
In a data processing system having a distributed memory architecture that includes a plurality of data source/sinks (DSSs) having associated memories, coupled as nodes to a network and with data accessible by memory address over the network, a method comprising the steps of receiving on a first of said plurality of DSSs a descriptor to data, said data not resident on said first DSS, said descriptor including an address valid on the network for said data; and forwarding said descriptor to a second of said plurality of DSSs with said address unchanged, said data not resident on said second DSS.
Claim 22
Dependent Claim 100 words
In a data processing system having a distributed memory architecture that includes a plurality of data source/sinks (DSSs) having associated memories, coupled as nodes to a network and with data accessible by memory address over the network, a method comprising the steps of receiving on a first of said plurality of DSSs a descriptor to data, said data not resident on said first DSS, said descriptor including an address valid on the network for said data; and forwarding said descriptor to a second of said plurality of DSSs with said address unchanged, said data not resident on said second DSS.
Claim 23
Independent Claim 110 words
A medium for data storage where is located a computer program for performing data I/O in a data processing system having a distributed memory architecture that includes a plurality of data source/sinks (DSSs) having associated memories, coupled as nodes to a network and with data accessible by memory address over the network, by receiving on a first of said plurality of DSSs a descriptor to data, said data not resident on said first DSS, said descriptor including an address valid on the network for said data; and forwarding said descriptor to a second of said plurality of DSSs with said address unchanged, said data not resident on said second DSS.
Claim 24
Independent Claim 110 words
A medium for data storage where is located a computer program for performing data I/O in a data processing system having a distributed memory architecture that includes a plurality of data source/sinks (DSSs) having associated memories, coupled as nodes to a network and with data accessible by memory address over the network, by receiving on a first of said plurality of DSSs a descriptor to data, said data not resident on said first DSS, said descriptor including an address valid on the network for said data; and forwarding said descriptor to a second of said plurality of DSSs with said address unchanged, said data not resident on said second DSS.

References Cited (Backward Citations)

US4214305A Cited
US4503499A Cited
US4901232A Cited
US4674033A Cited
US4649473A Cited
US5475836A Cited
US4956771A Cited
US5557798A Cited
US5278834A Cited
US5414851A Cited
US5572645A Cited
US5602841A Cited
US5630059A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag