I/O and File System
Basic knowledge
- File descriptors, file table and inode table in Unix
(File descriptor 3 does not refer to anything in the file table, signifying that it has been closed.)
A file descriptor is an abstract indicator (handle) used to access a file or other input/output resource, such as a pipe or network socket.
An inode is a data structure that defines a file, except for the filename which is stored in the directory entry. Note that a directory is just another file. The inode number is an integer unique to the volume upon which it is stored.
Each inode stores the attributes and disk block location(s) of the filesystem object's data.
The directory entry is just a struct of inode and filename - just enough information to translate from a filename to an inode and get to the actual file.