Main Page | Modules | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Mission Simulation ToolKit (MST) Installation Guide

MST platforms

MST was originally written to run on Linux, IRIX, and Windows. Due to the lack of interest in the IRIX version, however, the support for IRIX has been dropped. Due to problems with the RTI on Windows (which have since been solved) followed by the addition of threading support on Linux (which has not been ported to Windows), the Windows port has temporarily been dropped. Support for Windows should come back soon.

In summary, MST currently runs on two major Linux flavors:

Port to other Unix flavors should not be an issue, as long as you have an RTI supported on the desired platform (the showstopper for the MSF team for a while).

MST dependencies

The MST requires several packages. Besides the RTI for which the MSF team provides a license, all the other packages are Open-Source.

Note that all the required packages are installed on the IC-ARC AFS filesystem. Consequently, any person inside NASA Ames Research Center can directly use the pre-installed packages located at: /afs/ic-afs.arc.nasa.gov/msf/pkgs/

Obtaining MST

Two distribution channels of MST are available:

  1. A tarball of the latest stable release of MST can be downloaded on the NASA Ames Open Source distribution page:

  2. The latest version of MST as well as any of its stable tagged version can be checked-out using subversion

    Subversion is the next generation of the widely used project version control tool CVS. Its usage is very similar and full documentation can be found at: Subversion Book.

    The MST repository URL is (currently require IC-ARC AFS access):

    /afs/ic-afs.arc.nasa.gov/msf/Repository/MST

Installing MST

After obtaining a MST distribution there is a simple four-steps procedure:

  1. Build the Tiny Transform Library: this step can be skipped if you are using the AFS package distribution (you will then need to edit the scripts/locations.csh script to set the correct TTLROOT path).
    cd TTL
    make lib
    cd ..
    
  2. Edit the file scripts/locations.csh to reflect your current package distribution and MSF location.
  3. Configure your environment using the following command:
    source msfsource.csh
  4. Build MST using make:
    make install

Note that make install will build the core MST and all the existing components, plus generate the documentation. Typing make without argument will print an help message containing the other make targets.

By default MSF is configured to be built on multiple platforms from the same source tree. For this reason, all the objects, libraries and binaries are created into platform-dependent directories having the following form: ix86-linux-gcc3.3-glibc2.3 .

MST build system

The multi-platform MST build system is described in the MSF Build System manual.

Starting to use MST

Starting the RTI-Executive

Note:
If the provided Controller is used to start complex simulation, the following steps are not required since the controller itself starts the RTI-Executive. The Controller is described in the section MSF Controller.
From the $MSF_HOME/scripts directory:
./startRTI.csh

Technical details A central "facilitator", the RTI-Executive (rtiexec program) is required for the various components of a MSF simulation to connect. The rtiexec is using a naming service to facilitate the components connection. It is possible to configure the multicast port on the command line to allow multiple simulations running simultaneously on the same subnet. Then any component started read a configuration file describing this port (RTI.rid file).

To simplify the control of these parameters, the script setrtirid.csh creates (only if the file is not already existing) a correct configuration file named RTI.rid.username in the user home directory. The script setrtirid.csh is automatically invoked be both the msfsource.csh or startRTI.csh scripts, thus always configuring correctly the simulation.

Testing the installation

The simplest way to check that the base MSF libraries are working together with the HLA framework is to run some of the examples programs. The examples are located in the $MSF_HOME/examples directory. Note that these examples programs are also a very good starting point to learn the basic functionalities of the The Federate ToolKit (FTK) Module provided by MST.

All the examples can be built if make install had been used. Alternatively, they can be built using:

make examples

HLA objects and HLA interactions

These two examples will required three separate shells:
  1. One for the RTI-Executive started with startRTI.csh
  2. One for the sender, msfsource.csh should have been sourced
  3. One for the receiver, msfsource.csh should have been sourced

objects
send_updates number_of_objects number_of_updates delay_in_ms.
count_updates number_of_objects
The program send_updates creates some object and update their attributes, while count_updates is discovering the objects and is listening to the updates.

interactions
send_messages number_of_interactions delay_in_ms
count_messages number_of_interactions_to_receive
The program send_messages send HLA interactions while count_messages receive interactions. In the same way that the examples/objects programs do, the two programs are initially synchronize by checking if there are subscribers/publishers of the required data type.

A more graphical example

Starting a full simulation


Generated on Thu Apr 7 18:21:15 2005 for MST API by  doxygen 1.4.1