From Jason Turner

[fs.definitions]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp6inu4xf7/{from.md → to.md} +122 -0
tmp/tmp6inu4xf7/{from.md → to.md} RENAMED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
+