Content deleted Content added
→Conventional directory layout: Grammar |
No edit summary Tags: Mobile edit Mobile app edit iOS app edit |
||
Line 13:
The filesystem appears as one [[rooted tree]] of directories.<ref name="Ritchie"/> Instead of addressing separate volumes such as [[Disk partitioning|disk partitions]], removable media, and [[network share]]s as separate trees (as done in [[DOS]] and [[Microsoft Windows|Windows]]: each ''drive'' has a drive letter that denotes the root of its file system tree), such volumes can be ''[[mount (Unix)|mounted]]'' on a directory, causing the volume's file system tree to appear as that directory in the larger tree.<ref name="Ritchie"/> The root of the entire tree is denoted <code>/</code>.
In the original [[Research Unix|Bell Labs Unix]], a two-disk setup was customary, where the first disk contained startup programs, while the second contained users' files and programs. This second disk was mounted at the empty directory named <code>usr</code> on the first disk, causing the two disks to appear as one filesystem, with the second
Unix directories do not ''contain'' files. Instead, they contain the names of files paired with references to so-called [[inode]]s, which in turn contain both the file and its [[metadata]] (owner, permissions, time of last access, etc., but no name). Multiple names in the file system may refer to the same file, a feature termed a ''[[hard link]]''.<ref name="Ritchie"/> The mathematical traits of hard links make the file system a limited type of [[directed acyclic graph]], although the ''directories'' still form a tree, as they typically may not be hard-linked.<!--Mac OS X allows this, according to the article 'Hard link'.--> (As originally envisioned in 1969, the Unix file system would in fact be used as a general graph with hard links to directories providing navigation, instead of path names.<ref name="evolution">{{cite conference |first=Dennis M. |last=Ritchie |year=1979 |title=The Evolution of the Unix Time-sharing System |conference=Language Design and Programming Methodology Conf. |url=http://cm.bell-labs.com/cm/cs/who/dmr/hist.html}}</ref>)
|