A system and method allow client applications to invoke remote procedures on a server application using any of a plurality of remote procedure mechanisms, by selecting a remote procedure call mechanism at runtime. The system and method uses client and server stubs in the application that include an mechanism-independent canonical specification of each procedure interface. The specification defines the form of the interface and arguments, but not does include conventional mechanism-specific marshalling arguments for marshalling the arguments. The resulting compiled stubs may be used with any remote procedure call engine. Such remote procedure call engines receive the specification of the procedure interface and the arguments passed by the client application to the server, and determine at runtime the particular marshalling routines to use, according to the canonical specification. This defers selection of the marshalling routines, and hence allows a single compiled client application binary code to be used with any of a variety of remote procedure call engines and marshalling routines. Deferring selection of marshalling routines further allows optimization of data types where the client and server computers share architectural characteristics. The system includes a interface definition language compiler that produces the client and server stubs having the canonical specification of the procedure interfaces, a virtual remote procedure library that selects a remote procedure call engine for a client, and plurality of remote procedure call engines.

Um sistema e um método permitem que as aplicações do cliente invoquem procedimentos remotos em uma aplicação do usuário usando algum de um plurality de mecanismos remotos do procedimento, selecionando um mecanismo do Remote Procedure Call no runtime. Os usos cliente do sistema e do método e topos do usuário na aplicação que incluem uma especificação canônica mecanismo-independente de cada relação do procedimento. A especificação define o formulário da relação e dos argumentos, mas para não fazer inclua argumentos marshalling mecanismo-específicos convencionais para marshalling os argumentos. Os topos compilados resultantes podem ser usados com todo o motor do Remote Procedure Call. Tais motores do Remote Procedure Call recebem a especificação da relação do procedimento e dos argumentos passados pela aplicação do cliente ao usuário, e determinam no runtime as rotinas marshalling particulares ao uso, de acordo com a especificação canônica. Isto adía a seleção das rotinas marshalling, e daqui permite que a uma única aplicação compilada do cliente o código binário seja usado com alguma de uma variedade dos motores do Remote Procedure Call e de rotinas marshalling. A seleção adiando de rotinas marshalling permite mais mais o optimization dos tipos de dados onde os computadores do cliente e de usuário compartilham de características architectural. O sistema inclui um compilador da língua da definição de relação que produza os topos do cliente e do usuário que têm a especificação canônica das relações do procedimento, de uma biblioteca de procedimento remota virtual que selecione um motor do Remote Procedure Call para um cliente, e do plurality dos motores do Remote Procedure Call.

 
Web www.patentalert.com

< (none)

< Rear electrode structures for displays

> Solid electrolyte battery

> (none)

~ 00043