glenda.party
term% ls -F
term% cat index.txt
NAMESPACE(4)               Kernel Interfaces Manual               NAMESPACE(4)

NAME
       namespace - structure of conventional file name space

SYNOPSIS
       none

DESCRIPTION
       After  a user's profile has run, the file name space should adhere to a
       number of conventions if the system is to behave normally.  This manual
       page documents those conventions by traversing the file  hierarchy  and
       describing  the points of interest.  It also serves as a guide to where
       things reside in the file system proper.  The traversal is far from ex‐
       haustive.

       First, here is the appearance of the file server as it  appears  before
       any mounts or bindings.

       /      The root directory.

       /adm   The administration directory for the file server.

       /adm/users
              List of users known to the file server; see users(6).

       /adm/keys
              Authentication keys for users.

       /adm/netkeys
              SecureNet keys for users; see securenet(8).

       /adm/timezone
              Directory of timezone files; see ctime(2).

       /adm/timezone/EST.EDT
              Time zone description for Eastern Time.  Other such files are in
              this directory too.

       /adm/timezone/timezone
              Time  zone description for the local time zone; a copy of one of
              the other files in this directory.

       /bin

       /dev

       /env

       /fd

       /net

       /proc

       /srv

       /tmp   All empty unwritable directories, place holders for mounted ser‐
              vices and directories.

       /mnt   A directory containing mount points for applications.

       /n     A directory containing mount points for file trees imported from
              remote systems.

       /68020

       /386

       /sparc

       /960

       /mips  Each CPU architecture supported by Plan 9 has a directory in the
              root containing architecture-specific files, to be selected  ac‐
              cording  to  $objtype or $cputype (see 2c(1) and init(8)).  Here
              we list only those for /mips.

       /mips/init
              The  initialization  program  used  during  bootstrapping;   see
              init(8).

       /mips/bin
              Directory containing binaries for the MIPS architecture.

       /mips/bin/aux

       /mips/bin/games

       etc.   Subdirectories  of /mips/bin containing auxiliary tools and col‐
              lecting related programs.

       /mips/lib
              Directory of object code libraries as used by vl (see 2l(1)).

       /mips/include
              Directory of MIPS-specific C include files.

       /mips/9*
              The files in /mips beginning with a 9 are binaries of the  oper‐
              ating system.

       /mips/mkfile
              Selected by mk(1) when $objtype is mips, this file configures mk
              to compile for the MIPS architecture.

       /rc    Isomorphic to the architecture-dependent directories, this holds
              executables and libraries for the shell, rc(1).

       /rc/bin
              Directory of shell executable files.

       /rc/lib
              Directory of shell libraries.

       /rc/lib/rcmain
              Startup code for rc(1).

       /lib   Collections of data, generally not parts of programs.

       /lib/bible
              The King James edition

       /lib/chess

       /lib/sky

       etc.   Databases.

       /lib/ndb
              The network database used by the networking software; see ndb(6)
              and ndb(8).

       /lib/namespace
              The  file  used  by newns (see auth(2)) to establish the default
              name space; see namespace(6).

       /lib/font/bit
              Bitmap font files.

       /lib/font/hershey
              Vector font files.

       /sys   System software.

       /sys/include
              Directory of machine-independent C include files.

       /sys/include/alef
              Directory of ALEF include files.

       /sys/lib
              Pieces of programs not easily held in the various bins.

       /sys/lib/acid
              Directory of acid(1) load modules.

       /sys/lib/troff
              Directory of troff(1) font tables and macros.

       /sys/lib/yaccpar
              The yacc(1) parser.

       /sys/man
              The manual.

       /sys/doc
              Other system documentation.

       /sys/log
              Log files created by various system services.

       /sys/src
              Top-level directory of system sources.

       /sys/src/cmd
              Source to the commands in the bin directories.

       /sys/src/9
              Source to the operating system for terminals and CPU servers.

       /sys/src/fs
              Source to the operating system for file servers.

       /sys/src/lib*
              Source to the libraries.

       /sys/src/alef
              Source for ALEF compilers and libraries.

       /sys/src/alef/lib
              Source for ALEF libraries.

       /mail  Directory of electronic mail; see mail(1).

       /mail/box
              Directory of users' mail box files.

       /mail/lib
              Directory of alias files, etc.

       /acme  Directory of tools for acme(1).

       /cron  Directory of files for cron(8).

       The following files and directories are modified in the  standard  name
       space, as defined by /lib/namespace (see namespace(6)).

       /      The  root  of  the  name space.  It is a kernel device, root(3),
              serving a number of local mount points such as /bin and /dev  as
              well as the bootstrap program /boot.  Unioned with / is the root
              of the main file server.

       /boot  Compiled into the operating system kernel, this file establishes
              the  connection  to  the  main  file server and starts init; see
              boot(8) and init(8).

       /bin   Mounted here is a union  directory  composed  of  /$objtype/bin,
              /rc/bin,  $home/$objtype/bin, etc., so /bin is always the direc‐
              tory containing the appropriate executables for the current  ar‐
              chitecture.

       /dev   Mounted here is a union directory containing I/O devices such as
              the  console  (cons(3)),  the bitmap display (bit(3)), etc.  The
              window system, 8½(1), prefixes this directory with its own ver‐
              sion, overriding many device files  with  its  own,  multiplexed
              simulations of them.

       /env   Mounted  here is the environment device, env(3), which holds en‐
              vironment variables such as $cputype.

       /net   Mounted here is a union directory formed of all the network  de‐
              vices available.

       /net/cs
              The  communications point for the connection server, ndb/cs (see
              ndb(8)).

       /net/il

       /net/tcp

       /net/udp
              Directories holding the IP protocol devices (see ip(3)).

       /net/dk
              A directory holding the Datakit protocol devices (see dk(3)).

       /proc  Mounted here is the process device, proc(3), which provides  de‐
              bugging access to active processes.

       /fd    Mounted  here  is the dup device, dup(3), which holds pseudonyms
              for open file descriptors.

       /srv   Mounted here is the service registry, srv(3), which  holds  con‐
              nections to file servers.

       /srv/boot
              The  communication  channel  to the main file server for the ma‐
              chine.

       /mnt/8½
              Mount point for the window system.

       /mnt/term
              Mount point for the terminal's name space as  seen  by  the  CPU
              server after a cpu(1) command.

       /n/kremvax
              A place where machine kremvax's name space may be mounted.

       /tmp   Mounted here is each user's private tmp, $home/tmp.

SEE ALSO
       intro(1), namespace(6)

                                                                  NAMESPACE(4)