summaryrefslogtreecommitdiffstats
path: root/doc/filesystem
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1999-10-07 22:07:50 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1999-10-07 22:07:50 +0000
commitaa083e49ea3159f726f53d6286c8bc05623ce9b4 (patch)
tree3232c444ef865e9e8d4057b1f41c336489d6fdbd /doc/filesystem
parentRemove $(PROJECT).pdf not *.pdf. We were accidentally removing the (diff)
downloadrtems-aa083e49ea3159f726f53d6286c8bc05623ce9b4.tar.bz2
Built with preface for info.
Diffstat (limited to 'doc/filesystem')
-rw-r--r--doc/filesystem/Makefile108
-rw-r--r--doc/filesystem/filesystem.texi99
-rw-r--r--doc/filesystem/preface.texi72
3 files changed, 279 insertions, 0 deletions
diff --git a/doc/filesystem/Makefile b/doc/filesystem/Makefile
new file mode 100644
index 0000000000..74d2a8df30
--- /dev/null
+++ b/doc/filesystem/Makefile
@@ -0,0 +1,108 @@
+#
+# COPYRIGHT (c) 1988-1998.
+# On-Line Applications Research Corporation (OAR).
+# All rights reserved.
+#
+# $Id$
+#
+
+PROJECT=filesystem
+
+include ../Make.config
+
+REPLACE=../tools/word-replace
+
+BMENU+= -c
+
+all: html info ps pdf
+
+dirs:
+ $(make-dirs)
+
+COMMON_FILES=../common/cpright.texi ../common/setup.texi
+
+GENERATED_FILES=
+
+FILES= $(PROJECT).texi \
+ preface.texi $(GENERATED_FILES)
+
+INFOFILES=$(wildcard $(PROJECT) $(PROJECT)-*)
+
+info: dirs networking
+ #cp $(wildcard $(PROJECT) $(PROJECT)-*) $(INFO_INSTALL)
+ cp $(PROJECT) $(INFO_INSTALL)
+
+networking: $(FILES)
+ $(MAKEINFO) $(PROJECT).texi
+
+dvi: dirs $(PROJECT).dvi
+ps: dirs $(PROJECT).ps
+pdf: dirs $(PROJECT).pdf
+
+$(PROJECT).pdf: $(FILES)
+ $(TEXI2PDF) $(PROJECT).texi
+ cp $(PROJECT).pdf $(WWW_INSTALL)/$(PROJECT)
+
+$(PROJECT).ps: $(PROJECT).dvi
+ dvips -o $(PROJECT).ps $(PROJECT).dvi
+ cp $(PROJECT).ps $(WWW_INSTALL)/$(PROJECT)
+
+$(PROJECT).dvi: $(FILES)
+ $(TEXI2DVI) $(PROJECT).texi
+ cp $(PROJECT).dvi $(WWW_INSTALL)/$(PROJECT)
+
+networktasks.texi: networktasks.t Makefile
+ $(BMENU) -p "Preface" \
+ -u "Top" \
+ -n "Networking Driver" ${*}.t
+
+driver.texi: driver.t Makefile
+ $(BMENU) -p "Network Task Structure and Data Flow" \
+ -u "Top" \
+ -n "Using Networking in an RTEMS Application" ${*}.t
+
+networkapp.texi: networkapp.t Makefile
+ $(BMENU) -p "Write the Driver Statistic-Printing Function" \
+ -u "Top" \
+ -n "Testing the Driver" ${*}.t
+
+testing.texi: testing.t Makefile
+ $(BMENU) -p "Socket Options" \
+ -u "Top" \
+ -n "Network Servers" ${*}.t
+
+servers.texi: servers.t Makefile
+ $(BMENU) -p "Throughput" \
+ -u "Top" \
+ -n "DEC 21140 Driver" ${*}.t
+
+decdriver.texi: decdriver.t Makefile
+ $(BMENU) -p "Using Hooks" \
+ -u "Top" \
+ -n "Command and Variable Index" ${*}.t
+
+html: dirs $(FILES)
+ -mkdir -p $(WWW_INSTALL)/$(PROJECT)
+ rm -f $(WWW_INSTALL)/$(PROJECT)/networkflow.jpg
+ rm -f $(WWW_INSTALL)/$(PROJECT)/networkflow.png
+ rm -f $(WWW_INSTALL)/$(PROJECT)/PCIreg.jpg
+ cp recvbd.jpg $(WWW_INSTALL)/$(PROJECT)/recvbd.jpg
+ cp networkflow.jpg $(WWW_INSTALL)/$(PROJECT)/networkflow.jpg
+ cp networkflow.png $(WWW_INSTALL)/$(PROJECT)/networkflow.png
+ cp PCIreg.jpg $(WWW_INSTALL)/$(PROJECT)/PCIreg.jpg
+ $(TEXI2WWW) $(TEXI2WWW_ARGS) -dir $(WWW_INSTALL)/$(PROJECT) \
+ $(PROJECT).texi
+
+clean:
+ rm -f *.o $(PROG) *.txt core $(PROJECT).pdf
+ rm -f *.dvi *.ps *.log *.aux *.cp *.fn *.ky *.pg *.toc *.tp *.vr $(BASE)
+ rm -f $(PROJECT) $(PROJECT)-* $(GENERATED_FILES)
+ rm -f networking networking-*
+ rm -f timedata.texi timetbl.texi intr.texi wksheets.texi
+ rm -f timetbl.t wksheets.t
+ rm -f *.fixed _*
+
+convert:
+ /usr/bin/gs -dMaxBitmap=300000000 -g5500x7500 -sDEVICE=pdfwrite -q -dNOPAUSE -dSAFER -sOutputFile=networkflow.pdf -- networkflow.eps -c -quit
+ /usr/bin/gs -dMaxBitmap=300000000 -g4500x5500 -sDEVICE=pdfwrite -q -dNOPAUSE -dSAFER -sOutputFile=PCIreg.pdf -- PCIreg.eps -c -quit
+ /usr/bin/gs -dMaxBitmap=300000000 -g4500x5500 -sDEVICE=pdfwrite -q -dNOPAUSE -dSAFER -sOutputFile=recvbd.pdf -- recvbd.eps -c -quit
diff --git a/doc/filesystem/filesystem.texi b/doc/filesystem/filesystem.texi
new file mode 100644
index 0000000000..b22dd665e8
--- /dev/null
+++ b/doc/filesystem/filesystem.texi
@@ -0,0 +1,99 @@
+\input texinfo @c -*-texinfo-*-
+@c %**start of header
+@setfilename filesystem
+@syncodeindex vr fn
+@synindex ky cp
+@paragraphindent 0
+@c @smallbook
+@c %**end of header
+
+@c
+@c COPYRIGHT (c) 1988-1998.
+@c On-Line Applications Research Corporation (OAR).
+@c All rights reserved.
+@c
+@c $Id$
+@c
+
+@c
+@c Master file for the Filesystem Design Guide
+@c
+
+@include ../common/setup.texi
+
+@ignore
+@ifinfo
+@format
+START-INFO-DIR-ENTRY
+* RTEMS Filesystem Design Guide:
+END-INFO-DIR-ENTRY
+@end format
+@end ifinfo
+@end ignore
+
+@c
+@c Title Page Stuff
+@c
+
+@set edition @value{RTEMS-EDITION}
+@set version @value{RTEMS-VERSION}
+@set update-date @value{RTEMS-UPDATE-DATE}
+@set update-month @value{RTEMS-UPDATE-MONTH}
+
+@c
+@c I don't really like having a short title page. --joel
+@c
+@c @shorttitlepage RTEMS Filesystem Design Guide
+
+@setchapternewpage odd
+@settitle RTEMS Filesystem Design Guide
+@titlepage
+@finalout
+
+@title RTEMS Filesystem Design Guide
+@subtitle Edition @value{edition}, for RTEMS @value{version}
+@sp 1
+@subtitle @value{update-month}
+@author On-Line Applications Research Corporation
+@page
+@include ../common/cpright.texi
+@end titlepage
+
+@c This prevents a black box from being printed on "overflow" lines.
+@c The alternative is to rework a sentence to avoid this problem.
+
+@include preface.texi
+@ifinfo
+@node Top, Preface, (dir), (dir)
+@top filesystem
+
+This is the online version of the RTEMS Filesystem Design Guide.
+
+@menu
+* Preface::
+* Command and Variable Index::
+* Concept Index::
+@end menu
+
+@end ifinfo
+@c
+@c
+@c Need to copy the emacs stuff and "trailer stuff" (index, toc) into here
+@c
+
+@node Command and Variable Index, Concept Index, , Top
+@unnumbered Command and Variable Index
+
+There are currently no Command and Variable Index entries.
+
+@c @printindex fn
+
+@node Concept Index, , Command and Variable Index, Top
+@unnumbered Concept Index
+
+There are currently no Concept Index entries.
+@c @printindex cp
+
+@contents
+@bye
+
diff --git a/doc/filesystem/preface.texi b/doc/filesystem/preface.texi
new file mode 100644
index 0000000000..d9b55d89a7
--- /dev/null
+++ b/doc/filesystem/preface.texi
@@ -0,0 +1,72 @@
+@c
+@c COPYRIGHT (c) 1988-1998.
+@c On-Line Applications Research Corporation (OAR).
+@c All rights reserved.
+@c
+@c $Id$
+@c
+
+@ifinfo
+@node Preface, , Top, Top
+@end ifinfo
+@unnumbered Preface
+
+The following file system capabilities have been added to the existing
+RTEMS system:
+
+@itemize @bullet
+
+@item Mountable file systems
+
+@item Hierarchical file system directory structure
+
+@item POSIX compliant set of routines for the manipulation of files and directories
+
+@item Individual file and directory support for the following:
+
+@enumerate
+
+@item Permissions for read, write and execute
+
+@item User ID
+
+@item Group ID
+
+@item Access time
+
+@item Modification time
+
+@item Creation time
+
+@end enumerate
+
+@item Hard links to files and directories are supported
+
+@item Symbolic links to files and directories are supported
+
+@end itemize
+
+These enhancements have been made to provide the framework for `UNIX like'
+file system support. The POSIX file and directory functions have been
+implemented to allow a standard method of accessing file, device and
+directory information within the file system. The file system concept that
+has been implemented allows for expansion and adaptation of the file
+system to a variety of existing and future data storage devices. To this
+end, file system mount and unmount capabilities have been included in this
+RTEMS framework.
+
+This framework slightly alters the manner in which devices are handled
+under RTEMS. Devices that are defined under a given RTEMS configuration
+will now be registered as files in a mounted file system. Access to these
+devices and their associated device handlers will be obtained through the
+traditional file system open(), read(), write(), lseek(), fstat() and
+ioctl() functions.
+
+A node structure is maintained for each file, device, and directory in the
+file system. The node structure is used to manage ownership, access
+rights, access time, modification time, and creation time. A union of
+structures within the nodal structure provide for manipulation of file
+data, device selection, or directory content as required by the nodal
+type. Manipulation of these properties is accomplished through the POSIX
+set of file and directory functions.
+