Claims
- 1. A method of manipulating objects at a computer, the method comprising:
receiving one or more requests to manipulate an object, wherein each request is received from a different thread; for each request, generating a copy of the object; and associating a unique identifier with each request and its copy of the object to distinguish between requests that manipulate copies of the object.
- 2. The method of claim 1, wherein the computer is connected to one or more data stores through an intermediate processing computer.
- 3. The method of claim 2, wherein the intermediate processing computer selects one of the data stores.
- 4. The method of claim 2, wherein the intermediate processing computer is updated to reflect changes within the data stores.
- 5. The method of claim 1, wherein one of the requests to manipulate comprises a request to store the object into a data store.
- 6. The method of claim 5, wherein the computer is connected via a network to a library server and to one or more object servers and further comprising:
transmitting the request from the computer to the library server, wherein the request includes the unique identifier; at the library server,
selecting an object server; and transmitting the request to the object server, wherein the request includes the unique identifier; and at the object server, communicating with the computer to receive the object to be stored, using the unique identifier to identify the object.
- 7. The method of claim 1, wherein one of the requests to manipulate comprises a request to retrieve the object from a data store.
- 8. The method of claim 7, wherein the computer is connected via a network to a library server and to one or more object servers and further comprising:
transmitting the request from the computer to the library server, wherein the request includes the unique identifier; at the library server,
selecting an object server; and transmitting the request to the object server, wherein the request includes the unique identifier; and at the object server, communicating with the computer to transmit the object to be retrieved, using the unique identifier to identify the object.
- 9. The method of claim 1, wherein a different copy of the object exists for each of the requests.
- 10. The method of claim 1, wherein a first copy of the object is distinguished from a second copy of the object.
- 11. The method of claim 1, wherein a first copy of the object is distinguished from the original object.
- 12. The method of claim 1, wherein more than one request simultaneously manipulates a same object.
- 13. The method of claim 1, wherein the unique identifier refers to a memory address.
- 14. The method of claim 13, wherein the unique identifier further comprises a pointer referring to a set of object data.
- 15. The method of claim 14, wherein the set of object data comprises a location of the object.
- 16. The method of claim 14, wherein the set of object data comprises an identification of the object.
- 17. The method of claim 16, wherein the identification comprises an item number and a part number.
- 18. The method of claim 17, wherein the identification further comprises a rep type.
- 19. The method of claim 14, wherein the set of object data comprises a size of the object.
- 20. An apparatus for manipulating objects comprising:
a computer; and one or more computer programs, preformed by the computer, for receiving one or more requests to manipulate an object, wherein each request is received from a different thread, for each request, generating a copy of the object, and associating a unique identifier with each request and its copy of the object to distinguish between requests that manipulate copies of the object.
- 21. The apparatus of claim 20, wherein the computer is connected to one or more data stores through an intermediate processing computer.
- 22. The apparatus of claim 21, wherein the intermediate processing computer selects one of the data stores.
- 23. The apparatus of claim 21, wherein the intermediate processing computer is updated to reflect changes within the data stores.
- 24. The apparatus of claim 20, wherein one of the requests to manipulate comprises a request to store the object into a data store.
- 25. The apparatus of claim 24, wherein the computer is connected via a network to a library server and to one or more object servers and further comprising:
transmitting the request from the computer to the library server, wherein the request includes the unique identifier; at the library server,
selecting an object server; and transmitting the request to the object server, wherein the request includes the unique identifier; and at the object server, communicating with the computer to receive the object to be stored, using the unique identifier to identify the object.
- 26. The apparatus of claim 20, wherein one of the requests to manipulate comprises a request to retrieve data from a data store.
- 27. The apparatus of claim 26, wherein the computer is connected via a network to a library server and to one or more object servers and further comprising:
transmitting the request from the computer to the library server, wherein the request includes the unique identifier; at the library server,
selecting an object server; and transmitting the request to the object server, wherein the request includes the unique identifier; and at the object server, communicating with the computer to transmit the object to be retrieved, using the unique identifier to identify the object.
- 28. The apparatus of claim 20, wherein a different copy of the object exists for each of the requests.
- 29. The apparatus of claim 20, wherein a first copy of the object is distinguished from a second copy of the object.
- 30. The apparatus of claim 20, wherein a first copy of the object is distinguished from the original object.
- 31. The apparatus of claim 20, wherein more than one request wants to simultaneously manipulate a same object.
- 32. The apparatus of claim 20, wherein the unique identifier refers to a memory address.
- 33. The apparatus of claim 32, wherein the unique identifier further comprises a pointer referring to set of object data.
- 34. The apparatus of claim 33, wherein the set of object data comprises a location of the object.
- 35. The apparatus of claim 33, wherein the set of object data comprises an identification of the object.
- 36. The apparatus of claim 35, wherein the identification comprises an item number and a part number.
- 37. The apparatus of claim 36, wherein the identification further comprises a rep type.
- 38. The apparatus of claim 33, wherein the set of object data comprises a size of the object.
- 39. An article of manufacture comprising a program storage medium readable by a computer and embodying one or more instructions executable by the computer to perform method steps for manipulating objects at a computer, the method comprising:
receiving one or more requests to manipulate an object, wherein each request is received from a different thread; for each request, generating a copy of the object; and associating a unique identifier with each request and its copy of the object to distinguish between requests that manipulate copies of the object.
- 40. The article of manufacture of claim 39, wherein the computer is connected to one or more data stores through an intermediate processing computer.
- 41. The article of manufacture of claim 40, wherein the intermediate processing computer selects one of the data stores.
- 42. The article of manufacture of claim 40, wherein the intermediate processing computer is updated to reflect changes within the data stores.
- 43. The article of manufacture of claim 39, wherein the request to manipulate comprises a request to store the object into a data store.
- 44. The article of manufacture of claim 43, wherein the computer is connected via a network to a library server and to one or more object servers and further comprising:
transmitting the request from the computer to the library server, wherein the request includes the unique identifier; at the library server,
selecting an object server; and transmitting the request to the object server, wherein the request includes the unique identifier; and at the object server, communicating with the computer to receive the object to be stored, using the unique identifier to identify the object.
- 45. The article of manufacture of claim 39, wherein the request to manipulate comprises a request to retrieve the object from a data store.
- 46. The article of manufacture of claim 45, wherein the computer is connected via a network to a library server and to one or more object servers and further comprising:
transmitting the request from the computer to the library server, wherein the request includes the unique identifier; at the library server,
selecting an object server; and transmitting the request to the object server, wherein the request includes the unique identifier; and at the object server, communicating with the computer to transmit the object to be retrieved, using the unique identifier to identify the object.
- 47. The article of manufacture of claim 39, wherein a different copy of the object exists for each of the requests.
- 48. The article of manufacture of claim 39, wherein a first copy of the object is distinguished from a second copy of the object.
- 49. The article of manufacture of claim 39, wherein a first copy of an object is distinguished from the original object.
- 50. The article of manufacture of claim 39, wherein more than one request wants to simultaneously manipulate a same object.
- 51. The article of manufacture of claim 39, wherein the unique identifier refers to a memory address.
- 52. The article of manufacture of claim 51, wherein the unique identifier further comprises a pointer referring to a set of object data.
- 53. The article of manufacture of claim 52, wherein the set of object data comprises a location of the object.
- 54. The article of manufacture of claim 52, wherein the set of object data comprises an identification of the object.
- 55. The article of manufacture of claim 54, wherein the identification comprises an item number and a part number.
- 56. The article of manufacture of claim 55, wherein the identification further comprises a rep type.
- 57. The article of manufacture of claim 52, wherein the set of object data comprises a size of the object.
- 58. The article of manufacture of claim 52, wherein the set of object data comprises a size of the object.
- 59. A method of accessing objects in a computer, the method comprising:
receiving a request for an object stored in an object server from a client process; allocating a library server process to the object request; initiating a transfer of the requested object from the object server under control of the library server process; and after initiating the transfer, releasing the library server process from the object request.
- 60. The method of claim 59, wherein the library server process comprises a child process of the library server.
- 61. The method of claim 59, wherein the requested object is transferred from the object server to a daemon process to a client server, and wherein the daemon process confirms with the object server that the object transfer has been initiated.
- 62. The method of claim 61, wherein the daemon process sends a confirmation to the object server at the beginning of the transfer.
- 63. The method of claim 61, wherein the daemon process sends a confirmation to the object server while the requested object is being transferred.
- 64. The method of claim 59, further comprising, after releasing the library server process, returning control to a user.
- 65. The method of claim 64, further comprising allowing the user to access the partially transferred object.
- 66. The method of claim 64, further comprising, after releasing the library server process, performing other tasks with the library server process while the requested object is being transferred.
- 67. The method of claim 59, further comprising identifying what portion of the requested object has been transferred.
- 68. The method of claim 59, further comprising transferring the requested object to a file.
- 69. The method of 68, further comprising transferring the requested object to the file without altering the size of the file.
- 70. The method of claim 59, further comprising transferring the requested object to memory.
- 71. The method of 70, further comprising allocating a memory pointer in the file with the size of the requested object.
- 72. The method of claim 70, wherein an amount of memory allocated for the object is not altered when the object is transferred into memory.
- 73. The method of claim 59, further comprising aborting the transfer of the requested object before the transfer has completed.
- 74. The method of claim 59, wherein the entire object is retrieved before the process is released.
- 75. The method of claim 59, further comprising receiving multiple requests for objects, and wherein the requests are executed asynchronously.
- 76. An apparatus for manipulating objects comprising:
a computer; and one or more computer programs, preformed by the computer, for receiving a request for an object stored in an object server from a client process; for allocating a library server process to the object request; for initiating a transfer of the requested object from the object server under control of the library server process; and after initiating the transfer, for releasing the library server process from the object request.
- 77. The apparatus of claim 76, wherein the library server process comprises a child process of the library server.
- 78. The apparatus of claim 76, wherein the requested object is transferred from the object server to a daemon process to a client server, and wherein the daemon process confirms with the object server that the object transfer has been initiated.
- 79. The apparatus of claim 78, wherein the daemon process sends a confirmation to the object server at the beginning of the transfer.
- 80. The apparatus of claim 78, wherein the daemon process sends a confirmation to the object server while the requested object is being transferred.
- 81. The apparatus of claim 76, further comprising, after releasing the library server process, returning control to a user.
- 82. The apparatus of claim 81, further comprising allowing the user to access the partially transferred object.
- 83. The apparatus of claim 81, further comprising, after releasing the library server process, performing other tasks with the library server process while the requested object is being transferred.
- 84. The apparatus of claim 76, further comprising identifying what portion of the requested object has been transferred.
- 85. The apparatus of claim 76, further comprising transferring the requested object to a file.
- 86. The apparatus of claim 85, further comprising transferring the requested object to the file without altering the size of the file.
- 87. The apparatus of claim 76, further comprising transferring the requested object to memory.
- 88. The apparatus of 87, further comprising allocating a memory pointer in the file with the size of the requested object.
- 89. The apparatus of claim 87, wherein an amount of memory allocated for the object is not altered when the object is transferred into memory.
- 90. The apparatus of claim 76, further comprising aborting the transfer of the requested object before the transfer has completed.
- 91. The apparatus of claim 76, wherein the entire object is retrieved before the library server process is released.
- 92. The apparatus of claim 76, further comprising receiving multiple requests for objects, and wherein the requests are executed asynchronously.
- 93. An article of manufacture comprising a program storage medium readable by a computer and embodying one or more instructions executable by the computer to perform method steps for accessing objects at a computer, the method comprising:
receiving a request for an object stored in an object server from a client process; allocating a library server process to the object request; initiating a transfer of the requested object from the object server under control of the library server process; and after initiating the transfer, releasing the library server process from the object request.
- 94. The article of manufacture of claim 93, wherein the library server process comprises a child process of a library server.
- 95. The article of manufacture of claim 93, wherein the requested object is transferred from the object server to a daemon process to a client server, and wherein the daemon process confirms with the object server that the object transfer has been initiated.
- 96. The article of manufacture of claim 95, wherein the daemon process sends a confirmation to the object server at the beginning of the transfer.
- 97. The article of manufacture of claim 95, wherein the daemon process sends a confirmation to the object server while the requested object is being transferred.
- 98. The article of manufacture of claim 93, further comprising, after releasing the library server process, returning control to a user.
- 99. The article of manufacture of claim 98, further comprising allowing the user to access the partially transferred object.
- 100. The article of manufacture of claim 93, further comprising, after releasing the library server process, performing other tasks with the library server process while the requested object is being transferred.
- 101. The article of manufacture of claim 93, further comprising identifying what portion of the requested object has been transferred.
- 102. The article of manufacture of claim 93, further comprising transferring the requested object to a file.
- 103. The article of manufacture of 102, further comprising transferring the requested object to the file without altering the size of the file.
- 104. The article of manufacture of claim 93, further comprising transferring the requested object to memory.
- 105. The article of manufacture of 104, further comprising allocating a memory pointer in the file with the size of the requested object.
- 106. The method of claim 104, wherein an amount of memory allocated for the object is not altered when the object is transferred into memory.
- 107. The method of claim 93, further comprising aborting the transfer of the requested object before the transfer has completed.
- 108. The method of claim 93, wherein the entire object is retrieved before the process is released.
- 109. The method of claim 93, further comprising receiving multiple requests for objects, and wherein the requests are executed asynchronously.
PROVISIONAL APPLICATION
[0001] This application claims the benefit of U.S. Provisional Application No. 60/162,700, entitled “DATA PROCESSING SYSTEM,” filed on Oct. 29, 1999, by Donald E. Benson et al., attorney's reference number ST9-99-156, which is incorporated by reference herein.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60162700 |
Oct 1999 |
US |
Continuations (1)
|
Number |
Date |
Country |
Parent |
09692915 |
Oct 2000 |
US |
Child |
10095591 |
Mar 2002 |
US |