- ... ``device.''1
- While NFS does not use the network
as a persistent storage medium, it uses it to communicate to servers that,
in turn, store the files on local disks.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... machines.2
- For example our department uses the
Amd automounter and has seen more than once the severe effects of its
aborting. Shells hang because of attempts to access auto-mounted paths in
users' $PATH variables, so no new programs can be started. Long-running
programs such as emacs also hang because they often perform file
systems access for user files, auto-saves, auto-loading emacs-lisp files,
etc. Within a few minutes of Amd's abnormal exit, the machine becomes
unusable and needs a reboot.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... interface3
- When I speak of the ``vnode interface,'' it
should be taken to include the vnode interface that provides operations on
files and the VFS interface that provides operations on file systems.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... ``chain''4
- Actually a DAG, to provide
fan-in and fan-out.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... ``prepare''5
- In transaction
terminology, ``prepare'' means to stop processing and prepare to either
commit or abort.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... Skinner6
- Both currently working at Sun
Microsystems.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... Wrapfs.7
- I do not change system
call interface functions such as create(2); the kernel is responsible
for calling a particular file systems' vnode operations, and those I may
modify.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... portability.8
- Most kernels (as well as Amd) were
written in C, and cannot handle module linkage of objects that are written
in C++. There are more C compilers available than C++ compilers, and C
compilers generally produce faster and smaller object modules.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... backups.9
- This is
what's called ``security by obscurity.''
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
- ... unintentionally.10
- At
least once, we all have intended to type rm *.o, but instead
typed rm * .o.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.