Vés al contingut

Common Object Request Broker Architecture

De la Viquipèdia, l'enciclopèdia lliure
Common Object Request Broker Architecture

Tipusestàndard tècnic Modifica el valor a Wikidata
Versió inicial1991
Característiques tècniques
PlataformaMultiplataforma
Equip
Creador/sObject Management Group
Més informació
Lloc webwww.corba.org

Aquesta figura il·lustra el paradigma d'alt nivell per a comunicacions entre processos remotes utilitzant CORBA. L'especificació CORBA aborda a més l'escriptura de dades, les excepcions, els protocols de xarxa, els temps d'espera de la comunicació, etc. Per exemple: Normalment, el costat del servidor té l'adaptador d'objectes portàtil (POA) que redirigeix les trucades als servidors locals o (per equilibrar la càrrega) als altres servidors. L'especificació CORBA (i, per tant, aquesta figura) deixa a l'aplicació diversos aspectes del sistema distribuït per definir, inclosos els temps de vida de l'objecte (tot i que la semàntica de recompte de referència està disponible per a les aplicacions), redundància/commutació per error, gestió de memòria, equilibri de càrrega dinàmica i aplicacions. models orientats com ara la separació entre la semàntica de visualització/dades/control (per exemple, vegeu Model–vista–controlador), etc.

La Common Object Request Broker Architecture (amb acrònim anglès CORBA) és un estàndard definit pel Object Management Group (OMG) dissenyat per facilitar la comunicació dels sistemes que es despleguen en diverses plataformes. CORBA permet la col·laboració entre sistemes de diferents sistemes operatius, llenguatges de programació i maquinari informàtic. CORBA utilitza un model orientat a objectes encara que els sistemes que utilitzen CORBA no han d'estar orientats a objectes. CORBA és un exemple del paradigma d'objectes distribuïts.[1]

CORBA permet la comunicació entre programari escrit en diferents idiomes i que s'executa en diferents ordinadors. Els detalls d'implementació de sistemes operatius, llenguatges de programació i plataformes de maquinari específics s'eliminen de la responsabilitat dels desenvolupadors que utilitzen CORBA. CORBA normalitza la semàntica de trucada de mètodes entre objectes d'aplicació que resideixen al mateix espai d'adreces (aplicació) o en espais d'adreces remots (mateix host o host remot en una xarxa). La versió 1.0 es va publicar l'octubre de 1991.[2]

CORBA utilitza un llenguatge de definició d'interfícies (IDL) per especificar les interfícies que presenten els objectes al món exterior. A continuació, CORBA especifica un mapeig d'IDL a un llenguatge d'implementació específic com C++ o Java. Hi ha mapes estàndard per a Ada, C, C++, C++11, COBOL, Java, Lisp, PL/I, Object Pascal, Python, Ruby i Smalltalk. Hi ha mapes no estàndards per a C#, Erlang, Perl, Tcl i Visual Basic implementats pels intermediaris de sol·licitud d'objectes (ORB) escrits per a aquests llenguatges.[3]

L'especificació CORBA dicta que hi haurà un ORB a través del qual una aplicació interactuaria amb altres objectes. Així és com s'implementa a la pràctica:[4]

  1. L'aplicació inicialitza l'ORB i accedeix a un adaptador d'objectes intern, que manté coses com ara el recompte de referències, les polítiques d'instanciació d'objectes (i referències) i les polítiques de vida útil d'objectes.
  2. L'adaptador d'objectes s'utilitza per registrar instàncies de les classes de codi generades. Les classes de codi generades són el resultat de la compilació del codi IDL de l'usuari, que tradueix la definició de la interfície d'alt nivell en una base de classes específica del sistema operatiu i de l'idioma per al seu ús per l'aplicació de l'usuari. Aquest pas és necessari per fer complir la semàntica CORBA i proporcionar un procés d'usuari net per a la interfície amb la infraestructura CORBA.


Referències

[modifica]