next up previous index
Next: Named Prefixes Up: Chapter 3: Modifications to Previous: Mutual Exclusion in GS/OS   Index

Pathnames and Prefixes

Normally under GS/OS there are 32 prefixes, and these are all under control of the current application. GNO/ME extends this concept to provide each process with it's own copies of all prefixes. When a process modifies one of these prefixes via the GS/OS SetPrefix call, it modifies only it's own copy of that prefix -- the same numbered prefixes of any other processes are not modified.

Pathname processing has been expanded in GNO/ME. There are now two new special pathname operators that are accepted by any GS/OS call that takes a pathname parameter:

    .    current working directory
    ..   parent directory

For example, presume that the current working directory (prefix 0) is /foo/bar/moe. ``./ls'' refers to the file ``/foo/bar/moe/ls'', and since a pathname was specified, this overrides the shell's hash table. ``../ls`` refers to ``/foo/bar/ls''. The operators can be combined, also, as in ``../../ls'' (``/foo/ls''), and ``./.././ls'' (``/foo/bar/ls''). As you can see, the '.' operator is simply removed and has no effect other than to force a full expansion of the pathname.

Shorthand device names (.d2, .d5, etc) as are used in the ORCA/Shell are available only under System Software 6.0 and later. The common pathname operator '' (meaning the home directory) is handled by the shell; if the character appears in a GS/OS call it is not treated specially.

$2004 ChangePath
$200B ClearBackupBit
$2001 Create
$2002 Destroy
$200E ExpandPath
$2006 GetFileInfo
$200A GetPrefix
$2010 Open
$2005 SetFileInfo
$2009 SetPrefix


next up previous index
Next: Named Prefixes Up: Chapter 3: Modifications to Previous: Mutual Exclusion in GS/OS   Index
Feedback