OSF DCE Application Development Guide--Introduction and Style Guide

Using the DCE Name Service
the following:
ls -l /.../tinseltown.org/fs/doc/jones/app.gd
The clerk agent program (called as a result of the user’s entering ls) will bind to the
remote file server via its /.../tinseltown.org/fs DCE namespace entry, and pass to it the
residual DFS entry name doc/jones/app.gd along with other parameters. The ls
command behaves this way because the underlying (VFS+ layer) system calls are coded
that way. The DFS server then performs the request (note that the details of interaction
within DFS are somewhat more complex than implied by this description). The user only
types the command line; the rest is done by DCE, and a directory listing appears on the
user’s screen.
Because the VFS+ system routines, which are used by all possible clients of DFS
services (for example, commands like ls and rm, library routines like fopen( ) and
fclose( )), know about the remote file server at /.../tinseltown.org/fs and bind to it
correctly, the transition from the DCE to the DFS namespace is completely transparent to
users. And this is how junctions work. As long as all possible clients behave correctly
with a name that includes a junction, the junction will not be perceptible to the clients’
users.
5.3.1 AJunction Example
The next figure illustrates the principle of junctions. A junction server, which is reached
normally through binding information in the DCE namespace, maintains its own
namespace of named objects. The junction server’s clients allow users to refer to these
objects by actually concatenating the server’s entry name and an object’s internal name.
The client then in effect breaks this string apart by contacting the server named in the
first part of the string, and passing to it the second part, which is a valid name within the
server’s namespace. The client’s user seems to access the object directly.
Figure 5-2. A Namespace Junction
client
name namename name name
..............
.
.
.
.
.
...............
.
.
.
.
.
.
..............
.
.
.
.
.
.
.
...............
.
.
.
.
.
.
.
.
.............
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
..
.
..
.
..
.
..
.
..
.
.
..
.
..
.
..
.
..
.
.
.
..
.
..
.
..
.
..
.
..
.
.
..
.
..
.
..
.
..
.
.
junction
server
name
binding
object object object object object
124246 Tandem Computers Incorporated 55