From Jason Turner

[fs.definitions]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpsuqqnu62/{from.md → to.md} +0 -122
tmp/tmpsuqqnu62/{from.md → to.md} RENAMED
@@ -1,122 +0,0 @@
1
- ### Terms and definitions <a id="fs.definitions">[[fs.definitions]]</a>
2
-
3
- A path that unambiguously identifies the location of a file without
4
- reference to an additional starting location. The elements of a path
5
- that determine if it is absolute are operating system dependent.
6
-
7
- A file within a file system that acts as a container of directory
8
- entries that contain information about other files, possibly including
9
- other directory files.
10
-
11
- An object within a file system that holds user or system data. Files can
12
- be written to, or read from, or both. A file has certain attributes,
13
- including type. File types include regular files and directories. Other
14
- types of files, such as symbolic links ([[fs.def.symlink]]), may be
15
- supported by the implementation.
16
-
17
- A collection of files and their attributes.
18
-
19
- The condition that occurs when multiple threads, processes, or computers
20
- interleave access and modification of the same object within a file
21
- system.
22
-
23
- The name of a file. Filenames *dot* and *dot-dot*, consisting solely of
24
- one and two period characters respectively, have special meaning. The
25
- following characteristics of filenames are operating system dependent:
26
-
27
- - The permitted characters. \[*Example 1*: Some operating systems
28
- prohibit the ASCII control characters (0x00 – 0x1F) in
29
- filenames. — *end example*]
30
- - The maximum permitted length.
31
- - Filenames that are not permitted.
32
- - Filenames that have special meaning.
33
- - Case awareness and sensitivity during path resolution.
34
- - Special rules that may apply to file types other than regular files,
35
- such as directories.
36
-
37
- A link ([[fs.def.link]]) to an existing file. Some file systems support
38
- multiple hard links to a file. If the last hard link to a file is
39
- removed, the file itself is removed.
40
-
41
- [*Note 1*: A hard link can be thought of as a shared-ownership smart
42
- pointer to a file. — *end note*]
43
-
44
- An object that associates a filename with a file. Several links can
45
- associate names with the same file.
46
-
47
- For narrow character strings, the operating system dependent current
48
- encoding for pathnames ([[fs.def.pathname]]). For wide character
49
- strings, the implementation-defined execution wide-character set
50
- encoding ([[lex.charset]]).
51
-
52
- The operating system dependent pathname format accepted by the host
53
- operating system.
54
-
55
- A path in normal form is said to be *normalized*. The process of
56
- obtaining a normalized path from a path that is not in normal form is
57
- called *normalization*.
58
-
59
- Normalization of a generic format pathname means:
60
-
61
- 1. If the path is empty, stop.
62
- 2. Replace each slash character in the *root-name* with a
63
- *preferred-separator*.
64
- 3. Replace each *directory-separator* with a *preferred-separator*.
65
- \[*Note 2*: The generic pathname grammar ([[fs.path.generic]])
66
- defines *directory-separator* as one or more slashes and
67
- *preferred-separator*s. — *end note*]
68
- 4. Remove each *dot* filename and any immediately following
69
- *directory-separator*.
70
- 5. As long as any appear, remove a non-*dot-dot* filename immediately
71
- followed by a *directory-separator* and a *dot-dot* filename, along
72
- with any immediately following *directory-separator*.
73
- 6. If there is a *root-directory*, remove all *dot-dot* filenames and
74
- any *directory-separator*s immediately following them.
75
- \[*Note 3*: These *dot-dot* filenames attempt to refer to
76
- nonexistent parent directories. — *end note*]
77
- 7. If the last filename is *dot-dot*, remove any trailing
78
- *directory-separator*.
79
- 8. If the path is empty, add a *dot*.
80
-
81
- Behavior that is dependent upon the behavior and characteristics of an
82
- operating system. See  [[fs.conform.os]].
83
-
84
- the directory that both contains a directory entry for the given
85
- directory and is represented by the filename *dot-dot* in the given
86
- directory.
87
-
88
- a directory containing a directory entry for the file under discussion.
89
-
90
- A sequence of elements that identify the location of a file within a
91
- filesystem. The elements are the *root-name*ₒₚₜ , *root-directory*ₒₚₜ ,
92
- and an optional sequence of filenames. The maximum number of elements in
93
- the sequence is operating system dependent.
94
-
95
- A character string that represents the name of a path. Pathnames are
96
- formatted according to the generic pathname format grammar (
97
- [[fs.path.generic]]) or an operating system dependent native pathname
98
- format.
99
-
100
- Pathname resolution is the operating system dependent mechanism for
101
- resolving a pathname to a particular file in a file hierarchy. There may
102
- be multiple pathnames that resolve to the same file.
103
-
104
- [*Example 2*: POSIX specifies the mechanism in section 4.11, Pathname
105
- resolution. — *end example*]
106
-
107
- A path that is not absolute, and as such, only unambiguously identifies
108
- the location of a file when resolved ([[fs.def.pathres]]) relative to
109
- an implied starting location. The elements of a path that determine if
110
- it is relative are operating system dependent.
111
-
112
- [*Note 4*: Pathnames “.” and “..” are relative paths. — *end note*]
113
-
114
- A type of file with the property that when the file is encountered
115
- during pathname resolution, a string stored by the file is used to
116
- modify the pathname resolution.
117
-
118
- [*Note 5*: Symbolic links are often called symlinks. A symbolic link
119
- can be thought of as a raw pointer to a file. If the file pointed to
120
- does not exist, the symbolic link is said to be a “dangling” symbolic
121
- link. — *end note*]
122
-