source: rtems-docs/filesystem/preface.rst @ 12dccfe

5
Last change on this file since 12dccfe was 12dccfe, checked in by Sebastian Huber <sebastian.huber@…>, on 01/09/19 at 15:14:05

Remove superfluous "All rights reserved."

  • Property mode set to 100644
File size: 2.7 KB
Line 
1.. comment SPDX-License-Identifier: CC-BY-SA-4.0
2
3.. Copyright (C) 1988, 2002 On-Line Applications Research Corporation (OAR)
4
5Preface
6*******
7
8This document describes the implementation of the RTEMS filesystem
9infrastructure.  This infrastructure supports the following capabilities:
10
11- Mountable file systems
12
13- Hierarchical file system directory structure
14
15- POSIX compliant set of routines for the manipulation of files and directories
16
17- Individual file and directory support for the following:
18
19  #. Permissions for read, write and execute
20  #. User ID
21  #. Group ID
22  #. Access time
23  #. Modification time
24  #. Creation time
25
26- Hard links to files and directories
27
28- Symbolic links to files and directories
29
30This has been implemented to provide the framework for a UNIX-like file system
31support. POSIX file and directory functions have been implemented that allow a
32standard method of accessing file, device and directory information within file
33systems. The file system concept that has been implemented allows for expansion
34and adaptation of the file system to a variety of existing and future data
35storage devices. To this end, file system mount and unmount capabilities have
36been included in this RTEMS framework.
37
38This framework slightly alters the manner in which devices are handled under
39RTEMS from that of public release 4.0.0 and earlier.  Devices that are defined
40under a given RTEMS configuration will now be registered as files in a mounted
41file system.  Access to these device drivers and their associated devices may
42now be performed through the traditional file system open(), read(), write(),
43lseek(), fstat() and ioctl() functions in addition to the interface provided by
44the IO Manager in the RTEMS Classic API.
45
46An In-Memory File System (IMFS) is included which provides full POSIX
47filesystem functionality yet is RAM based.  The IMFS maintains a node structure
48for each file, device, and directory in each mounted instantiation of its file
49system. The node structure is used to manage ownership, access rights, access
50time, modification time, and creation time.  A union of structures within the
51IMFS nodal structure provide for manipulation of file data, device selection,
52or directory content as required by the nodal type. Manipulation of these
53properties is accomplished through the POSIX set of file and directory
54functions.  In addition to being useful in its own right, the IMFS serves as a
55full featured example filesystem.
56
57The intended audience for this document is those persons implementing their own
58filesystem.  Users of the filesystem may find information on the implementation
59useful.  But the user interface to the filesystem is through the ISO/ANSI C
60Library and POSIX 1003.1b file and directory APIs.
Note: See TracBrowser for help on using the repository browser.