System and method for facilitating dynamic loading of stub...

Electrical computers and digital processing systems: multicomput – Remote data accessing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S241000, C709S241000, C717S165000

Reexamination Certificate

active

06654793

ABSTRACT:

FIELD OF THE INVENTION
The invention relates generally to the field of digital computer systems, and more particularly to systems and methods for facilitating the invocation by a program being processed by a computer in one address space, of processing of methods and procedures in another address space, which may be implemented either on the same computer or on another computer. The invention particularly provides a system and method for obtaining and dynamically loading “stub” information which facilitates invocation by a program operating in one address space of a remote method or procedure in another address space, and possibly on another computer.
BACKGROUND OF THE INVENTION
In modern “enterprise” computing, a number of personal computers, workstations, and other devices such as mass storage subsystems, network printers and interfaces to the public telephony system, are typically interconnected in one or more computer networks. The personal computers and workstations are used by individual users to perform processing in connection with data and programs that may be stored in the network mass storage subsystems. In such an arrangement, the personal computers/workstations, operating as clients, typically download the data and programs from the network mass storage subsystems for processing. In addition, the personal computers or workstations will enable processed data to be uploaded to the network mass storage subsystems for storage, to a network printer for printing, to the telephony interface for transmission over the public telephony system, or the like. In such an arrangement, the network mass storage subsystems, network printers and telephony interface operate as servers, since they are available to service requests from all of the clients in the network. By organizing the network in such a manner, the servers are readily available for use by all of the personal computers/workstations in the network. Such a network may be spread over a fairly wide area, with the personal computers/workstations being interconnected by communication links such as electrical wires or optic fibers.
In addition to downloading information from servers for processing, a client, while processing a program, can remotely initiate processing by a server computer of particular routines and procedures (generally “procedures”), in connection with certain “parameter” information provided by the client. After the server has processed the procedure, it will provide results of its processing to the client, which the client may thereafter use in its processing operations. Typically in such “remote procedure calls” the program will make use of a local “stub” which, when called, transfers the request to the server which implements the particular procedure, receives the results and provides them to the program. Conventionally, the stub must be compiled with the program, in which case the information needed to call the remote procedure must be determined at compile time, rather than at the time the program is run. Since the stub available to the client's programs is static, it may be at best the closest that can be determined should be provided for the program when it (the program) is compiled. Accordingly, errors and inefficiencies can develop due to mismatches between the stub that is provided to a program and the requirements of the remote procedure that is called when the program is run.
SUMMARY OF THE INVENTION
The invention provides a new and improved system and method for facilitating the obtaining and dynamic loading of a stub provided to enable a program operating in one address space to remotely invoke processing of a method or procedure in another address space, so that the stub can be loaded by the program when it is run and needed, rather than being statically determined when the program is compiled. Indeed, the stub that is loaded can be obtained from the resource providing the remote method or procedure, and so it (the stub) can exactly define the invocation requirements of the remote method or procedure. Since the stub can be located and dynamically loaded while the program is being run, rather that being statically determined when the program is compiled, run-time errors and inefficiencies which may result from mis-matches between the stub that is provided and the requirements of the remote method or procedure that is invoked can be minimized.
In brief summary, the invention provides a stub retrieval and loading subsystem for use in connection with a remote method invocation system. The stub retrieval and loading subsystem controls the retrieval and loading of a stub for a remote method, into an execution environment, to facilitate invocation of the remote method by a program executing in the execution environment. The stub retrieval subsystem includes a stub retriever for initiating a retrieval of the stub and stub loader for, when the stub is received by the stub retriever, loading the stub into the execution environment, thereby to make the stub available for use in remote invocation of the remote method. In one embodiment, the stub retrieval and loading subsystem effects the retrieval and loading for a program operating in one address space provided by one computer, of stub class instances to effect the remote invocation of methods which are provided by objects operating in another address space, which may be provided by the same computer or a different computer. In that same embodiment, the stub retrieval and loading subsystem effects the retrieval and loading of a stub class instance when the remote object is referenced, although in other embodiments retrieval and loading may be effected when the remote method is invoked.


REFERENCES:
patent: 4430699 (1984-02-01), Segarra et al.
patent: 4491946 (1985-01-01), Kryskow, Jr. et al.
patent: 4558413 (1985-12-01), Schmidt et al.
patent: 4567359 (1986-01-01), Lockwood
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: 4992940 (1991-02-01), Dworkin
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: 5253165 (1993-10-01), Leiseca 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: 5319542 (1994-06-01), King, Jr. et al.
patent: 5327559 (1994-07-01), Priven et al.
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: 5392280 (1995-02-01), Zheng
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 et al.
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: 5475840 (1995-12-01), Nelson et al.
patent: 5481721 (1996-01-01), Serlet et al.
patent: 5504921 (1996-04-01), Dev et al.
patent: 5511196 (1996-04-01), Shackelford et al.
patent: 5511197 (1996-04-01), Hill et al.
patent: 5524244 (1996-06-01), Robinson et al.
patent: 5544040 (1996-08-01), Gerbaulet
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: 5592375 (1997-01-01), Salmon 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: 5619710 (1997-04-01), Travis, Jr. et al.
patent: 5628005 (1997-05-01), Hurvig
patent: 5640564

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

System and method for facilitating dynamic loading of stub... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with System and method for facilitating dynamic loading of stub..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method for facilitating dynamic loading of stub... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3132568

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.