A 
link is
an object that associates a filename with a file
.Several links can associate names with the same file
.Some
file systems support multiple hard links to a file
.If the last hard link to a
file is removed, the file itself is removed
.[
Note 1: 
A hard link can be thought of as a shared-ownership smart
pointer to a file
. — 
end note]
A 
symbolic link is
a type of file with the
property that when the file is encountered during pathname resolution (
[fs.class.path]), a string
stored by the file is used to modify the pathname resolution
.[
Note 2: 
Symbolic links are often called symlinks
.A symbolic link can be thought of as a raw pointer to a file
.If the file pointed to does not exist, the symbolic link is said to be a
“dangling” symbolic link
. — 
end note]