Open System Services Programmer's Guide
The OSS file system theoretically allows an unlimited degree of nesting of directories within a
directory. You can have subdirectories in a directory, subsubdirectories in a subdirectory, and so
on. The Guardian environment allows only three levels in a node: volume, subvolume, and file ID.
You cannot have nesting; therefore, you cannot have a volume that is within another volume.
Filename and Pathname Mappings
The /G directory contains Guardian files, but they are referred to by OSS pathnames. Guardian
filenames are much more restricted than OSS pathnames and cannot always be used
interchangeably. For example, the OSS filenames properties.c and properties.d are both
translated into the Guardian file ID PROPERTI, because Guardian file IDs must be no longer than
eight characters, whereas OSS filenames can be much longer. This subsection describes how OSS
pathnames and Guardian filenames are mapped to each other, so that you can construct pathnames
and filenames whose information does not get lost in the translation process.
Translating OSS Pathnames to Guardian Filenames
OSS functions use /G directory pathnames when they access Guardian files. /G directory pathnames
for Guardian files on the local node begin with the root directory; Guardian files on another
NonStop server node can be found in the /E directory under the node name and that node’s
corresponding /G directory.
The following steps describe how the local node pathname:
/G/Data.Volume/src.l1.v3.4.8/properties.c
is translated into a Guardian filename.
1. The leading /G is replaced by the local node name with a backslash, a slash, and a dollar
sign ($). The intermediate result is:
\NODE/$Data.Volume/src.l1.v3.4.8/properties.c
2. The portable pathname characters period (.), comma (,), hyphen (-), and underscore (_) are
deleted. The intermediate result is:
\NODE/$DataVolume/srcl1v348/propertiesc
3. Name components, which are between the slashes, are truncated to eight characters. The
intermediate result is:
\NODE/$DataVol/srcl1v348/properti
4. Slashes are replaced by periods. The final result is:
\NODE.$DataVol.srcl1v348.properti
The following steps describe how the remote node pathname:
/E/NODE1/G/Data.Volume/src.l1.v3.4.8/properties.c
is translated into a Guardian filename.
1. The leading /E is replaced by a backslash. The intermediate result is:
\NODE1/G/Data.Volume/src.l1.v3.4.8/properties.c
2. The /G/ is replaced by a slash and a dollar sign ($). The intermediate result is:
\NODE1/$Data.Volume/src.l1.v3.4.8/properties.c
3. The portable pathname characters period (.), comma (,), hyphen (-), and underscore (_) are
deleted. The intermediate result is:
\NODE1/$DataVolume/srcl1v348/propertiesc
4. Name components, which are between the slashes, are truncated to eight characters. The
intermediate result is:
\NODE1/$DataVol/srcl1v348/properti
5. Slashes are replaced by periods. The final result is:
\NODE1.$DataVol.srcl1v348.properti
54 Managing Files