- Windows File Systems
- Windows ReFS
- Windows NTFS
- Windows DFS
- Windows CIFS
- Virtual Disk Services
- Volume Shadowcopy Services
- Removable Storage System
- Windows Volume Mgmt.
- Windows System state
NTFS was introduced in the Windows NT operating system and has been the native file system for Windows systems ever since. However it has some limitations and these are starting to hold it back when Windows Server is used for critical business systems.
In theory, an NFT filespace can be allocated up to 240TB, but tested capacities are much less than this. Disks are now supplied with multi-terabyte capacities and NTFS needs third party software to cope with them.
If NTFS disks or files become corrupt then it is necessary to run a dskchk command with all systems down and this is time consuming on large disks and it is not really acceptable to have important business systems down for extended times.
ReFS is a new file system that fixes these issues, see the link on the right. However ReFS is not intended to replace NTFS, the two file systems will run in tandem for the forseeable future.
Some NTFS features are -
In NTFS, all objects are files, even the metadata about files. This allows the file system to handle all objects consistently. The Master File Table (MFT) is the most important system file. It contains information about all the files on the volume. There is exactly one MFT per volume. There is also at least one entry in the MFT for every file on an NTFS volume. If the base file record is not big enough to hold all the information about a file, an extension record is created. The MFT file records contain all the information about a file, including its size, time and date stamps,permissions, data content, etc.
The MFT consists of a series of 1KB records, with Record 0 describing the MFT itself. The file descriptors are called attributes, Resident Attributes fit inside the MFT, while Non-resident Attributes are too big and are held in overflow records. Attributes include stuff like the archive bit, time stamps, file names (a file can have several names, including a short name and a long name), and the ACL or security data for the file. If the file is small enough then all the data held by that file can be contained within the MFT record. If a file is too big to fit into the MFT then the MFT data record points to a file location on disk. A badly fragmented file will need several MFT records to hold all the pointers to the bits of the file, so fragmentation degrades performance.
It is important that the MFT does not become fragmented, as this can affect system performance. NTFS will reserve space for the MFT, but if the rest of the disk fills up, this reserved space will be used. NTFS does not delete records from the MTF when files are deleted, but it does mark them as reusable.
If you allocate lots of small files on your disk, you will fill up the MFT before the disk fills up. If you allocate big files, you will run out of disk space before the MFT is full. You can change the amount of space reserved by NTFS for the MFT by updating the NTFS zone reservation parameter, by editing
HKEY-LOCAL-MACHINE\System\CurrentControlSet\Control\FileSystem Add Value name NtfsMftZoneReservation as a type REG-DWORD and set the data value to a number between 1and 4. The bigger the number, the more space that will be reserved for the MFT. Caution - Microsoft warn that before you make any change to the registry, you should take a backup, and be prepared for the system to crash.
The valid values are -
Note that if you change this setting it will apply to all the disks on your server, and also it is best to set the parameter at disk creation time, as if it is increased after creation the MFT will become fragmented.
Reparse points were introduced with Windows 2000 storage subsystem. They provide 'hooks' into the file system that can be used by ISVs to add storage functionality.
Change Journal software was introduced with Windows 2000 operating system. It is used by functions that are only interested in processing new or changed files on a volume. Examples are backup, virus scanning, indexing services and auditing. A record is added to the Change Journal every time a file or directory is updated. Applications that need to find changed files can get their information from the Change Journal, they do not have to scan the entire volume. This can mean a considerable saving in I/O operations and time, especially if not many files have changed.
The minimum size of a file in the NTFS file system is the size of a single cluster and files cannot share space within a cluster. The smaller the cluster size, the more efficiently a disk stores information, the bigger the cluster the better the performance as more data is moved per IO operation. The file system has limits on the number of clusters it can support so it chooses the default cluster size of the volume. The default cluster size can be overridden by a user, up to a maximum size of 64KB.
A Win2000 server can support volume sizes up to 128TB.
An NTFS partition consists of 4 sectors
The partition boot sector
The MFT backup
|Volume Size||NTFS Cluster Size|
|7 MB - 512 MB||512 bytes|
|513 MB - 1,024 MB||1 KB|
|1,025 MB - 2 GB||2 KB|
|2 GB - 2 terabytes||4 KB|
The FAT16 file system supports a maximum of 65,524 clusters per volume. FAT32 volumes must have a minimum of 65,527 clusters on a 32-GB volume, which is the largest FAT32 volume that Windows Server 2003 can format.
|Volume Size||FAT16 Cluster Size||FAT32 Cluster Size|
|7 MB - 16 MB||2 KB||Not supported|
|17 MB - 32 MB||512 bytes||Not supported|
|33 MB - 64 MB||1 KB||512 bytes|
|65 MB - 128 MB||2 KB||1 KB|
|129 MB - 256 MB||4 KB||2 KB|
|257 MB - 512 MB||8 KB||4 KB|
|513 MB - 1,024 MB||16 KB||4 KB|
|1,025 MB - 2 GB||32 KB||4 KB|
|2 GB - 4 GB||64 KB||4 KB|
|4 GB - 8 GB||Not supported||4 KB|
|8 GB - 16 GB||Not supported||8 KB|
|16 GB - 32 GB||Not supported||16 KB|
|32 GB - 2 terabytes||Not supported||Not supported|