C

RMS Kernel Module

C.1 Introduction

The RMS kernel module supports the operation of RMS on each node in a system. It
provides functions that bind together the set of processes that make up a program on
each node, allowing RMS to apply scheduling, signal delivery and statistics gathering
operations to them collectively. Forexample, the RMS kernel module allows the rmsd
daemon or an administrator process to send a signal to all processes in a parallel
program at the same time.
The RMS kernel modulestores the Elan capabilities assigned to a program, making
them available to the processes ofthat program and their children. The capablilities are
only accessible to processes that belong to this one parallelprogram, they are not
available to other processes. The RMS kernel module keeps track of processes through
handlers called whenever a process belonging to a parallel programforks or exits.
Note that a parallel program under RMS may consist of one or more UNIX process
groups or sessions. It is the ability of a UNIX process to call setpgrp or setsid at any
time that makes the program structure providedby the RMS kernel modulenecessary;
without it, suspend, resume, signal delivery and program cleanup operations on
changing sets of processes are unreliable.

C.2 Capabilities

An Elan capability describes a parallel program’s rights to use one rail of Compaq
AlphaServer SC Interconnect. It specifies the range of nodes that have been allocated
RMS Kernel Module C-1