diff options
Diffstat (limited to 'lib/orber/doc/src/ch_introduction.xml')
-rw-r--r-- | lib/orber/doc/src/ch_introduction.xml | 144 |
1 files changed, 144 insertions, 0 deletions
diff --git a/lib/orber/doc/src/ch_introduction.xml b/lib/orber/doc/src/ch_introduction.xml new file mode 100644 index 0000000000..16240e1eb0 --- /dev/null +++ b/lib/orber/doc/src/ch_introduction.xml @@ -0,0 +1,144 @@ +<?xml version="1.0" encoding="latin1" ?> +<!DOCTYPE chapter SYSTEM "chapter.dtd"> + +<chapter> + <header> + <copyright> + <year>1999</year><year>2009</year> + <holder>Ericsson AB. All Rights Reserved.</holder> + </copyright> + <legalnotice> + The contents of this file are subject to the Erlang Public License, + Version 1.1, (the "License"); you may not use this file except in + compliance with the License. You should have received a copy of the + Erlang Public License along with this software. If not, it can be + retrieved online at http://www.erlang.org/. + + Software distributed under the License is distributed on an "AS IS" + basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See + the License for the specific language governing rights and limitations + under the License. + + </legalnotice> + + <title>Introduction to Orber</title> + <prepared>Megan Lynch</prepared> + <docno></docno> + <date>1998-09-21</date> + <rev></rev> + <file>ch_introduction.xml</file> + </header> + + <section> + <title>Overview</title> + <p>The Orber application is a CORBA compliant Object Request Brokers + (ORB), which provides CORBA functionality in an Erlang + environment. Essentially, the ORB channels communication or + transactions between nodes in a + heterogeneous environment. + </p> + <p><term id="CORBA"><termdef>Common Object Request Broker Architecture is a common communication standard developed by the OMG (Object Management Group)</termdef></term>(Common Object Request Broker + Architecture) provides an interface definition language allowing + efficient system integration and also supplies standard + specifications for some services. + </p> + <p>The Orber application contains the following parts:</p> + <list type="bulleted"> + <item> + <p>ORB kernel and IIOP support</p> + </item> + <item> + <p>Interface Repository</p> + </item> + <item> + <p>Interface Definition Language Mapping for Erlang</p> + </item> + <item> + <p>CosNaming Service</p> + </item> + </list> + + <section> + <title>Benefits</title> + <p>Orber provides CORBA functionality in an Erlang environment that enables: + </p> + <list type="bulleted"> + <item> + <p><em>Platform interoperability and transparency</em></p> + <p>Orber enables communication between + OTP applications or Erlang environment applications and + other platforms; for example, Windows NT, Solaris + etc, allowing platform transparency. This is especially helpful in situations where there + are many users with different platforms. For example, + booking airline tickets would require the airline database + and hundreds of travel agents (who may not have the same + platform) to book seats on flights. </p> + </item> + <item> + <p><em>Application level interoperability and transparency</em></p> + <p>As Orber is a CORBA compliant application, its purpose is + to provide interoperability and transparency on the application + level. + Orber simplifies the distributed system software by defining the + environment as objects, which in effect, views + everything as identical regardless of programming + languages. <br></br> + Previously, time-consuming programming was + required to facilitate communication between different languages. + However, with CORBA compliant Orber the Application + Programmer is relieved of this task. This makes + communication on an application level relatively transparent to the user.</p> + </item> + </list> + </section> + + <section> + <title>Purpose and Dependencies</title> + <p>The system architecture and OTP dependencies of Orber are illustrated in figure 1 below:</p> + <marker id="dependent"></marker> + <image file="dependent.gif"> + <icaption> +Figure 1: Orber Dependencies and Structure.</icaption> + </image> + <p>Orber is dependent on Mnesia (see the Mnesia + documentation) - an Erlang database management application + used to store object information.</p> + <note> + <p>Although Orber does not have a run-time + application dependency to IC (an <term id="IDL"><termdef>Interface Definition Language - IDL is the OMG specified interface definition language, used to define the CORBA object interfaces.</termdef></term>compiler for + Erlang), it is necessary when building + services and applications. See the IC documentation for + further details.</p> + </note> + <marker id="orbs"></marker> + <image file="orbs.gif"> + <icaption> +Figure 2: ORB interface between Java and Erlang Environment Nodes.</icaption> + </image> + <p>This simplified illustration in figure 2 demonstrates how Orber can facilitate communication in a heterogeneous environment. The Erlang Nodes running + OTP and the other Node running applications written in Java can + communicate via an <term id="ORB"><termdef>Object Request Broker - ORB open software bus architecture specified by the OMG which allows object components to communicate in a heterogeneous environment.</termdef></term>(Object Request Broker). Using + Orber means that CORBA functions can be used to achieve this + communication. + </p> + <p>For example, if one of the above nodes requests an object, it does not + need to know if that object is located on the same, or + different, Erlang or Java nodes. The ORB will channel the + information creating platform and application transparency for + the user. + </p> + </section> + + <section> + <title>Prerequisites</title> + <p>To fully understand the concepts presented in the + documentation, it is recommended that the user is familiar + with distributed programming and CORBA (Common Object Request + Broker Architecture). + </p> + <p>Recommended reading includes <em>Open Telecom Platform Documentation Set</em> and <em>Concurrent Programming in Erlang</em>. + </p> + </section> + </section> +</chapter> + |