summaryrefslogtreecommitdiff
path: root/modules/CIAO/docs/index.html
blob: 438bdf3416e2f8361cc98b7ca11f7f3fc436eee9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<!-- $Id$ -->
  <title>CIAO - Component-Integrated ACE ORB</title>
</head>
<body>
<h1>CIAO - Component-Integrated ACE ORB</h1>
<h2>Introduction</h2>
CIAO is TAO's implementation of <a
 href="http://www.omg.org/cgi-bin/doc?formal/02-06-65"> CORBA Component
Model (CCM)</a> specially optimized for distributed real-time embedded
(DRE) systems.
This page contains links to other documents and resources for building
and using CIAO.<br>
<br>
<hr>
<h2>The CIAO Project</h2>
<ul>
  <li>The main <a href="http://www.cs.wustl.edu/%7Eschmidt/CIAO.html">
CIAO project page</a>.</li>
  <li><a href="../CIAO-INSTALL.html">Installation instructions</a> for
CIAO<br>
  </li>
  <li>CIAO <a href="releasenotes/index.html">Status (aka. release
notes.)</a></li>
  <li>CIAO <a href="cidlc.html">CIDL Compiler Options</a><br>
  <li>CIAO <a href="EnvVars.html">Environment Variables</a> <br>
  </li>
  <li>CIAO <a href="Trace.html">Logging Facility</a><br>
  </li>
  <li>CIAO <a href="../NEWS">NEWS</a></li>
</ul>
<hr>
<ul>
</ul>
<ul>
  <p><!--      

  <li>This <a href="new_components.html">page on implementing new

      component</a> explains all the user-defined and tool-generated

      files when implementing a component.<p>



  <li>The <a href="ConfigValues.html">Configuration Name/Value

      lists</a> lists all the configuration values that CIAO will pass

      into vaious CCM mechanisms.  The information shown in this page

      is not visible to CIAO end-users, which include modeling tool

      developers.  The information that matters for most users is how

      these configurations are represented in various XML

      descriptors and CIDL specifications.<p>

-->
  </p>
</ul>
<h2>CCM-defined Interface Diagrams</h2>
Here is a set of UML diagrams that we use to figure out the
relationship among all the different interfaces in CCM. You can
browse the related part from the following list:
<ul>
  <li><a href="imgs/component-basic.png"> Basic component interfaces </a></li>
  <li><a href="imgs/home-config.png"> Home and configuration interfaces
    </a></li>
  <li><a href="imgs/basic-container.png"> Basic container interfaces </a></li>
  <li><a href="imgs/extended-container.png"> Extended container
interfaces </a></li>
  <li><a href="imgs/DAnCE-Dynamic.png"> Deployment and configuration
(DAnCE) interfaces </a></li>
</ul>
All these diagrams are generated from the <a href="imgs/CCM.vsd">CCM.vsd
Visio file</a> (The same file in Visio V.5 format is <a
 href="imgs/CCM-v5.vsd">here</a>.) and OpenOffice source file 
 <a href="imgs/DAnCE-Dynamic.sxd">DAnCE-Dynamic.sxd</a> <br>
<br>
<hr>
<h2>CIAO's D&C Framework (<a href="http://www.dre.vanderbilt.edu/Doxygen/Current/html/tao/ciao/dance/index.html">DAnCE</a>) part-by-part</h2>
DAnCE's implementation is based on the OMG's Deployment and Configuration
Specification version [ptc/2003-07-08]. Here is a list of the major
actors of CIAO runtime that a user should be aware of.
<ul>
  <li><strong>NodeManager:</strong>
A daemon process responsible for managing NodeApplications that reside
in the same physical node.</li>
  <p> </p>
  <li><strong>NodeApplicationManager:</strong>
A infrastructure component responsible for deploying&nbsp;
locality-constrained applications onto a node. A NodeApplicationManager
is usually created by NodeManager.<br>
  </li>
  <p> </p>
  <li><strong>NodeApplication:</strong>
A component server instance spawned by NodeApplicationManager. <br>
  </li>
  <p> </p>
  <li><strong>ExecutionManager:</strong>
Infrastructure component responsible for executing an component-based
DRE application based on the information from DeploymentPlan.</li>
  <p> </p>
  <li><strong>DomainApplicationManager</strong>:
Domain-oriented auxiliary component created and used by
ExecutionManager to deploy the component-based DRE application at the
domain level. <br>
    <br>
  </li>
  <li><strong>PlanLauncher</strong></strong>:
Executor component responsible for parsing the XML-based
deploymentplan and passing the plan to ExecutionManager for execution.<br>
    <br>
To understand the runtime inter-relationships of various CIAO actors,
you may click <a href="imgs/DAnCE-Dynamic.png">here</a> to see a
sequence diagram that gives you a clear representation of what's
happening when you start a DAnCE-based DRE application. Special thanks
to <a href="mailto:Friedhelm.wolf@gmx.de">Friedhelm Wolf</a> who
initiated and contributed most part of this
diagram.<br>
    <br>
  </li>
</ul>
<hr>
<h2>CIAO CCM tutorials</h2>
There are several tutorials to help you understand CIAO and CCM:
<ul>
  <li> <a
 href="http://www.cs.wustl.edu/%7Eschmidt/OMG-CCM-Tutorial.ppt">Tutorial
on the CORBA Component Model (CCM)</a>. This tutorial presents an
overview of the CORBA Component Model (CCM),
describing its key features and illustrating how to write CCM
applications in C++.
    <p> </p>
  </li>
  <li><a href="../examples/Hello"><code>$(CIAO_ROOT)/DAnCE/examples/Hello.</code></a>
This example illustrates how to build and deploy a CIAO based
application <a href="../examples/Hello/step-by-step.html">step-by-step</a>.
There is
also a detailed documentation explaining this example avalable in both <a
 href="http://www.dre.vanderbilt.edu/%7Edengg/CCM/CCM_Hello_example.pdf">PDF</a>
and <a
 href="http://www.dre.vanderbilt.edu/%7Edengg/CCM/CCM_Hello_example.ppt">
PowerPoint</a> format.<br>
    <br>
  </li>
  <li><a href="./tutorials/Quoter/Simple">$(CIAO_ROOT)/docs/tutorials/Quoter/Simple</a>.
This example illustrates the implementation of the "famous" Quoter
example in the CIAO world. Please refer to <a
 href="tutorials/Quoter/Simple/README.html">README</a> for more
information.&nbsp; </li> <P>

<li><a
href="./tutorials/CoSMIC/">$(CIAO_ROOT)/docs/tutorials/COSMIC/</a>.
This is a step-by-step tutorial on how to use CoSMIC to
generate deployment descriptors requied by the above  <a
href="./tutorials/Quoter/Simple">Quoter</a> example </li>

</ul>
<!--#include virtual="/~nanbor/signature.html" --><!-- <hr> --><!-- <\!-- hhmts start -\-> --><!-- Last modified: Mon Nov 04 07:55:22 Central Standard Time 2002 --><!-- <\!-- hhmts end -\-> -->
<!-- <address>Nanbor Wang &lt;nanbor@cs.wustl.edu&gt;</address> --><!--  LocalWords:  CCM UML vsd Visio

 -->
</body>
</html>