6.4. File System Services¶
6.4.1. Types of File Access¶
6.4.1.1. Sequential Access¶

Most files are accessed in linear manner from the beginning. It is possible to reposition (seek system call) the current file position pointer.
6.4.1.2. Direct Access¶

File systems that are optimized for use with data bases are accessed in terms of records rather than a byte sequence.
6.4.2. Permissions¶

An import attribute of files is their set of permissions.
6.4.3. File Descriptors¶

The set of open files for each process is tracked in the process control block (PCB).
6.4.4. System Calls¶
- Create a file
- Delete a file
- Open a file
- Close a file
- Read data from a file
- Write data to a file
- Reposition the current file pointer in a file
- Append data to the end of a file
- Truncate a file (delete its contents)
- Rename a file
- Copy a file
6.4.5. Directory Trees¶

The notion of directories allows files and directories to be organized in a tree like manner.
6.4.6. Path Names¶
An absolute path name begins at the root and specifies each step down the tree until it reaches the desired file or directory.
A relative path name begins from the current working directory.
6.4.7. File Object Links¶
Links between files and directories make it easier to access files. Links that span file systems can also provide a convenient means of extending the effective size of a file system.

Link mechanisms include: hard and symbolic links in Unix, and Shortcuts and Junction points in Windows.
See also
Introduction to Unix, Notes on Hard and Soft (Symbolic) Links