|
In the octopus, there are several name space conventions and programs
rely on them. This manual page documents such conventions. Besides,
depending on where the namespace is used, it is sensible to adhere
to Inferno or to the host OS (eg. Plan 9) conventions as well.
The script ons adjusts the Inferno name space to adhere the octopus
conventions.
There are several name spaces of interest, depending on where
the application executes (or where are we browsing files from).
Most times, applications and browsed files belong to the host
system of the PC (eg., Plan 9). The next subsection documents
such name space. A following section documents the name space
as found on the Inferno running at the PC.
PC Name space
This section assumens the PC host system is Plan 9 from Bell Labs.
Adjustment of name spaces in other native host systems is not
yet supported, although it will be in the future.
Most conventions of Plan 9 name spaces hold, like using /bin for
binaries and /usr for user files. The following files and directories
are also available when using the PC from the Octopus:
/dev/snarf The clipboard. Usually it is an actual file at bound
to along with the next file.
/dev/sel contains the path for the (user interface) panel where
a selection was last made. The file is kept at $home/lib/snarf/sel
or a similar place and bound to /dev like before.
/mnt contains directories where different resources added to the
PC can be found.
/mnt/ui contains the file system interface for the Octopus window
system, Omero. See omero(4) for a description.
/mnt/ports contains a directory providing the event delivery mechanism
used by the Octopus.
/mnt/view is a file viewer device. To view a file (e.g., a PDF)
it suffices to copy it to this directory. A document viewer at
a terminal near the user (probably one at the terminal being used
to request the copy) will be launched as a result of the copy.
/mnt/view/ndb is a text file describing properties of the view
device. Among other things it describes the location of the device
and the terminal providing it.
/mnt/print is a printing device. To print a file, copy it to this
directory. The file will be printed at the default printer queue
provided by a terminal near the user.
/mnt/print/ndb describes the print device. All devices include
an ndb file by convention (although we will not mention it further).
/mnt/print/voice is a voice synthesis device. To speak some text,
copy it to the speak file it provides. As all other devices mounted
at /mnt the device used will be one near the user.
/mnt/terms/terminal is a directory where devices and resources
from the machine terminal can be found. There are multiple terminals
mounted below /mnt/terms in the same way. We mention some devices
next, but not all of them would be provided by all terminals.
The devices found directly at /mnt
| |
| |
come indeed from the ones we mention here.
|
|
/mnt/terms/terminal/view
| |
| |
is the view device provided by the terminal.
|
|
/mnt/terms/terminal/print
| |
| |
is the print device from that terminal.
|
|
/mnt/terms/terminal/voice
| |
| |
is its voice synthesis device.
|
|
/mnt/terms/terminal/fs contains the file system from sysname (from
its native OS, not from the Inferno it runs). This can be used
to transfer files back and forth between the PC and the terminal.
/n/pc contains the name space of the Inferno running at the PC.
All resources described before in this list come from this file
tree.
/what contains information about machines.
/what/machine contains information about the system named machine.
/what/machine/where contains the machine location.
/what/machine/radius contains the RTT for performing a particular
FS operation on the machine from the PC.
/what/machine/owner contains the name of the user owning the machine.
/who contains information about users.
/who/user contains information about user user.
/who/user/where contains the last known location for the user.
/who/user/last contains the name of the last terminal used by this
user.
/who/user/status contains the status of the user. It is usually
on of online, busy, or away.
PC Inferno name space
The name space space at the Inferno running on the PC is similar
to that of any other Inferno installation, but includes the following
files and directories. Unless said otherwise, the directories
mean the same the do in the name space of the PC.
| |
| |
TP /dis/o contains the Dis binaries for the Octopus.
|
|
/dis/o/$emuhost contains Dis binaries for the Octopus intended
for the host system represented by the $emuhost variable. This
directory is bound also at /dis to add platform dependent binaries
to the portable ones.
/mnt/registry is the mount point for the registry, describing resources
known by the Octopus.
/mnt/ui
/mnt/ports
/mnt/snarf contains the snarf and sel files found at /dev in the
PC.
/mnt/view
/mnt/print
/mnt/voice
/mnt/fs contains the PC name space, including the files described
before for the PC.
/mnt/what is the PC /what directory, and contains information about
machines.
/mnt/who is the PC /who directory and contains information about
users.
/terms is similar to /mnt/terms in the PC.
Terminal name space
The name space at the Inferno running on a terminal has the file
tree of the PC's Inferno at /pc (using the Octopus protocol as
the file protocol) and also at /n/pc (using Styx as the file protocol).
The former works better on poor network connections but the later
is closer to expected semantics for file access. Also,
/mnt/registry /mnt/snarf and other devices from the PC are available
for use by terminal software.
|