NTFS Reparse Point
NTFS reparse points are a specialized feature of the NTFS file system, first introduced with NTFS version 3.0, which was included in Windows 2000 and subsequent versions of the Microsoft Windows operating system. They provide the capability to extend the functionality of the file system in various ways, primarily through the use of reparse tags that are interpreted by file system filter drivers.
Structure and Functionality
A reparse point consists of a reparse tag and associated data which the file system filter driver uses to implement a range of functionalities. When a file operation encounters a reparse point, it is redirected by the operating system to the appropriate filter driver, which then processes the reparse data related to that tag.
Reparse points can be used to create advanced file system features such as:
- Symbolic links: These are pointers that allow you to easily reference files located in different directories or drives.
- Directory junctions: Similar to symbolic links but primarily used for directories.
- Volume mount points: These are used for mounting entire volumes as directories within an existing file system.
- Unix domain sockets: Used for inter-process communication on the same host operating system.
Applications
Reparse points extend the functionality of NTFS by enabling complex operations that would otherwise require significant overhead. For example, they are used by the Remote Storage service in Windows 2000 to manage storage hierarchies by moving less frequently accessed files to different storage media.
They can also function as hard links, though unlike traditional hard links, reparse points are not restricted to files on the same volume; they can point to directories located on different local volumes.
Compatibility and Support
The NTFS-3G driver, an open-source implementation of NTFS for Linux, supports link-type reparse points, such as symbolic links and junction points. This interoperability ensures that NTFS reparse points can be managed across different operating systems, not just limited to the Windows environment.
Furthermore, this functionality has been carried over to the Resilient File System (ReFS), ensuring that reparse points remain a versatile tool within modern file systems.