tmp/tmpef6oqhk4/{from.md → to.md}
RENAMED
|
@@ -1,5 +1,40 @@
|
|
| 1 |
### General <a id="fs.general">[[fs.general]]</a>
|
| 2 |
|
| 3 |
-
|
| 4 |
-
components, such as paths, regular files, and directories.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 5 |
|
|
|
|
| 1 |
### General <a id="fs.general">[[fs.general]]</a>
|
| 2 |
|
| 3 |
+
Subclause [[filesystems]] describes operations on file systems and
|
| 4 |
+
their components, such as paths, regular files, and directories.
|
| 5 |
+
|
| 6 |
+
A *file system* is a collection of files and their attributes.
|
| 7 |
+
|
| 8 |
+
A *file* is an object within a file system that holds user or system
|
| 9 |
+
data. Files can be written to, or read from, or both. A file has certain
|
| 10 |
+
attributes, including type. File types include regular files and
|
| 11 |
+
directories. Other types of files, such as symbolic links, may be
|
| 12 |
+
supported by the implementation.
|
| 13 |
+
|
| 14 |
+
A *directory* is a file within a file system that acts as a container of
|
| 15 |
+
directory entries that contain information about other files, possibly
|
| 16 |
+
including other directory files. The *parent directory* of a directory
|
| 17 |
+
is the directory that both contains a directory entry for the given
|
| 18 |
+
directory and is represented by the dot-dot filename [[fs.path.generic]]
|
| 19 |
+
in the given directory. The *parent directory* of other types of files
|
| 20 |
+
is a directory containing a directory entry for the file under
|
| 21 |
+
discussion.
|
| 22 |
+
|
| 23 |
+
A *link* is an object that associates a filename with a file. Several
|
| 24 |
+
links can associate names with the same file. A *hard link* is a link to
|
| 25 |
+
an existing file. Some file systems support multiple hard links to a
|
| 26 |
+
file. If the last hard link to a file is removed, the file itself is
|
| 27 |
+
removed.
|
| 28 |
+
|
| 29 |
+
[*Note 1*: A hard link can be thought of as a shared-ownership smart
|
| 30 |
+
pointer to a file. — *end note*]
|
| 31 |
+
|
| 32 |
+
A *symbolic link* is a type of file with the property that when the file
|
| 33 |
+
is encountered during pathname resolution [[fs.class.path]], a string
|
| 34 |
+
stored by the file is used to modify the pathname resolution.
|
| 35 |
+
|
| 36 |
+
[*Note 2*: Symbolic links are often called symlinks. A symbolic link
|
| 37 |
+
can be thought of as a raw pointer to a file. If the file pointed to
|
| 38 |
+
does not exist, the symbolic link is said to be a “dangling” symbolic
|
| 39 |
+
link. — *end note*]
|
| 40 |
|