SRV(3)SRV(3)NAMEsrv - server registry
SYNOPSIS
bind #s [ spec ] /chan
sys->bind("#sspec", "/chan", Sys->MREPL);
DESCRIPTION
Srv converts between file system operations by applications and mes‐
sages on channels, as described in sys-file2chan(2). Each attach that
does not include a spec produces a new instance: an empty directory
owned by the current user in which only files may be created, and then
only by sys-file2chan, using a special internal interface. Each such
file initially has the same owner as the directory, and permissions
8r600 (read-write for the owner only), but the permissions can be
changed by Sys->wstat (see sys-stat(2)) and thus chmod(1). If mode
Sys->DMEXCL is thereby set, the file becomes exclusive-use and can be
opened by only one process at a time. The file length and mode bit
Sys->DMAPPEND may also be set by wstat but are not interpreted by the
system.
Files may be removed, directly using sys-remove(2) (and thus rm(1)), or
indirectly by opening them with mode Sys->ORCLOSE (see sys-open(2)).
File2chan also removes the corresponding file when the last references
to the server's read and write channels have gone (eg, on server exit).
A spec may be given to name specific instances of srv, so that a new
name space can bind in a service created in another. Only the owner
(original creator) of the instance may attach to it, unless the mode of
the service directory is changed using Sys->wstat (see sys-stat(2)) to
have general access.
FILES
/chan directory to which srv is conventionally bound by various appli‐
cations
SOURCE
/emu/port/devsrv.c
/os/port/devsrv.c
SEE ALSOplumb(1), wm(1), sys-file2chan(2)SRV(3)