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

Method and apparatus for transporting interface definition language-defined data structures between heterogeneous systems

Assignee: Flash Networks Ltd
•
Filing: 1996-07-11
•
Granted: 1999-01-12
•
Expires: 2016-07-11
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for transporting IDL-defined data structures to and from a format convenient for transport between two computers are disclosed. The data structures is originally described in a string. The string description is converted to a different format containing additional information about the alignment and size of the data structure. An application in the sending computer removes the alignment from the data structure and stores the data structure in a buffer. The data structure is stored in the output buffer in a predetermined format that is based upon the type of the data structure. The buffer is then transmitted to a data file or to the memory of the receiving computer. The receiving computer extracts the data structure from the buffer based upon the predetermined format. The data structure is realigned and stored in the memory of the second computer.

Inventors

  • 👤 Andrew Schofield

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 22:36
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/465; Y; Y10; Y10S; Y10S707/00; Y10S707/99941; Y10S707/99942

Claims Analysis

Total Claims: 33
Claim 1
Independent Claim 150 words
A method for transporting a data structure from a host computer to a client computer, the data structure having at least one field, the method comprising the steps of: generating, by the host computer, a string description of the data structure; generating, by the host computer, a host description of the string description, the host description describing the size, alignment, and type of each field in the data structure as used within the host computer; generating, by the client computer, a client description of the string description, the client description describing the size, alignment, and type of each field in the data structure as used within the client computer; packing, by the host computer, the data structure in an output buffer of the host computer based upon the description in the host description; and transporting, by the host computer, the output buffer to an input buffer of the client computer.
Claim 2
Independent Claim 150 words
A method for transporting a data structure from a host computer to a client computer, the data structure having at least one field, the method comprising the steps of: generating, by the host computer, a string description of the data structure; generating, by the host computer, a host description of the string description, the host description describing the size, alignment, and type of each field in the data structure as used within the host computer; generating, by the client computer, a client description of the string description, the client description describing the size, alignment, and type of each field in the data structure as used within the client computer; packing, by the host computer, the data structure in an output buffer of the host computer based upon the description in the host description; and transporting, by the host computer, the output buffer to an input buffer of the client computer.
Claim 3
Dependent Claim 35 words
A method for transporting a data structure, as recited in claim 1, further comprising the step, performed by the client computer, of: generating a second data structure using the input buffer and the client description.
Claim 4
Dependent Claim 90 words
A method for transporting a data structure, as recited in claim 2, wherein the step of packing by the host computer further comprises the steps, performed by the host computer, of: storing floating point and double type components of the data structure in a format for representing floating point numbers; storing long, long long, unsigned long, unsigned long long, short, and unsigned short type components of the data structure in a format for representing integers; and storing character type components of the data structure in a format for representing characters.
Claim 5
Dependent Claim 116 words
A method for transporting a data structure, as recited in claim 2, wherein the step of packing by the host computer comprises the steps, performed by the host computer, of: converting "any" type components of the data structure to an unsigned long that specifies a length of the string description, the string description, and components of the "any" data structure; storing the unsigned long in the format for representing integers; storing the string as an unsigned long indicating the length of the string followed by a plurality of characters; storing each of the plurality of characters in the format for representing characters; and storing each component of the "any" data structure according to a predetermined format.
Claim 6
Dependent Claim 116 words
A method for transporting a data structure, as recited in claim 2, wherein the step of packing by the host computer further comprises the steps, performed by the host computer, of: storing elements of an array component of the data structure in an unpadded format; storing a sequence component of the data structure in the format for representing integers; converting a string component of the data structure to an unsigned long type indicating a length of the string, followed by a plurality of characters; storing the unsigned long representing the string component of the data structure in the format for representing integers; and storing each of the plurality of characters in the format for representing characters.
Claim 7
Dependent Claim 23 words
A method for transporting a data structure, as recited in claim 2, wherein the format for storing floating point numbers is IEEE format.
Claim 8
Dependent Claim 24 words
A method for transporting a data structure, as recited in claim 2, wherein the format for storing floating point numbers is TANDEM T16 format.
Claim 9
Dependent Claim 29 words
A method for transporting a data structure, as recited in claim 2, wherein the format for storing integers specifies that byte significance of an integer decreases with increasing address.
Claim 10
Dependent Claim 29 words
A method for transporting a data structure, as recited in claim 2, wherein the format for storing integers specifies that byte significance of an integer increases with increasing address.
Claim 11
Dependent Claim 21 words
A method for transporting a data structure, as recited in claim 2, wherein the format for storing characters is ISO Latin-1.
Claim 12
Dependent Claim 196 words
A computer program product comprising: a computer usable medium having computer readable code embodied therein for transporting a data structure from a host computer to a client computer, the computer program product comprising: first computer readable program code devices configured to cause the host computer system to generate a string description of the data structure; second computer readable program code devices configured to cause the host computer system to generate a host description, the host description describing the size, alignment, and type of each field in the data structure as used within the host computer; third computer readable program code devices configured to cause the client computer system to generate a client description, the client description describing the size, alignment, and type of each field in the data structure as used within the client computer; fourth computer readable program code devices configured to cause the host computer system to pack the data structure in an output buffer of the host computer based upon the description in the host description; and fifth computer readable program code devices configured to cause the host computer system to transport the output buffer to an input buffer of the client computer.
Claim 13
Dependent Claim 196 words
A computer program product comprising: a computer usable medium having computer readable code embodied therein for transporting a data structure from a host computer to a client computer, the computer program product comprising: first computer readable program code devices configured to cause the host computer system to generate a string description of the data structure; second computer readable program code devices configured to cause the host computer system to generate a host description, the host description describing the size, alignment, and type of each field in the data structure as used within the host computer; third computer readable program code devices configured to cause the client computer system to generate a client description, the client description describing the size, alignment, and type of each field in the data structure as used within the client computer; fourth computer readable program code devices configured to cause the host computer system to pack the data structure in an output buffer of the host computer based upon the description in the host description; and fifth computer readable program code devices configured to cause the host computer system to transport the output buffer to an input buffer of the client computer.
Claim 14
Dependent Claim 38 words
A computer program product, as recited in claim 11, further comprising: sixth computer readable program code devices configured to cause the client computer system to generate a second data structure using the input buffer and the client description.
Claim 15
Dependent Claim 85 words
A computer program product, as recited in claim 12, wherein the fourth computer readable program code devices are further configured to cause the host computer to: store floating point and double type components of the data structure in a format for representing floating point numbers; store long, long long, unsigned long, unsigned long long, short, and unsigned short type components of the data structure in a format for representing integers; and store character type components of the data structure in a format for representing characters.
Claim 16
Dependent Claim 112 words
A computer program product, as recited in claim 12, wherein the fourth computer readable program code devices are further configured to cause the host computer to: convert "any" type components of the data structure to an unsigned long that specifies a length of the string description, the string description, and components of the "any" data structure; store the unsigned long in the format for representing integers; store the string as an unsigned long indicating the length of the string followed by a plurality of characters; store each of the plurality of characters in the format for representing characters; and store each component of the "any" data structure according to a predetermined format.
Claim 17
Dependent Claim 111 words
A computer program product, as recited in claim 12, wherein the fourth computer readable program code devices are further configured to cause the host computer to: store elements of an array component of the data structure in an unpadded format; store a sequence component of the data structure in the format for representing integers; convert a string component of the data structure to an unsigned long type indicating a length of the string, followed by a plurality of characters; store the unsigned long representing the string component of the data structure in the format for representing integers; and store each of the plurality of characters in the format for representing characters.
Claim 18
Dependent Claim 20 words
A computer program product, as recited in claim 12, wherein the format for storing floating point numbers is IEEE format.
Claim 19
Dependent Claim 21 words
A computer program product, as recited in claim 12, wherein the format for storing floating point numbers is TANDEM T16 format.
Claim 20
Dependent Claim 26 words
A computer program product, as recited in claim 12, wherein the format for storing integers specifies that byte significance of an integer decreases with increasing address.
Claim 21
Dependent Claim 26 words
A computer program product, as recited in claim 12, wherein the format for storing integers specifies that byte significance of an integer increases with increasing address.
Claim 22
Dependent Claim 18 words
A computer program product, as recited in claim 12, wherein the format for storing characters is ISO Latin-1.
Claim 23
Independent Claim 146 words
A system for transporting a data structure from a host computer to a client computer, the system comprising: means within the host computer system for generating a string description of the data structure; means within the host computer system for generating a host description, the host description describing the size, alignment, and type of each field in the data structure as used within the host computer; means within the client computer system for generating a client description, the client description describing the size, alignment, and type of each field in the data structure as used within the client computer; means within the host computer system for packing the data structure in an output buffer of the host computer based upon the description in the host description; and means within the host computer system for transporting the output buffer to an input buffer of the client computer.
Claim 24
Independent Claim 146 words
A system for transporting a data structure from a host computer to a client computer, the system comprising: means within the host computer system for generating a string description of the data structure; means within the host computer system for generating a host description, the host description describing the size, alignment, and type of each field in the data structure as used within the host computer; means within the client computer system for generating a client description, the client description describing the size, alignment, and type of each field in the data structure as used within the client computer; means within the host computer system for packing the data structure in an output buffer of the host computer based upon the description in the host description; and means within the host computer system for transporting the output buffer to an input buffer of the client computer.
Claim 25
Dependent Claim 34 words
A system for transporting a data structure, as recited in claim 21, further comprising: means within the client computer system for generating a second data structure using the input buffer and the client description.
Claim 26
Dependent Claim 88 words
A system for transporting a data structure, as recited in claim 22, wherein the means within the host computer system for packing the data structure are further configured to: store floating point and double type components of the data structure in a format for representing floating point numbers; store long, long long, unsigned long, unsigned long long, short, and unsigned short type components of the data structure in a format for representing integers; and store character type components of the data structure in a format for representing characters.
Claim 27
Dependent Claim 115 words
A system for transporting a data structure, as recited in claim 22, wherein the means within the host computer system for packing the data structure are further configured to: convert "any" type components of the data structure to an unsigned long that specifies a length of the string description, the string description, and components of the "any" data structure; store the unsigned long in the format for representing integers; store the string as an unsigned long indicating the length of the string followed by a plurality of characters; store each of the plurality of characters in the format for representing characters; and store each component of the "any" data structure according to a predetermined format.
Claim 28
Dependent Claim 114 words
A system for transporting a data structure, as recited in claim 22, wherein the means within the host computer system for packing the data structure are further configured to: store elements of an array component of the data structure in an unpadded format; store a sequence component of the data structure in the format for representing integers; convert a string component of the data structure to an unsigned long type indicating a length of the string, followed by a plurality of characters; store the unsigned long representing the string component of the data structure in the format for representing integers; and store each of the plurality of characters in the format for representing characters.
Claim 29
Dependent Claim 23 words
A system for transporting a data structure, as recited in claim 22, wherein the format for storing floating point numbers is IEEE format.
Claim 30
Dependent Claim 24 words
A system for transporting a data structure, as recited in claim 22, wherein the format for storing floating point numbers is TANDEM T16 format.
Claim 31
Dependent Claim 29 words
A system for transporting a data structure, as recited in claim 22, wherein the format for storing integers specifies that byte significance of an integer decreases with increasing address.
Claim 32
Dependent Claim 29 words
A system for transporting a data structure, as recited in claim 22, wherein the format for storing integers specifies that byte significance of an integer increases with increasing address.
Claim 33
Dependent Claim 21 words
A system for transporting a data structure, as recited in claim 22, wherein the format for storing characters is ISO Latin-1.

References Cited (Backward Citations)

US3886522A Cited
EP0381645A2 Cited
US4941170A Cited
US5689689A Cited
US5613148A Cited
US5457797A Cited
US5664206A Cited
US5627979A Cited
US5732270A Cited
US5642511A Cited
US5724503A Cited
US5621885A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-01-11 2002-07-13 2003-01-12 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-01-11 2006-07-13 2007-01-12 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-01-11 2010-07-13 2011-01-12 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag