June 18th, 2002, 12:49 AM
FAT vs. NTFS The ultimate Guide to Win file systems.
Well here is another Tutorial by xmaddness.
In this tutorial we will take a look at the differences between the FAT16, FAT32, and NTFS File systems, and how the files are stored on the hard drive. I will discuss the differences between each and which to use depending on your particular situation.
There are basically two different types of file systems currently available for use with Windows Operating Systems. These are FAT16/32 (File Allocation Table) and NTFS (New Technology File System). There is also VFAT which was used for Windows for workgroups (win 3.11) and also used for Windows 95, but as they are outdated I will not be covering them.
A file system is the method used by an OS to manage the data on a drive. For DOS and sometimes Windows 9x, each entry in a FAT for most drives is 16 bits, or 2 bytes, and the FAT is called FAT16. Besides FAT16, Windows98 offers a FAT with 32-bit entries, and Windows NT/2k offers an entirely new type of managing clusters called NTFS. Windows 2000 can support FAT16, FAT32, and NTFS file systems. Windows 95 offers a version of FAT16 that can use long filenames, called virtual FAT or VFAT.
Each entry in a Hard Drive FAT tracks the use of a cluster. The number of sectors is different from one logical drive to the next. You can use the CHKDSK DOS command to view the size of one cluster. There is another way of figureing out the size of a cluster on your drive. First, use the DIR command in DOS and note how much space is available on your drive. Then, create a text file via notepad containing only one single character. Now go back and do the DIR command again and again note the available hard drive space. Compare the two values of before and after a single character file was written to the disk.The difference in the two values is the size of one cluster, which is the smallest amount that can be allocated to a file.
Beginning with Windows 95 OSR2 (or Service Realease 2), M$ offered a FAT that contains 32 bits per FAT entry instead of the older 16-bit FAT entries. In reality only 28 bits are used, the other 4 are reserved.
The FAT32 system allows for better mangement of very large drives, because the number of clusters per logical volume can increase. i.e. The largest cluster number a 16-bit FAT entry can hold is 65,535. The largest logical drive capacity depends on the size of a single cluster and the number of clusters that can be accesed through the FAT. For FAT16, logical drives can range is size from 16 MB to 2,048 MB. But in order to get the larger sizes, the cluster size must be very large, sometimes as large as 32K, which can result in alot of wasted space for a hard drive that holds alot of small files. The reason for this is in the fact that if a file's size is only 1K, it will still take up a whole 32K cluster, thus wasting 31K of hard drive space. This wasted space is calld slack. FAT32 makes it possible for cluster sizes to be smaller and still have very large logical drives, because there can be many more clusters to the drive. FAT32 is recommended for hard drives larger than 512 MB and works efficiently for drives up to 16 GB. In this range the cluster size is 8k, thus instead of wasting 31K of space, this method wastes only 7K of space from the previous example. In the 16 GB to 32 GB range the cluster size is increased to 16K. Beyond 32 GB hard drives you are going to loose much efficiency and it is recommended to switch to the NTFS file system. If you are currently using FAT16 and are considering going to FAT32 (what rock have you been hiding under?), you can use Partition Magic to scan your drive and tell you how much of the drive is wasted slack space. Using that info you can decide wheter switching will provide you with more usanle disk space.
NTFS (New Technology File System)
The NTFS file system is currently only available to true 32-bit Windows OS's. These OS's are Windows NT(New Technology, hence the name), and Windows 2k. Although Windows 9x and its predecessors can't use NTFS, Windows NT and Windows 2k can use the older FAT systems. Windows NT can work with both FAT16, and NTFS, where Windows 2k can utilize all three types. Windows NT does not support FAT32 (although I'm sure there are 3rd party softwares that can convert it). The FAT file system is backwards compatible with DOS and Windows 9x and uses less overhead than NTFS. The NTFS file system, on the other hand, is more fail safe, provides more security, and is more efficient with larger drives. When a drive is formatted with the NTFS file system, the cluster size ranges from 512 Bytes on smaller drives, to 4K on larger ones. You can now see why this system is much more efficient in saving slack space.
Below are some advantages of NTFS over the FAT file system.
/me wonders how the list thingy works again?
- NTFS is a recoverable file system. NTFS retains copies of its critical file system data and automatically recovers a failed file system, using this information the first time the disk is accessed after a file system failure.
- NTFS offers increased security over the FAT system. Security is provided for each file, and auditing info about access to files is more complete.
- NTFS supports mirroring drives, meaning that two copies of data can be kept on two different drives to protect against permanent data loss in case of a hard drive crash. This makes it very useful for servers.
- NTFS uses smaller cluster sizes than FAT making it a much more efficient when using hard drive space.
Now some advantages of the FAT file system over the NTFS sile system.
- The FAT file system has less overhead making it a better choice for drives under 500 MB.
- The FAT file system is compatible with other M$ OS's. If your planning to do a dual boot Windows 9x and Windows NT/2k system, you will want to choose the FAT file system so you can share file between both OS's.
- In the event of a system failure in Windows NT or Windows 2k, if you are using FAT file system you can boot the PC from a disk, using DOS, and gain access to the drive.
Well, thats it for now. Again I'm having a test on this this week and figured this would help me to retain all the information. I should ace this one quite easily. If you find anything wrong with this by all means let me know and I will make the proper adjustments. On the same note if you have any other topics you would like to see covered, PM me and I will see what I can do to get a tutorial out on that subject.