ChorusOS 4.0 Introduction

Remote IPC over Ethernet Data-link

To configure the remote IPC over Ethernet feature, set the IPC_REMOTE feature to true and the IPC_REMOTE_COMM feature to EXT (mentioned in "IPC Feature Configuration"). In addition, switch on the IOM_IPC feature:

% configurator -set IOM_IPC=true

This adds the Ethernet-specific module into the IOM component which acts as the IPC Ethernet data-link driver.

Once you have built and booted the ChorusOS system image on the target board tgtbd1, the IPC Ethernet data-link can be dynamically started. Use the built-in ethIpcStackAttach command of C_INIT (running on the target board tgtbd1) :

% rsh tgtbd1 ethIpcStackAttach ethernet-device-name

The ethernet-device-name argument is the name of your Ethernet device with which your remote IPC stack will communicate. This name is the full pathname of the Ethernet device in the target device tree, displayed on the target system console by the system at boot time. For example, a genesis2 board with a dec21140 Ethernet controller connected through a raven PCI bridge, has the pathname /raven/pci1011,9@e,0. This argument is only needed when the target board has more than one Ethernet controller.

See the ethIpcStackAttach(1M) man page for more details.

The following example describes how to build a ChorusOS system image for two similar PowerPC-based target boards, tgtbd1 and tgtbd2, each with an Ethernet controller. Site numbers must be unique and statically configured in each ChorusOS system image.

  1. Configure Remote IPC over Ethernet, if not already configured:

    % configurator -set IPC=true
    % configurator -set IPC_REMOTE=true
    % configurator -set IPC_REMOTE_COMM=EXT
    % configurator -set IOM_IPC=true

  2. Assign a site number to tgtbd1, then build and uniquely identify the ChorusOS system image:

    % configurator -set chorusSiteId=1
    % make chorus
    % mv chorus.RAM chorus.RAM.tgtbd1

    Assign a site number to tgtbd2, then build and uniquely identify the ChorusOS system image:

    % configurator -set chorusSiteId=2
    % make chorus
    % mv chorus.RAM chorus.RAM.tgtbd2

  3. Once you have booted the chorus.RAM.tgtbd1 system image on tgtbd1 and the chorus.RAM.tgtbd2 system image on tgtbd2, run the ethIpcStackAttach command:

    % rsh tgtbd1 ethIpcStackAttach
    % rsh tgtbd2 ethIpcStackAttach

Applications which need to communicate through remote IPC can now be launched on the tgtbd1 and tgtbd2 targets.