To configure the remote
IPC over Ethernet feature, set the IPC_REMOTE
feature
to true. In addition, switch on the IOM_IPC
feature:
% configurator -set IOM_IPC=true |
This adds the Ethernet-specific module into the C_OS 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 the 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.
Configure Remote IPC over Ethernet, if not already configured:
% configurator -set IPC=true % configurator -set IPC_REMOTE=true% configurator -set IOM_IPC=true |
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 |
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 that need to communicate through remote IPC can now be launched on the tgtbd1
and tgtbd2
targets.