clshmd(1M)

clshmd - Daemon for inter-partition shared-memory communication over CrayLink.

As shipped in IRIX 6.5.5. Last changed in IRIX 6.5.5.

NAME
     clshmd - Daemon for inter-partition shared-memory communication over
     CrayLink.

SYNOPSIS
     clshmd <unit>


DESCRIPTION
     clshmd is a daemon which facilitates the setting up and tearing down of
     shared-memory communication over CrayLink between different partitions of
     a partitioned Origin-2000 machine.  clshmd should not be started up
     directly from the command-line. Rather, the startup function of
     clshmctl(1m) should be used to set up this daemon.


     Each partition of a partitioned Origin-2000 runs a distinct kernel.
     CrayLink Shared-Memory allows low-latency shared-memory communication
     between applications running on the distinct partitions. For such
     communication to be effected, physical memory from one partition is
     mapped to user buffers in a different partition. The different kernels
     which are involved in such mappings have to exchange information for the
     mapping to take place.  clshmd allows the kernels to communicate over
     CrayLink using an RPC-like mechanism. It should be noted that the kernels
     need to communicate only when the inter-partition-mapped buffers are set
     up, torn down, when a new partition comes up dynamically, or when an
     existing partition is brought down for administrative maintainence or
     other reasons. Neither clshmd, nor the different kernels are involved
     during steady-state inter-partition shared-memory communication. The
     clshmd daemon contains some state necessary to allow the xp_func(3p) user
     library to have a system V-like interface which includes part_func(3p)
     helper functions.  It also has a shared memory segment that is shared
     between it and the clshm kernel driver.  It receives messages from the
     driver in this area and sends messages to the driver through ioctl(2)
     calls.


     clshmd takes only one parameter.  This parameter is the <unit> number of
     the clshm driver.  This should always be "0".  Other numbers are reserved
     for future expansion.  All other controlling state of the daemon can be
     set with the different parameters of the clshmctl(1m) command before the
     clshmctl startup command is issued.


     clshmd uses two hwgraph files.  /hw/clshm/0/ctl and /hw/clshm/0/shm are
     used by the clshm.  The "0" in the paths are the unit number of the clshm
     driver.  ctl stands for "control" file which is used for setting up
     shared memory between the driver and daemon and the shm stands for
     "shared memory" file which is used by the user library to mmap shared
     memory segments into user processes.
FILES
     /hw/clshm/


SEE ALSO
     clshmctl(1m), xp_func(3p), part_func(3p), clshm_diag(1m), mkpart(1m)