ONE GREAT STRENGTH OF WINDOWS NT is its ability to support multiple file systems. This ability stems from NT's modular approach to file system support. To support each file system, NT uses a low-level driver that's part of the Windows NT Executive. So creating support for additional file systems is as easy as developing and installing a new driver. (The sidebar, "Windows NT File Systems," on page 96, shows the file systems available under NT and provides a general description of each.)
An important decision in setting up an NT system is choosing a primary file system. With NT 3.5x, you had a choice of three file systems: NT File System (NTFS), File Allocation Table (FAT), and the OS/2 High-Performance File System (HPFS). In addition to support for the NTFS and FAT file systems, NT supports the CD-ROM File System (CDFS) for accessing data on PC-compatible CD-ROMs. NT 4.0 supports NTFS and FAT (to see how to make HPFS work with NT 4.0, see the sidebar, "Using HPFS with NT 4.0," page 98).
To decide what's right for your situation, you need to understand NTFS's and FAT's capabilities, advantages, and disadvantages. The sidebar, "Choosing an NT File System," on page 100, presents the pluses and minuses of both file systems. Let's start this look at file systems by clarifying some disk-related concepts and terms.
Every disk can contain partitions, or structural divisions. The two types of drive partitions are primary and extended. A primary partition is the only type that can contain an OS. You can assign a drive letter to each of up to four primary partitions on one physical drive. An extended partition is a special type of partition that you can subdivide into one or more logical drives. Each logical drive can have its own drive letter. You can have only one extended partition per physical drive, but the extended partition can have multiple logical drives (the number of logical drives on an extended partition has no practical limit). Each primary partition and each logical drive is formatted independently and can use a different file system.
A volume is a primary partition or logical drive that you format with a file system. In fact, any medium you can format, including a removable disk such as a floppy or CD-ROM, can be a volume.
System and Boot Partitions
NT gives special names to particular disk partitions. For example, the system partition contains hardware-specific files for booting the system. These files include the NT Boot Manager and boot.ini, ntdetect.com, and ntldr (osloader on RISC-based systems). The system partition can contain the NT installation directory.
On Intel x86-based computers, you can format the system partition with FAT or NTFS. On RISC-based computers, you must format the system partition with FAT. FAT partitions don't have NTFS's security capabilities, so NT 4.0 includes a new feature to secure the FAT system partition on a RISC-based NT system. From the NT Disk Administrator's partition menu, choose Secure System Partition. The system asks you to confirm the request. Click OK, and reboot the system to activate security on the system partition. With this feature, only Administrators group members can access the FAT system partition.
Another NT disk partition is the boot partition. Despite its name, this partition isn't necessarily the drive the system boots from. Instead, it contains the NT installation directory you choose during NT setup. The term boot refers to the files required to start NT, not the computer. The boot partition can be the same as the system partition. On RISC and Intel NT systems, the boot partition can be on a FAT or NTFS partition.
For maximum system security, administrators of RISC-based systems will want to consider separate partitions for the boot partition and the system partition and consider securing the system partition with the Secure System Partition option. This approach puts the NT system files on an NTFS partition (for better security and protection from data corruption than with FAT) and prevents access to the NT system files if the system boots from a DOS floppy, unless you use NTFSDOS (a shareware utility that can access an NTFS drive)--for information on NTFSDOS, see Mark Russinovich and Bryce Cogswell, "NTFSDOS Poses Little Security Risk," and Joel Sloss, "That Depends on Your Definition of Secure," September 1996).
The FAT File System
FAT is the granddaddy of all PC file systems. Several flavors of FAT have emerged over time, but the core technology is largely unchanged.
Experienced DOS users will recognize some distinguishing characteristics of the FAT file system. It uses the file allocation table (FAT's namesake) to track files and directories. The system stores this table near the beginning of the FAT volume. To prevent corruption, the system automatically maintains a second copy of the table on the disk and can access this copy if the primary table becomes corrupt. The table and the volume's root (main) directory must be in specific locations on the disk so the system can access files needed to boot from a FAT volume.
The table needs constant updating, which requires that the hard drive heads continually return to the beginning of the volume. As a result, FAT can cause a severe performance hit on large volumesthe larger the volume, the greater the performance penalty.
FAT stores files on a first-come, first-served basis: The system writes files to disk in the first available area. Over time, this method can result in heavy file fragmentation (files are in multiple, noncontiguous disk blocks) on FAT volumes and is another performance killer. To remedy this problem, you have to run a disk defragmentation program.
As of this writing, the only NT disk defragmentation tool is Executive Software's DISKEEPER for Windows NT. No one utility can work with all the NT versions and service packs, and DISKEEPER is no different. With NT 3.5x, fragmentation utilities had to be specific to a particular NT version or service pack. If you use such a utility on a different version or service pack level, you can corrupt data. NT 4.0 solves this problem by including a disk defragmentation API. You can expect to see several new NT defragmentation tools available in the near future.
Another disadvantage to FAT is that its directory structure has no formal organization, so FAT can't automatically sort folders and filenames in a directory. Locating a file on a large FAT volume can take longer than searching an NTFS volume with automatic directory sorting.
Uses for FAT Volumes
So why use FAT? It is the most popular and widely used PC file system because it's been the only choice for millions of DOS users worldwide since DOS arrived in the early 1980s.
Even on systems, such as NT, that can support additional file systems, FAT can be the best choice. Multiboot systems (those with more than one OS installed) usually have at least one FAT volume because many OSs, including MS-DOS, Windows 3.x, Windows for Workgroups, Windows 95, OS/2, and NT, support FAT. It can be the best choice for small volumes because its simple nature and low overhead make it fast on these volumes. This advantage is also why FAT is the only choice for floppy disk formats in NT.
NT can access FAT volumes of up to 4GB, but MS-DOS can recognize FAT volumes of only up to 2GB. Therefore, keep the volume size to 2GB or smaller when you create FAT volumes for use by both DOS and NT.
If you use FAT with another OS and switch to NT, you can keep your volumes formatted as FAT until you're ready to switch to NTFS. However, after you convert a FAT volume to NTFS, you can use that volume only with NTyou can't convert that volume back to FAT without backing up, reformatting, and restoring the volume.
To convert a FAT volume to NTFS, type CONVERT at the command prompt. The format of the CONVERT command is CONVERT <drive:>/FS: NTFS \[/V\], where <drive> is the designation of the drive you want to convert. The /V option tells CONVERT to run in verbose mode, which gives detailed command output.
A final advantage of FAT is its ability to store programs that you can access when the system boots under DOS. These programs include setup utilities for configuring hardware devices and peripheral cards.
When you consider these advantages, don't forget FAT is not as secure as NTFS. You can easily access FAT volumes with a DOS boot floppy, and FAT provides only limited directory-level access security. For these reasons, I do not recommend FAT for network shared volumes. Instead, consider NTFS, which has file-level security and superior protection from physical access.
If you maintain a disk volume larger than 400MB, consider FAT's potential to affect performance and usable disk space. Every FAT and NTFS volume uses clusters, the basic unit of allocation to store disk files. FAT can have large minimum cluster sizes that reduce the usable storage space on the volume.
Regardless of how small a file or part of a file is, it must take up at least one cluster of disk space. When a file doesn't take up an entire cluster, the portion of the cluster that contains no data is wasted. The larger the cluster, the larger the waste. The amount of disk space wasted by minimum cluster sizes on FAT volumes becomes exaggerated the larger the volume is. Larger volumes have larger minimum cluster sizes. Therefore, large volumes that store many small files will lose a lot of storable space because of the minimum cluster size problem.
Table 1 lists the default minimum cluster sizes for various FAT volume sizes. With large FAT volumes (256MB to 2048MB), the wasted drive space is substantial and is reason enough to choose NTFS for these volumes.
NTFS File System
When NT came out, it included a new file system that Microsoft intended to be robust, secure, and fast. This system, NTFS, has several advantages over other file systems.
NTFS's integration with NT security makes NTFS the best choice for volumes requiring high levels of security. NTFS provides file-level security for setting permissions on folders and files. These permissions make the most of the existing local or domain NT accounts database, and you can have different permissions on different files in the same folder.
Several types of file and folder permissions are available. They include No Access, which excludes a specified user or group from any access to a file or folder, and Full Control, which grants full control over a file or folder, such as the ability to set permissions and take ownership of it. File and folder permissions use the accounts database of the local NT computer or domain. You can apply permissions to individual users, user groups, or everyone.
NTFS also has better protection from unauthorized physical access than FAT: Users can't access NTFS volumes by booting the system from a DOS diskette. This restriction is because the NTFS driver that allows access to an NTFS volume loads with NT.
Despite these security features, NTFS volumes are far from impervious to intrusion. Utilities such as NTFSDOS and even one that works under LINUX (a UNIX variant) can grant unauthorized access to NTFS volumes. NTFS can't prevent physical access to files on NTFS volumes; instead, you have to physically lock away the computer containing the data or use file encryption, which NTFS doesn't support. However, third-party products such as Genio USA's CrypEdit or Regnoc Software's Safe Program let you encrypt data on NTFS volumes.
Another NTFS security-related feature is preventing users from undeleting files or folders removed from NTFS volumes. Even if the files exist on the drive, NT doesn't give undelete programs physical disk access to work on an NTFS volume. (You can, however, use a third-party DOS-based undelete program such as Symantec's Norton Utilities and Microsoft's Undelete on FAT volumes. These programs can recover deleted files but make no guarantees.) Although NTFS's security features can be inconvenient for users with few or no security needs, these features are central to NTFS and NT security and required for NT's C2-level security certification.
In addition to its extensive memory and application protection features, NTFS is a reliable file system. When storing data to disk, NTFS records file I/O events to a special transaction log. If the system crashes or encounters an interruption, NT can use this log to restore the volume and prevent corruption from an abnormal program termination or system shutdown. NTFS doesn't commit an action to disk until it verifies the successful completion of the action. This precaution helps prevent corruption of an NTFS volume and makes NTFS especially solid for data storage on standalone systems and network file servers.
NTFS also supports hot-fixing disk sectors, where the OS automatically blocks out bad disk sectors and relocates data from these sectors. This housecleaning happens in the background. An application attempting to read or write data on a hot-fixed area will never know the disk had a problem.
NTFS is also built for speed. NTFS provides impressive disk I/O performance on large volumes such as those on file servers or advanced workstations and is the best file system for such machines. This performance gain applies only to volumes larger than 400MB because of NTFS's overhead from its security and reliability features.
NTFS uses a binary tree structure for all disk directories, which reduces the number of times the system has to access the disk to locate files. This system is best for large directories, and NT easily outperforms FAT in these situations. In addition, NTFS automatically sorts files in a folder on the fly.
Another performance-related feature is NTFS's resistance to file fragmentation. NTFS uses a special process of writing files to disk. This process minimizes file fragmentation by making intelligent choices about where to store file data on the disk. In contrast to FAT's first-available method, NTFS's method of writing files reduces, but does not eliminate, the problem of file fragmentation on NTFS volumes.
NT also gains an edge over FAT by using relatively small disk allocation units (cluster sizes) for NTFS volumes. Smaller clusters prevent wasted disk space on volumes, especially those with numerous small files. Table 2 lists the default cluster sizes for various NTFS volumes sizes.
As Table 2 shows, the largest NTFS cluster size is 4KB, even on volumes larger than 2GB. Because NTFS uses small clusters better and has a more efficient design, its performance doesn't degrade with large volumes, in contrast to FAT's.
When you format an NT volume, NT chooses a cluster size to fit the volume size. With NTFS, you can select the cluster size for the volume when you use the FORMAT command from the NT command prompt (this solution is not possible from Disk Administrator). To set the cluster size, use the /A switch with the FORMAT command as follows: FORMAT <drive>/FS:<filesystem /A: <unitsize>
Despite the flexibility this feature provides, you generally won't need to specify manual NTFS cluster sizes. NT can automatically configure them for you. NT works best with volumes at the settings it specifies, and changing these settings can adversely affect your system's performance.
File and Folder Compression
Another important NTFS feature, which was new with NT 3.51, is the ability to selectively compress individual files and folders on a disk. You can also compress an entire NTFS volume by compressing the volume's root folder. With NT 3.5x, you compress files and folders through File Manager. In NT 4.0, you select a file's or folder's Properties dialog by right-clicking the file or folder and choosing Properties. You can also compress a file or folder with the command-line utility compact.exe.
No one file system is perfect for all situations. To choose a file system for a given volume, you have to consider how you will use the volume and what the security needs will be for information on the volume. Will the volume require NTFS's file-level security? Do you need to access the volume under DOS or OS/2? With the information in this article, the information in the sidebar, "Choosing an NT File System," can help you answer these and other questions.
| Executive Software * 800-829-4357 or 818-547-2050|
Genio USA * 206-831-5591
Microsoft * 206-882-8080
Regnoc Software * 510-806-0713
Symantec Corp * 408-253-9600