Guardian Programmer's Guide

Table Of Contents
Using the File System
Guardian Programmer’s Guide 421922-014
2 - 8
Process File Names
operating system must therefore be able to distinguish different instances of the same
named server.
The named form of the process also permits qualifiers (q1 and q2) to be passed to the
process. These are alphanumeric values. q1 must start with a pound sign (#).
(q2 must not include a pound sign.) Although they are checked for correct format,
these qualifiers have no meaning to the file system. Their meaning is application-
dependent. When a process is opened by another process, the qualifiers are passed
to the process being opened. For example, $S.#WIDE might indicate to a spooler
collector process that it should direct the lines being sent to it to a printer with a line
width of 132 characters; $S.#NARROW would request a printer with a line width of
80 characters.
Process File Names for Unnamed Processes
Sometimes it is necessary to refer to a process without using a process name. For
example, you can identify one member of a process pair using a process file name for
an unnamed process.
The syntax for file names for unnamed processes follows:
An unnamed process is identified by a combination of the CPU module number (cpu)
and process identification number (pin). The process identification number (or PIN) is
a unique number within a CPU.
Note that the seq-no field is mandatory for unnamed processes. If a process fails and
some other process is created using the same CPU and PIN, the requester needs to
know that the new process is not the one that it has open. Using the sequence
number, the operating system is able to inform the requester that the server has failed
by sending it an error condition.
Process Descriptors
A process descriptor is a limited form of a process file name. It is the form of process
file name returned by Guardian procedure calls. The syntax for process descriptors
follows:
Process file name, unnamed process:
[node-name.]$:cpu:pin:seq-no
Process descriptor, named process:
node-name.process-name:seq-no
Process descriptor, unnamed process:
node-name.$:cpu:pin:seq-no