Open System Services Management and Operations Guide (G06.30+, H06.08+, J06.03+)

STARTUPMSG – Specifies a string of up to 128 characters to pass to OSH
USERID
As an alternative to specifying the HOMETERM attribute, you can use OSS shell input/output
redirection at the end of the STARTUPMSG value. For example:
STARTUPMSG "... <- >>out 2>>err"
The appended information is interpreted by the OSS shell as follows:
<-
closes standard input
>>out
redirects standard output to the file out in the current working directory of the OSS process
2>>err
redirects standard error to the file err in the current working directory of the OSS process
See the sh(1) reference page either online or in the Open System Services Shell and Utilities
Reference Manual for more information about OSS shell redirection.
Do not use the OSS shell nice command in the STARTUPMSG value or in a script started by
the STARTUPMSG value. Similarly, programs run as persistent processes should not use the
nice() function. Persistent processes with nondefault priorities can cause problems.
OSS generic processes also have the attribute ASSOCPROC, which provides a name for the
process itself, separate from the name of the OSH process that launches it:
The value used for ASSOCPROC must follow Guardian file-system naming conventions
for processes.
You must ensure that this name is unique among all those configured or running on your
node.
If you intend to run the process in more than one processor (for example, by using the
CPU attribute), then the value used for ASSOCPROC cannot contain more than three
characters in addition to the dollar sign ($) character.
The value configured for ASSOCPROC must be used in the -name flag of the command
used to launch the process (must be part of the value in the STARTUPMSG attribute for
OSH or embedded in a script called by part of the value in the STARTUPMSG attribute).
If an intermediary process is created by OSH such that the OSH -name flag would apply
to the wrong child process, then the OSS process must be started by a copy of the OSS
shell run command that includes the -name flag to name the correct child process.
The OSS environment variable $ZCPU contains the number of the processor used for
each child process launched. $ZCPU must be used to append the processor number to
the base process name when a -name flag is specified. This environment variable ensures
that process names remain unique within the node and allows you to synchronize the
ASSOCPROC name generated for each processor when the CPU attribute is used with
the process name used by the child process within the STARTUPMSG specification.
$ZCPU is defined only when the CPU ALL attribute is used or the CPU attribute is specified
as a list of processor numbers.
$ZCPU cannot be defined unless an OSS shell is running, so it can only be used in an
OSS shell script started by the STARTUPMSG specification. This consideration means that
an OSS persistent process that runs in more than one processor (an OSS persistent process
with a valid CPU attribute) must be started from within a script that uses an OSS shell
run command with a -name flag of the form:
run -name base_name$ZCPU...
Managing OSS Processes 65