diff options
Diffstat (limited to 'modules/CIAO/examples/Hello/descriptors_RTCCM')
7 files changed, 799 insertions, 0 deletions
diff --git a/modules/CIAO/examples/Hello/descriptors_RTCCM/NodeManagerMap.dat b/modules/CIAO/examples/Hello/descriptors_RTCCM/NodeManagerMap.dat new file mode 100644 index 00000000000..fe88523971e --- /dev/null +++ b/modules/CIAO/examples/Hello/descriptors_RTCCM/NodeManagerMap.dat @@ -0,0 +1,2 @@ +SenderNode corbaloc:iiop:localhost:60001/NodeManager +ReceiverNode corbaloc:iiop:localhost:60002/NodeManager diff --git a/modules/CIAO/examples/Hello/descriptors_RTCCM/RTsvc.conf b/modules/CIAO/examples/Hello/descriptors_RTCCM/RTsvc.conf new file mode 100644 index 00000000000..1bfd9e8eaba --- /dev/null +++ b/modules/CIAO/examples/Hello/descriptors_RTCCM/RTsvc.conf @@ -0,0 +1,5 @@ +# No options required for regular testing + +# For real-time testing, uncomment the following line: +static RT_ORB_Loader "-ORBSchedPolicy SCHED_FIFO -ORBScopePolicy SYSTEM" + diff --git a/modules/CIAO/examples/Hello/descriptors_RTCCM/input.csr b/modules/CIAO/examples/Hello/descriptors_RTCCM/input.csr new file mode 100644 index 00000000000..a3881225930 --- /dev/null +++ b/modules/CIAO/examples/Hello/descriptors_RTCCM/input.csr @@ -0,0 +1,70 @@ + +<CIAO:ServerResources + xmlns:CIAO="http://www.dre.vanderbilt.edu/ServerResources" + xmlns:xmi="http://www.omg.org/XMI" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.dre.vanderbilt.edu/ServerResources CIAOServerResources.xsd"> + + <cmdline> + <arg> -ORBDebugLevel 10 -ORBEndpoint corbaloc://foo/bar</arg> + </cmdline> + + <svcconf> + <uri> + svcconf.uri + </uri> + </svcconf> + + <orbConfigs> + <resources> + <threadpool id="threadpool-1"> + <stacksize>100</stacksize> + <static_threads>50</static_threads> + <dynamic_threads>25</dynamic_threads> + <default_priority>5</default_priority> + <allow_request_buffering>true</allow_request_buffering> + <max_buffered_requests>10</max_buffered_requests> + <max_request_buffered_size>20</max_request_buffered_size> + </threadpool> + + <threadpoolWithLanes id="threadpool-2"> + <threadpoolLane> + <static_threads>50</static_threads> + <dynamic_threads>25</dynamic_threads> + <priority>36</priority> + </threadpoolLane> + <stacksize>100</stacksize> + <allow_borrowing>true</allow_borrowing> + <allow_request_buffering>true</allow_request_buffering> + <max_buffered_requests>10</max_buffered_requests> + <max_request_buffered_size>20</max_request_buffered_size> + </threadpoolWithLanes> + + <connectionBands id="cb-1"> + <band> + <low>0</low> + <high>10</high> + </band> + <band> + <low>11</low> + <high>20</high> + </band> + </connectionBands> + </resources> + + <policySet id="test_policy_set_id"> + <priorityModel server_priority="10"> + <priority_model>SERVER_DECLARED</priority_model> + </priorityModel> + <priorityModel> + <priority_model>CLIENT_PROPAGATED</priority_model> + </priorityModel> + + <threadpool>threadpool-1</threadpool> + <threadpool>threadpool-2</threadpool> + + <priorityBandedConnection>cb-1</priorityBandedConnection> + + </policySet> + </orbConfigs> +</CIAO:ServerResources>
\ No newline at end of file diff --git a/modules/CIAO/examples/Hello/descriptors_RTCCM/rt-config-example.cdp b/modules/CIAO/examples/Hello/descriptors_RTCCM/rt-config-example.cdp new file mode 100644 index 00000000000..72e1694b1c3 --- /dev/null +++ b/modules/CIAO/examples/Hello/descriptors_RTCCM/rt-config-example.cdp @@ -0,0 +1,215 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no" ?> +<Deployment:deploymentPlan + xmlns:Deployment="http://www.omg.org/Deployment" + xmlns:xmi="http://www.omg.org/XMI" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.omg.org/Deployment Modified_Deployment.xsd"> + + <label>Hello-DeploymentPlan</label> + + <UUID>Hello_Plan_UUID_0001</UUID> + + <realizes> + <label>BasicSP-realizes-cid</label> + <UUID>c0965470-7b83-11d9-9669-0800200c9a66</UUID> + <specificType/> + <supportedType>IDL:Hello/Sender:1.0</supportedType> + <port> + <name>read_message</name> + <specificType>IDL:Hello/ReadMessage:1.0</specificType> + <supportedType>IDL:Hello/ReadMessage:1.0</supportedType> + <provider>false</provider> + <exclusiveProvider>false</exclusiveProvider> + <exclusiveUser>true</exclusiveUser> + <optional>false</optional> + <kind>SimplexReceptacle</kind> + </port> + </realizes> + + <implementation id="Hello-Sender-mdd"> + <name>Hello-Sender-mdd</name> + <source/> + <artifact>Hello-Sender_exec</artifact> + <artifact>Hello-Sender_svnt</artifact> + </implementation> + + <implementation id="Hello-Receiver-mdd"> + <name>Hello-Receiver-mdd</name> + <source/> + <artifact>Hello-Receiver_exec</artifact> + <artifact>Hello-Receiver_svnt</artifact> + </implementation> + + <instance id="Hello-Sender-idd"> + <name>Hello-Sender-idd</name> + <node>SenderNode</node> + <source/> + <implementation>Hello-Sender-mdd</implementation> + <configProperty> + <name>ComponentIOR</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>Sender.ior</string> + </value> + </value> + </configProperty> + <configProperty> + <name>local_message</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>This is a test message passed in through XML.</string> + </value> + </value> + </configProperty> + <deployedResource> + <resourceUsage>InstanceUsesResource</resourceUsage> + <requirementName>CIAO:PolicySet</requirementName> + <resourceName>test_server_resource_id</resourceName> + <resourceValue> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>test_policy_set_id</string> + </value> + </resourceValue> + </deployedResource> + </instance> + + <instance id="Hello-Receiver-idd"> + <name>Hello-Receiver-idd</name> + <node>ReceiverNode</node> + <source/> + <implementation>Hello-Receiver-mdd</implementation> + <configProperty> + <name>ComponentIOR</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>Receiver.ior</string> + </value> + </value> + </configProperty> + </instance> + + <connection> + <name>hell_event_connection</name> + <internalEndpoint> + <portName>click_out</portName> + <kind>EventPublisher</kind> + <instance>Hello-Sender-idd</instance> + </internalEndpoint> + <internalEndpoint> + <portName>click_in</portName> + <kind>EventConsumer</kind> + <instance>Hello-Receiver-idd</instance> + </internalEndpoint> + </connection> + + <connection> + <name>hello_facet_connection</name> + <internalEndpoint> + <portName>push_message</portName> + <kind>Facet</kind> + <instance>Hello-Sender-idd</instance> + </internalEndpoint> + <internalEndpoint> + <portName>read_message</portName> + <kind>SimplexReceptacle</kind> + <instance>Hello-Receiver-idd</instance> + </internalEndpoint> + </connection> + + <artifact id="Hello-Sender_exec"> + <name>Sender_exec</name> + <source/> + <node/> + <location>Sender_DnC_exec</location> + <execParameter> + <name>entryPoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>createSenderHome_Impl</string> + </value> + </value> + </execParameter> + </artifact> + + <artifact id="Hello-Sender_svnt"> + <name>Sender_svnt</name> + <source/> + <node/> + <location>Sender_DnC_svnt</location> + <execParameter> + <name>entryPoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_Hello_SenderHome_Servant</string> + </value> + </value> + </execParameter> + </artifact> + + <artifact id="Hello-Receiver_exec"> + <name>Receiver_exec</name> + <source/> + <node/> + <location>Receiver_DnC_exec</location> + <execParameter> + <name>entryPoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>createReceiverHome_Impl</string> + </value> + </value> + </execParameter> + </artifact> + + <artifact id="Hello-Receiver_svnt"> + <name>Receiver_svnt</name> + <source/> + <node/> + <location>Receiver_DnC_svnt</location> + <execParameter> + <name>entryPoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_Hello_ReceiverHome_Servant</string> + </value> + </value> + </execParameter> + </artifact> + + <infoProperty> + <name>CIAOServerResources</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>rt-config-example.csr</string> + </value> + </value> + </infoProperty> + +</Deployment:deploymentPlan> diff --git a/modules/CIAO/examples/Hello/descriptors_RTCCM/rt-config-example.csr b/modules/CIAO/examples/Hello/descriptors_RTCCM/rt-config-example.csr new file mode 100644 index 00000000000..fa567f78c90 --- /dev/null +++ b/modules/CIAO/examples/Hello/descriptors_RTCCM/rt-config-example.csr @@ -0,0 +1,73 @@ + +<CIAO:ServerResources + xmlns:CIAO="http://www.dre.vanderbilt.edu/ServerResources" + xmlns:xmi="http://www.omg.org/XMI" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.dre.vanderbilt.edu/ServerResources CIAOServerResources.xsd" + id="test_server_resource_id"> + + <cmdline> + <arg>-r</arg> + </cmdline> + + <svcconf> + <uri>RTsvc.conf</uri> + </svcconf> + + <orbConfigs> + <resources> + <threadpool id="threadpool-1"> + <stacksize>0</stacksize> + <static_threads>5</static_threads> + <dynamic_threads>0</dynamic_threads> + <default_priority>1</default_priority> + <allow_request_buffering>false</allow_request_buffering> + <max_buffered_requests>0</max_buffered_requests> + <max_request_buffered_size>0</max_request_buffered_size> + </threadpool> + + <threadpoolWithLanes id="threadpool-2"> + <threadpoolLane> + <static_threads>5</static_threads> + <dynamic_threads>0</dynamic_threads> + <priority>2</priority> + </threadpoolLane> + <threadpoolLane> + <static_threads>5</static_threads> + <dynamic_threads>0</dynamic_threads> + <priority>1</priority> + </threadpoolLane> + <stacksize>0</stacksize> + <allow_borrowing>false</allow_borrowing> + <allow_request_buffering>false</allow_request_buffering> + <max_buffered_requests>0</max_buffered_requests> + <max_request_buffered_size>0</max_request_buffered_size> + </threadpoolWithLanes> + + <connectionBands id="cb-1"> + <band> + <low>0</low> + <high>10</high> + </band> + <band> + <low>11</low> + <high>20</high> + </band> + </connectionBands> + </resources> + + <policySet id="test_policy_set_id"> + <priorityModel server_priority="1"> + <priority_model>SERVER_DECLARED</priority_model> + </priorityModel> + </policySet> + + <policySet id="test_policy_set_2"> + <priorityModel> + <priority_model>CLIENT_PROPAGATED</priority_model> + </priorityModel> + <threadpool>threadpool-2</threadpool> + </policySet> + + </orbConfigs> +</CIAO:ServerResources> diff --git a/modules/CIAO/examples/Hello/descriptors_RTCCM/rt-example.cdp b/modules/CIAO/examples/Hello/descriptors_RTCCM/rt-example.cdp new file mode 100644 index 00000000000..6dc5b078d58 --- /dev/null +++ b/modules/CIAO/examples/Hello/descriptors_RTCCM/rt-example.cdp @@ -0,0 +1,271 @@ +<Deployment:deploymentPlan + xmlns:Deployment="http://www.omg.org/Deployment" + xmlns:xmi="http://www.omg.org/XMI" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://www.omg.org/Deployment Deployment.xsd"> + + <label>Hello-DeploymentPlan</label> + <UUID>Hello_Plan_UUID_0001</UUID> + <!-- Could be ZERO --> + <realizes> + <label>BasicSP-realizes-cid</label> + <UUID>c0965470-7b83-11d9-9669-0800200c9a66</UUID> + <specificType><!-- @@ What does here? --></specificType> + <supportedType>IDL:BasicSP/EC:1.0</supportedType> + <port> + <name>read_message</name> + <specificType>IDL:Hello/ReadMessage:1.0</specificType> + <supportedType>IDL:Hello/ReadMessage:1.0</supportedType> + <provider>false</provider> + <exclusiveProvider>false</exclusiveProvider> + <exclusiveUser>true</exclusiveUser> + <optional>false</optional> + <kind>SimplexReceptacle</kind> + </port> + </realizes> + + <implementation id="Hello-Sender-mdd"> + <name>Hello-Sender-mdd</name> + <source><!-- @@ Don't know what goes here --></source> + <artifact>Hello-Sender_exec</artifact> + <artifact>Hello-Sender_svnt</artifact> + <!-- + <execParameter></execParameter> + <deployRequirement></deployRequirement> + --> + </implementation> + + <implementation id="Hello-Receiver-mdd"> + <name>Hello-Receiver-mdd</name> + <source><!-- @@ Don't know what goes here --></source> + <artifact>Hello-Receiver_exec</artifact> + <artifact>Hello-Receiver_svnt</artifact> + <!-- + <execParameter></execParameter> + <deployRequirement></deployRequirement> + --> + </implementation> + + <instance id="Hello-Sender-idd"> + <name>Hello-Sender-idd</name> + <node>SenderNode</node> + <source><!-- @@ What goes here --></source> + <implementation>Hello-Sender-mdd</implementation> + + <!-- Add this property if you want to write component reference to IOR --> + <configProperty> + <name>ComponentIOR</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>Sender.ior</string> + </value> + </value> + </configProperty> + + <!-- Add this property if you want to initialize component attribute --> + <configProperty> + <name>local_message</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>This is a test message passed in through XML.</string> + </value> + </value> + </configProperty> + + <!-- This attribute initializes an enumerated value --> + <configProperty> + <name>color</name> + <value> + <type> + <kind>tk_enum</kind> + <enum> + <name>COLOR_SELECTION</name> + <typeId>IDL:Hello/COLOR_SELECTION:1.0</typeId> + <member>empty</member> + <member>white</member> + <member>red</member> + <member>yellow</member> + </enum> + </type> + <value> + <enum>yellow</enum> + </value> + </value> + </configProperty> + + <deployedResource> + <resourceUsage>InstanceUsesResource</resourceUsage> + <requirementName>CIAO:PolicySet</requirementName> + <resourceName>test_server_resource_id</resourceName> + <property> + <name>CIAO:PolicySetName</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>test_policy_set_id</string> + </value> + </value> + </property> + </deployedResource> + + </instance> + + <instance id="Hello-Receiver-idd"> + <name>Hello-Receiver-idd</name> + <node>SenderNode</node> + <source><!-- @@ What goes here --></source> + <implementation>Hello-Receiver-mdd</implementation> + <configProperty> + <name>ComponentIOR</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>Receiver.ior</string> + </value> + </value> + </configProperty> + + <deployedResource> + <resourceUsage>InstanceUsesResource</resourceUsage> + <requirementName>CIAO:PolicySet</requirementName> + <resourceName>test_server_resource_id</resourceName> + <property> + <name>CIAO:PolicySetName</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>test_policy_set_id</string> + </value> + </value> + </property> + </deployedResource> + + </instance> + + + <connection> + <name>hell_event_connection</name> + <internalEndpoint> + <portName>click_out</portName> + <kind>EventPublisher</kind> + <instance>Hello-Sender-idd</instance> + </internalEndpoint> + <internalEndpoint> + <portName>click_in</portName> + <kind>EventConsumer</kind> + <instance>Hello-Receiver-idd</instance> + </internalEndpoint> + </connection> + + <connection> + <name>hello_facet_connection</name> + <internalEndpoint> + <portName>push_message</portName> + <kind>Facet</kind> + <instance>Hello-Sender-idd</instance> + </internalEndpoint> + <internalEndpoint> + <portName>read_message</portName> + <kind>SimplexReceptacle</kind> + <instance>Hello-Receiver-idd</instance> + </internalEndpoint> + </connection> + + <!-- @@ Runtime library name must match exactly in "location" tag --> + <artifact id="Hello-Sender_exec"> + <name>Sender_exec</name> + <source><!-- @@ Not sure about this--></source> + <node><!-- blank --></node> + <location>Sender_DnC_exec</location> + <execParameter> + <name>entryPoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>createSenderHome_Impl</string> + </value> + </value> + </execParameter> + </artifact> + + <artifact id="Hello-Sender_svnt"> + <name>Sender_svnt</name> + <source><!-- @@ Not sure --></source> + <node><!-- blank --></node> + <location>Sender_DnC_svnt</location> + <execParameter> + <name>entryPoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_Hello_SenderHome_Servant</string> + </value> + </value> + </execParameter> + </artifact> + + <artifact id="Hello-Receiver_exec"> + <name>Receiver_exec</name> + <source><!-- @@ Not sure about this--></source> + <node><!-- blank --></node> + <location>Receiver_DnC_exec</location> + <execParameter> + <name>entryPoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>createReceiverHome_Impl</string> + </value> + </value> + </execParameter> + </artifact> + + <artifact id="Hello-Receiver_svnt"> + <name>Receiver_svnt</name> + <source><!-- @@ Not sure --></source> + <node><!-- blank --></node> + <location>Receiver_DnC_svnt</location> + <execParameter> + <name>entryPoint</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>create_Hello_ReceiverHome_Servant</string> + </value> + </value> + </execParameter> + </artifact> + + <infoProperty> + <name>CIAOServerResources</name> + <value> + <type> + <kind>tk_string</kind> + </type> + <value> + <string>rt-config-example.csr</string> + </value> + </value> + </infoProperty> + +</Deployment:deploymentPlan> diff --git a/modules/CIAO/examples/Hello/descriptors_RTCCM/rt_run_test.pl b/modules/CIAO/examples/Hello/descriptors_RTCCM/rt_run_test.pl new file mode 100755 index 00000000000..a790fef1be0 --- /dev/null +++ b/modules/CIAO/examples/Hello/descriptors_RTCCM/rt_run_test.pl @@ -0,0 +1,163 @@ +eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' + & eval 'exec perl -S $0 $argv:q' + if 0; + +# $Id$ +# -*- perl -*- + +use lib "$ENV{'ACE_ROOT'}/bin"; +use PerlACE::Run_Test; +$CIAO_ROOT = "$ENV{'CIAO_ROOT'}"; +$DAnCE = "$ENV{'ACE_ROOT'}/TAO/CIAO/DAnCE"; + +$daemons_running = 0; +$em_running = 0; +$daemons = 2; +@ports = ( 60001, 60002 ); +@iorfiles = ( "NodeApp1.ior", "NodeApp2.ior" ); +$status = 0; +$dat_file = "NodeManagerMap.dat"; +$cdp_file = "DeploymentPlan.cdp"; +$controller_exec = "$CIAO_ROOT/examples/Hello/Sender/starter"; + +$E = 0; +$EM = 0; + +# Delete if there are any .ior files. +sub delete_ior_files { + for ($i = 0; $i < $daemons; ++$i) { + unlink $iorfiles[$i]; + } + unlink PerlACE::LocalFile ("EM.ior"); + unlink PerlACE::LocalFile ("Receiver.ior"); + unlink PerlACE::LocalFile ("Sender.ior"); + unlink PerlACE::LocalFile ("DAM.ior"); +} + +sub kill_node_daemons { + for ($i = 0; $i < $daemons; ++$i) { + $Daemons[$i]->Kill (); $Daemons[$i]->TimedWait (1); + } +} + +sub kill_open_processes { + if ($daemons_running == 1) { + kill_node_daemons (); + } + + if ($em_running == 1) { + $EM->Kill (); + $EM->TimedWait (1); + } +} + +sub run_node_daemons { + for ($i = 0; $i < $daemons; ++$i) + { + $iorfile = $iorfiles[$i]; + $port = $ports[$i]; + + $iiop = "iiop://localhost:$port"; + $node_app = "$DAnCE/NodeApplication/NodeApplication"; + + $d_cmd = "$DAnCE/NodeManager/NodeManager"; + + # NON-RT +# $d_param = "-ORBEndpoint $iiop -s $node_app -o $iorfile"; + + # RT enabled + $d_param = "-ORBEndpoint $iiop -s $node_app -a \"-r\" -o $iorfile"; + + $Daemons[$i] = new PerlACE::Process ($d_cmd, $d_param); + $result = $Daemons[$i]->Spawn (); + push(@processes, $Daemons[$i]); + + if (PerlACE::waitforfile_timed ($iorfile, + $PerlACE::wait_interval_for_process_creation) == -1) { + print STDERR + "ERROR: The ior file of node daemon $i could not be found\n"; + for (; $i > 0; --$i) { + $Daemons[$i]->Kill (); $Daemons[$i]->TimedWait (1); + } + return -1; + } + } + $daemons_running = 1; + return 0; +} + +delete_ior_files (); + +# Invoke node daemons. +print "Invoking node daemons\n"; +$status = run_node_daemons (); + +if ($status != 0) { + print STDERR "ERROR: Unable to execute the node daemons\n"; + exit 1; +} + +$ns_running = 1; + +# Invoke execution manager. +print "Invoking execution manager\n"; +$EM = new PerlACE::Process ("$DAnCE/ExecutionManager/Execution_Manager", + "-o EM.ior -i $dat_file"); +$EM->Spawn (); + +if (PerlACE::waitforfile_timed ("EM.ior", + $PerlACE::wait_interval_for_process_creation) == -1) { + print STDERR + "ERROR: The ior file of execution manager could not be found\n"; + kill_open_processes (); + exit 1; +} + +$em_running = 1; + +# Invoke executor - start the application -. +print "Invoking executor - start the application -\n"; +$E = + new PerlACE::Process ("$DAnCE/Plan_Launcher/plan_launcher", + "-p rt-example.cdp -k file://EM.ior -o DAM.ior"); + +$E->SpawnWaitKill (5000); + +if (PerlACE::waitforfile_timed ( + "Receiver.ior", + $PerlACE::wait_interval_for_process_creation) == -1) { + print STDERR "ERROR: The ior file of receiver could not be found\n"; + kill_open_processes (); + exit 1; +} + +if (PerlACE::waitforfile_timed ("Sender.ior", + $PerlACE::wait_interval_for_process_creation) == -1) { + print STDERR "ERROR: The ior file of sender could not be found\n"; + kill_open_processes (); + exit 1; +} + +print "Invoking the controller\n"; +$controller = new PerlACE::Process ("$controller_exec", "-k file://Sender.ior"); +$result = $controller->SpawnWaitKill (3000); + +if ($result != 0) { + print STDERR "ERROR: The controller returned $result\n"; + $status = 1; +} + +# Invoke executor - stop the application -. +print "Invoking executor - stop the application -\n"; +$E = + new PerlACE::Process ("$DAnCE/Plan_Launcher/plan_launcher", + "-k file://EM.ior -i file://DAM.ior"); +$E->SpawnWaitKill (3000); + +print "Executor returned.\n"; +print "Shutting down rest of the processes.\n"; + +delete_ior_files (); +kill_open_processes (); + +exit $status; |