From 2d1dc3fe734a091e7d2b0ce335484be0db6c56b0 Mon Sep 17 00:00:00 2001 From: Amar Takhar Date: Sat, 16 Jan 2016 10:28:13 -0500 Subject: Split document into seperate files by section. --- filesystem/preface.rst | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 filesystem/preface.rst (limited to 'filesystem/preface.rst') diff --git a/filesystem/preface.rst b/filesystem/preface.rst new file mode 100644 index 0000000..812ebf5 --- /dev/null +++ b/filesystem/preface.rst @@ -0,0 +1,66 @@ +Preface +####### + +This document describes the implementation of the RTEMS filesystem +infrastructure. This infrastructure supports the following +capabilities: + +- Mountable file systems + +- Hierarchical file system directory structure + +- POSIX compliant set of routines for the manipulation of files and directories + +- Individual file and directory support for the following: + # Permissions for read, write and execute + # User ID + # Group ID + # Access time + # Modification time + # Creation time + +- Hard links to files and directories + +- Symbolic links to files and directories + +This has been implemented to provide the framework for a UNIX-like +file system support. POSIX file and directory functions have been +implemented that allow a standard method of accessing file, device and +directory information within file systems. 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 from that of public release 4.0.0 and earlier. Devices that +are defined under a given RTEMS configuration will now be registered as +files in a mounted file system. Access to these device drivers and their +associated devices may now be performed through the traditional file system +open(), read(), write(), lseek(), fstat() and ioctl() functions in addition +to the interface provided by the IO Manager in the RTEMS Classic API. + +An In-Memory File System (IMFS) is included which provides full POSIX +filesystem functionality yet is RAM based. The IMFS maintains a +node structure for each file, device, and directory in each mounted +instantiation of its 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 IMFS 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. In addition to being useful in its own right, +the IMFS serves as a full featured example filesystem. + +The intended audience for this document is those persons implementing +their own filesystem. Users of the filesystem may find information +on the implementation useful. But the user interface to the filesystem +is through the ISO/ANSI C Library and POSIX 1003.1b file and directory +APIs. + +.. COMMENT: COPYRIGHT (c) 1988-2002. + +.. COMMENT: On-Line Applications Research Corporation (OAR). + +.. COMMENT: All rights reserved. + -- cgit v1.2.3