On Formatting (Draft)     View/Save PDF     (98.6KB)

For: Windows 95 | Windows 98 | Windows ME | Windows 2000 Professional | Windows XP

Published: 03May02 | Last Updated: 08Apr08 | Status: Discontinued

I.  Introduction
II.  On Low-Level Formatting
III.  On High-Level Formatting (a.k.a., Formatting)
IV.  On The Characteristics Of Different Windows File Systems
V.  On The Windows 9x/ME And The Windows 2000/XP Formatting Tools
VI.  On Reformatting
VII.  On Third-Party Formatting Utilities
VIII.  Additional Reading


I.  Introduction

A hard disk is comprised of one or more double-sided platters onto which data is written, stored on, and retrieved from. In order for a hard disk to accept data it must undergo three preparatory steps, in order.

  1. Low-Level Formatting.
    • Creates the hard disk's tracks, cylinders, and sectors.
    • Performed by the hard disk manufacturer, not by a user.
  2. Partitioning.
    • Creates drives.
    • Can be performed by a user.
      Note:  For additional information on partitioning see On Partitioning (Draft) (Steve's Tech Resource).
  3. High-Level Formatting.
    • Also known as formatting.
    • Applies a file system to a drive.
    • Can be performed by a user.
    • The subject of this page.

II.  On Low-Level Formatting

The first step in preparing a hard disk for functioning is low-level formatting. Low-level formatting (a.k.a., physical formatting) is performed by the hard disk manufacturer and divides a hard disk's platters into concentric circles intersected by pie-shaped wedges.

The concentric circles are known as tracks. Tracks are numbered sequentially from the outermost region of the platter, track 0, to the innermost region of the platter. Each platter is divided into an equal number of tracks, and track number x located on each platter forms a cylinder.

The intersection of the pie-shaped wedges with the tracks forms sectors. In other words a sector is an arc shaped section of a track. A sector represents the smallest possible data storage unit on a hard disk and typically holds 512 bytes of data. (Incl pic of track/cyl/sect).

There is little to no reason for a user to worry about low-level formatting a hard disk; that is, if it is even possible for a user to perform a low-level format(?). First, the low-level format is already performed at the factory. Second, the low-level format is not erased by partitioning or high-level formatting. Lastly, the low-level format does not go bad, per say. In other words, if a hard disk is reporting bad sectors it is usually a sign that the hard disk is experiencing problems of a physical nature which low-level formatting would not permanently fix. Instead, it is strongly recommended that one immediately copies any readable data to alternative media and buy a new hard disk. Then, on a rainy day, if one is that interested, one can check into low-level formatting the hard disk again, which, if possible, would erase all the hard disks data, and/or using a data recovery tool such as SpinRite (Gibson Research Corporation). In summary, the low-level format should be considered a permanent part of a hard disk.

As one does not low-level format a hard disk, when one speaks of formatting a hard disk the other type of formatting, high-level formatting, is implied.


III.  On High-Level Formatting (a.k.a., Formatting)

After a hard disk has been partitioned, the last step in preparing a hard disk for functioning is high-level formatting. High-level formatting (a.k.a., operating system formatting) is the process through which a file system is applied to a drive.

Note:  As high-level formatting is the only type of formatting one will ever perform, when one speaks of formatting, high-level formatting is implied. This convention, that formatting implies high-level formatting will be used throughout the rest of this page.

A file system defines how data is to be organized within a drive. In order for an operating system to store data in a drive the drive must be formatted. And if a hard disk contains multiple drives, each drive must be formatted for it to be functional. A formatted drive is known as a Volume. When a drive is formatted, two actions are performed:

Although a sector is the smallest possible data storage unit on a hard disk, a sector normally does not function as an individual storage unit. Rather, when a drive is formatted a fixed number of adjacent sectors are grouped together into a cluster, and it is the cluster, not the sector, which an operating system recognizes as an individual storage unit.

Such storage units are referred to as allocation units; therefore, a cluster defines an allocation unit. When a file is written to a Volume, the size of the file determines the number of allocation units required to store the file. If the size of the file is smaller than the size of an allocation unit, then a single allocation unit is required to store the file:

Allocation Unit 1
Data
   

If the size of the file is larger than the size of an allocation unit, then multiple allocation units are required to store the file. Here, the initial allocation units are completely filled with data and any remaining data is placed into a final allocation unit.

Allocation Unit 1 2 3 4
Data
 

In short, for virtually every file on a hard disk there will be one allocation unit which is partially filled, and, on average, that partially filled allocation unit is half full/empty.

If one likes, there is an empirical method by which one can determine the size of an allocation unit, and once the size of an allocation unit is known, since a cluster is an allocation unit, and since the size of a sector is 512 bytes, it is possible to work backwards and determine the number of sectors per cluster:

  1. Open Notepad and type in a single character. Save the file as test.txt.
  2. Find test.txt in Windows Explorer. Right click test.txt and select Properties.
  3. Notice the listing.
    • Windows 9x/ME.
      • Size: 1 bytes (1 bytes) indicates the actual size test.txt.
      • The value of x in x bytes used indicates the amount of disk space allocated to test.txt.
    • Windows 2000/XP.
      • Size: 1 bytes (1 bytes) indicates the actual size of test.txt.
      • Size on disk: 4.00 KB (4,096 bytes) indicates the amount of disk space allocated to test.txt.
  4. Since test.txt is a small file, it occupies a single allocation unit. As an allocation unit is also a cluster, the amount of disk space allocated to text.txt is the size of a cluster.
    • Windows 9x/ME.
      • The value of x in x bytes used is the size of a cluster.
    • Windows 2000/XP.
      • Size on disk: 4.00 KB (4,096 bytes) is the size of a cluster.
  5. If the size of a cluster is 4096 bytes, as a sector is 512 bytes, then 8 sectors are assigned to each cluster (4096 bytes/cluster ÷ 512 bytes/sector = 8 sectors/cluster). If the size of a cluster is 32768 bytes, as a sector is 512 bytes, then 64 sectors are assigned to each cluster (32768 bytes/cluster ÷ 512 bytes/sector = 64 sectors/cluster), etc.

Formatting also writes a File Allocation Table (FAT) to the drive. The FAT keeps track of the placement of files within a Volume. Here, each cluster is given a unique address and table is written to the drive in which is kept a running record of the files contained within the Volume and of the addresses of the clusters utilized in storing the files. By matching files with the addresses of the file's allocation units, whenever a file is requested, instead of having to read a Volume from start to end to find the allocation units which comprise the file, the operating system accesses the FAT, the FAT returns the address(es) of the allocation units utilized in storing the file, and the hard drive's read/write heads go directly to appropriate clusters.

A formatting tool/utility is a program which can write a file system to a drive.


IV.  On The Characteristics Of Different Windows File Systems

Formatting is the process through which a drive is given a file system. FAT16, FAT32, and NTFS are the different Windows file systems. The different Windows file systems have different characteristics concerning.

  1. Operating System Compatibility.
  2. Maximum Partition Sizes.
  3. Cluster Size.
  4. File-Level Security.

Operating System Compatibility

Formatting not means high-level formatting, but formatting is also known as operating system formatting. This is because a particular operating system is compatible with only certain file systems, and the partitioning tool(s) included with an operating system will usually format a drive only with those file systems compatible with the operating system. If an operating system and a file system are compatible, the operating system can be installed to a drive formatted with that file system, and that the operating system will be able to recognize data contained on other drives also formatted with that file system. In the case of the Windows operating systems and the Windows file systems the compatibilities are:

Operating System Compatible File System(s)
(Bold = Native)
DOS, Windows 95 OSR1 FAT16
Windows 95 OSR2, Windows 98, Windows ME FAT16, FAT32
Windows 2000, Window XP FAT16, FAT32, NTFS

From the above table it is worth pointing out that the Windows 9x/ME are not compatible with the NTFS file system. The first implication of this is that Windows 9x/ME cannot be installed to a NTFS volume. But more importantly, it also means that if one wants to run a multi-boot system with Windows 9x/ME as one operating system and Windows 2000/XP as the other operating system, one needs to decide before hand whether to format the drive to which Windows 2000/XP will be installed with the FAT32 or the NTFS file system, and if one is creating additional drives whether to format them with the FAT32 or NTFS file system as well. Here, if one decides to format the Windows 2000/XP partition and any other drives with the NTFS file system, when one boots to Windows 9x/ME the data on those drives will not be accessible.

Maximum Partition Sizes

Every file system has maximum partition size. The maximum partition sizes for the Windows file systems are.

File System Max Partition Size
FAT16 2 gigabytes (DOS)
4 gigabytes (WinNT)
FAT32 2 terabytes
NTFS 2 exabytes

Cluster Size

There are two factors which determine the size of a cluster.

FAT16
Volume Size Cluster Size
512 - 1023 MB 16384 bytes
1024 - 2047 MB 32768 bytes
FAT32
Volume Size Cluster Size
256 - 8191 MB 4096 bytes
8192 - 16384 MB 8192 bytes
16385 - 32770 MB 16384 bytes
NTFS
Volume Size Cluster Size
1025 - 2048 MB 2048 bytes
> 2049 MB 4096 bytes

The size of a cluster is relevant in terms of the unused, or wasted, hard disk space one might encounter. Taking a look at the table above, for a volume of a given size, the size of a FAT16 cluster far exceeds the size of a FAT32 or a NTFS cluster. Specifically, on a 2GB volume, the size of a FAT16 cluster is 32,768 bytes and the size of a FAT32 cluster is 4,096 bytes.

As mentioned above, for virtually every file on a hard disk there will be one allocation unit, or cluster, which is partially filled, and, on average, that partially filled allocation unit is half full/empty. Therefore, for every file located on a FAT16 Volume there is an average of 16,384 bytes of unused hard disk space (32,786 bytes ÷ 2 = 16,384 bytes), and for every file located on a FAT32 volume there is an average of 2,098 bytes of unused hard disk space (4,096 ÷ 2 = 2,098 bytes).

If a volume contains 10,000 files, if that volume is a FAT16 volume there will be approximately 163,840,000 bytes (16,384 bytes/file x 10,000 files = 163,840,000 bytes = 163.8MB) of unused hard disk space. If that volume is a FAT32 volume, however, there will only be approximately 20,980,000 bytes (2,098 bytes/file x 10,000 files = 20,980,000 bytes = 21.0MB) of unused hard disk space.

As indicated, by virtual of their smaller cluster sizes the FAT32 and NTFS file systems are far more efficient in utilizing hard disk space than the FAT16 file system. Therefore, if one with a FAT16 volume is running low on free hard disk space, converting the drive from FAT16 to FAT32 has the potential of reclaiming a considerable amount of hard disk space.


V.  On The Windows 9x/ME And Windows 2000/XP Formatting Tools

The FAT32 file system is functionally equivalent whether created by the Windows 9x/ME formatting tools or the Windows 2000/XP formatting tools. The Windows 2000/XP formatting tools, however, allow one the additional option of formatting a partition with the NTFS file system.

Windows 9x/ME Formatting Tools

FORMAT.COM is the primary formatting tool provided by Windows 9x/ME. FORMAT.COM is a DOS-Mode program provided on a Windows 9x/ME Startup Disk. FORMAT.COM should only be run after booting a computer to a Windows 9x/ME Startup Disk.

Note:  For additional information on the Windows 9x/ME Startup Disk see On The Windows 9x/ME Startup Disk (Steve's Tech Resource).

Once Windows 9x/ME is installed a partitioning tool can be found through Windows Explorer, or through...

Windows 2000/XP Formatting Tools

Although a Windows 2000/XP user can use FORMAT.COM to format a drive, a dedicated DOS-Mode partitioning tool such as FORMAT.COM is not included with Windows 2000/XP. Instead, Windows 2000/XP provides its formatting tool by three different means. The first is built into SETUP.EXE. SETUP.EXE is run as part of the Windows 2000/XP installation procedure. Therefore, when installing Windows 2000/XP one is automatically presented with the ability to format drives. The second is provided through Disk Management. Disk Management is found under Control Panel | Administrative Tools | Computer Management, which implies that Windows 2000/XP must be installed. The last is through Windows Explorer, which also implies that Windows 2000/XP must be installed. Here, open Windows Explorer, right click a drive's icon, and select format.

But more importantly, Windows 9x/ME and Windows 2000/XP support different file systems, and if one wants to format a drive with the Windows 2000/XP specific file system, FORMAT.COM cannot be used.


VI.  On Reformatting

There are a number of reasons why one might want to reformat a drive:

When one reformats a drive the file system is written new but the file data is not necessarily deleted. Rather, the FAT which contains the addressing information to the data is wiped clean and the data contained on the drive outside of the FAT itself (meaning, the file data) still exists. But as the new FAT has no record of the pre-existing file data, a reformatted drive reports those allocation units of the hard disk as being empty. With special tools the file data may be recoverable.. allows the operating system to access the data is wiped cleanot necessa. In particular, the data contained in the replaced, it is actually over-written. If one is Reformatting a drive does not erase all the drive's data. This is worth repeating: Reformatting a drive does not erase all of the drive's data. Instead, reformatting a drive simply over-writes the pre-existing FAT with a new, blank, FAT. The data contained on the drive outside of the FAT itself (meaning, the file data) still exists. But as the new FAT has no record of the pre-existing file data, a reformatted drive reports those allocation units of the hard disk as being empty. With special tools the file data may be recoverable.

Note:  Similarly, deleting a file does not delete file data. Deleting a file simply erases the FAT information for the file and that area of hard disk space is reported as being empty. Again, with special tools the file data can be recovered.

There are a number of ways to reformat a drive.

Windows 9x/ME User

Windows 2000/XP

Reformatting a drive results in the lose of data; that is, unless one runs Windows Convert.exe which allows one to convert a drive's current file system to a different file system (e.i., FAT16 to FAT32, or FAT32 to NTFS, in theory without the loss of data.


VII.  On Third-Party Formatting Utilities

Third party formatting tools are usually included as part of the third party partitioning tools...


VIII.  Additional Reading

A special thanks to dsf123 for suggestions/corrections.