Data processing: database and file management or data structures – Database design – Data structure types
Reexamination Certificate
1998-02-26
2002-09-03
Black, Thomas (Department: 2171)
Data processing: database and file management or data structures
Database design
Data structure types
C707S793000
Reexamination Certificate
active
06446070
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Field of the Invention
This invention generally relates to distributed computing systems and more particularly, to a method and apparatus for performing dynamic distributed computing over a network.
2. Description of the Related Art
In a distributed computing network, users can harness the processing capabilities of numerous computers coupled to the network. Tasks with many different independent calculations can be quickly processed in parallel by dividing the processing among different computers on the network. Further, specialized tasks can be computed more quickly by locating a computer on the network most suitable for processing the data. For example, a task executing on a client system which performs an intense floating point calculation may execute faster on a server system coupled to the network which has specialized floating point hardware suitable for the particular calculations.
Unfortunately, conventional techniques for distributed computing are not easily implemented in the typical heterogenous computing environments. Each computer on the network is typically heterogeneous containing different processor and operating system combinations, and require different object modules for execution. On the client side, different object modules requires that the user compiles different versions of the task for each different platform and loads the module onto the corresponding platform adding storage requirements to each client and also requiring porting and compiling the same tasks multiple times. Further, conventional techniques require that the code be distributed over the computers well before the code is executed. In the conventional systems, the extensive preparation required for performing distributed computing deterred many from exploiting this technology.
Distributed computing systems based on scripting languages are an improvement over some conventional distributed computing systems. Unfortunately, scripting based systems eliminate the need to recompile code, but are still very inefficient. A scripting based distributed system can execute the same instructions on multiple platforms because the language is interpreted by an interpreter located on each system. Consequently, most scripting languages are slow since they must translate high level scripting instructions into low level native instructions in real time. Moreover, scripting languages are hard to optimize and can waste storage space since they are not generally compressed.
Based on the above limitations found in conventional systems, it is desirable to improve distributed computing systems.
SUMMARY OF THE INVENTION
In one aspect of the present invention associated with a client computer, a method and apparatus for dynamic distributed computing is provided. Initially, the client selects a server from the network to process the task. This selection can be based on the availability of the server or the specialized processing capabilities of the server. Next, a client stub marshals the parameters and data into a task request. The client sends the task request to the server which invokes a generic compute method. The server automatically determines if the types associated with the task are available on the server and downloads the task types from the network as necessary. Information in the task types are used to extract parameters and data stored in the particular task request. The generic compute method is used to execute the task request on the selected server. After the server processes the task request, the client receives the results, or the computed task, back from the selected server.
In another aspect of the present invention associated with a server computer, a method and apparatus for dynamic distributed computing is provided. Initially, the server will automatically determine which task types are available on the server and will download task types from the network as necessary. These task types help the server unmarshal parameters and data from a task request and generate a local task. Next, the server invokes a generic compute method capable of processing all types of compute tasks or subtypes of a compute task. The generic compute method is used to execute the task request on the selected server. If a subsequent task will use the results, the server stores the results from the computed tasks in a local cache. Once the task has completed, the server returns the results, or the computed task, to the client.
REFERENCES:
patent: 4491946 (1985-01-01), Kryskow, Jr. et al.
patent: 4713806 (1987-12-01), Oberlander et al.
patent: 4809160 (1989-02-01), Mahon et al.
patent: 4823122 (1989-04-01), Mann et al.
patent: 4939638 (1990-07-01), Stephenson et al.
patent: 4956773 (1990-09-01), Saito et al.
patent: 5088036 (1992-02-01), Ellis et al.
patent: 5109486 (1992-04-01), Seymour
patent: 5187787 (1993-02-01), Skeen et al.
patent: 5218699 (1993-06-01), Brandle et al.
patent: 5257369 (1993-10-01), Skeen et al.
patent: 5293614 (1994-03-01), Ferguson et al.
patent: 5297283 (1994-03-01), Kelly, Jr. et al.
patent: 5307490 (1994-04-01), Davidson et al.
patent: 5311591 (1994-05-01), Fischer
patent: 5339435 (1994-08-01), Lubkin et al.
patent: 5386568 (1995-01-01), Wold et al.
patent: 5390328 (1995-02-01), Frey et al.
patent: 5423042 (1995-06-01), Jalili et al.
patent: 5440744 (1995-08-01), Jacobson et al.
patent: 5448740 (1995-09-01), Kiri et al.
patent: 5452459 (1995-09-01), Drury
patent: 5455952 (1995-10-01), Gjovaag
patent: 5471629 (1995-11-01), Risch
patent: 5475792 (1995-12-01), Stanford et al.
patent: 5475817 (1995-12-01), Waldo et al.
patent: 5481721 (1996-01-01), Serlet et al.
patent: 5504921 (1996-04-01), Dev et al.
patent: 5511197 (1996-04-01), Hill et al.
patent: 5524244 (1996-06-01), Robinson et al.
patent: 5548726 (1996-08-01), Pettus
patent: 5553282 (1996-09-01), Parrish et al.
patent: 5555367 (1996-09-01), Premerlani et al.
patent: 5555427 (1996-09-01), Aoe et al.
patent: 5557798 (1996-09-01), Skeen et al.
patent: 5560003 (1996-09-01), Nilsen et al.
patent: 5561785 (1996-10-01), Blandy et al.
patent: 5577231 (1996-11-01), Scalzi et al.
patent: 5594921 (1997-01-01), Pettus
patent: 5603031 (1997-02-01), White et al.
patent: 5617537 (1997-04-01), Yamada et al.
patent: 5628005 (1997-05-01), Hurvig
patent: 5640564 (1997-06-01), Hamilton et al.
patent: 5644768 (1997-07-01), Periwal et al.
patent: 5652888 (1997-07-01), Burgess
patent: 5655148 (1997-08-01), Richman et al.
patent: 5659751 (1997-08-01), Heninger
patent: 5671225 (1997-09-01), Hooper et al.
patent: 5675796 (1997-10-01), Hodges et al.
patent: 5680573 (1997-10-01), Rubin et al.
patent: 5680617 (1997-10-01), Gough et al.
patent: 5684955 (1997-11-01), Meyer et al.
patent: 5689709 (1997-11-01), Corbett et al.
patent: 5706435 (1998-01-01), Barbara et al.
patent: 5706502 (1998-01-01), Foley et al.
patent: 5724588 (1998-03-01), Hill et al.
patent: 5727145 (1998-03-01), Nessett et al.
patent: 5737607 (1998-04-01), Hamilton et al.
patent: 5745678 (1998-04-01), Herzberg et al.
patent: 5745695 (1998-04-01), Gilchrist et al.
patent: 5745703 (1998-04-01), Cejtin et al.
patent: 5745755 (1998-04-01), Covey
patent: 5748897 (1998-05-01), Katiyar
patent: 5754849 (1998-05-01), Dyer et al.
patent: 5757925 (1998-05-01), Faybishenko
patent: 5761656 (1998-06-01), Ben-Shachar
patent: 5764897 (1998-06-01), Khalidi
patent: 5768532 (1998-06-01), Megerian
patent: 5774551 (1998-06-01), Wu et al.
patent: 5778187 (1998-07-01), Monteiro et al.
patent: 5778228 (1998-07-01), Wei
patent: 5778368 (1998-07-01), Hogan et al.
patent: 5787425 (1998-07-01), Bigus
patent: 5787431 (1998-07-01), Shaughnessy
patent: 5790548 (1998-08-01), Sistanizadeh et al.
patent: 5802367 (1998-09-01), Held et al.
patent: 5808911 (1998-09-01), Tucker et al.
patent: 5809507 (1998-09-01), Cavanaugh, III
patent: 5812819 (1998-09-01), Rodwin et al.
patent: 5813013 (1998-09-01), Shakib et al.
patent: 5815149 (1998-09-01), Mutschler, III et al.
patent: 5815709 (1998-09-01), Waldo et al.
patent: 5815711 (1998-09-01), Sakamoto et al.
patent: 5818448 (1998-10-01), Katiyar
patent: 5829022 (1
Arnold Kenneth C. R. C.
Jones Peter C.
Waldo James H.
Wollrath Ann M.
Black Thomas
Finnegan Henderson Farabow Garrett & Dunner LLP
Mills John G.
Sun Microsystems Inc.
LandOfFree
Method and apparatus for dynamic distributed computing over... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and apparatus for dynamic distributed computing over..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for dynamic distributed computing over... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2837733