Hardware Secrets
Home | Camera | Case | CE | Cooling | CPU | Input | Memory | Mobile | Motherboard | Networking | Power | Storage | Video | Other
Content
Articles
First Look
Gabriel's Blog
News
Reviews
Tutorials
Main Menu
About Us
Awarded Products
Compare Prices
Datasheets
Dictionary
Download
Drivers
Forums
Links
Manufacturer Finder
Newsletter
On The Web
RSS Feed
Test Your Skills
Twitter
Newsletter
Subscribe today!
Search




Recommended
Upgrading and Repairing PCs (18th Edition)
Upgrading and Repairing PCs (18th Edition), by Scott Mueller (Que), starting at $35.85
Home » Storage
Hard Disk Drives Capacity Limits
Author: Gabriel Torres
Type: Tutorials Last Updated: September 30, 2007
Page: 3 of 6
$ Check REAL-TIME pricing for WESTERN DIGITAL Scorpio Blue WD5000BEVT 500GB SATA II 5400 RPM 8MB Buffer Mobile Hard Drive Bulk $.
ZipZoomFly: $94.99 Computers4Sure: $23.40
PC Connection: $84.95 Buy.com: $90.24

FAT Limits
We said that the smallest unit that the hard disk drive controller can access is the sector. When Microsoft created DOS, however, they decided that the smallest unit the operating system would access wouldn’t be the sector, but a group of sectors, which they called cluster.

The operating system needs a table listing which file is using which sector and the problem in accessing each sector directly is that you need a table long enough to accommodate all sectors available in the hard disk drive, and also make provision for bigger drives that may be launched in the future. For example, for our 250 GB hard disk drive we would need a list with 488,397,168 entries. Back in 1983 when the first hard disk drive was launched with only 5 MB, listing all sectors would take up a lot of space of the hard disk drive.

DOS below version 3.0 used a system called FAT-12, meaning a File Access Table (the table we were talking about above) using 12-bit entries and using 4 KB clusters – i.e. instead of accessing each sector directly the operating system accessed a group of eight sectors per time (4 KB / 512 bytes = 8). With 12 bits you have 2^12 entries on the abovementioned table, i.e. 4,096 entries. Since each entry maps to a 4 KB cluster, with the FAT-12 system you could have hard disk drives up to 16 MB (4,096 x 4 KB). So DOS below 3.0 wouldn’t recognize drives above 16 MB. Since at this time hard disk drives had 5 MB and 10 MB in capacity, this system would work just fine. By the way, FAT-12 system is still used on floppies.

With DOS 3.x Microsoft released FAT-16 system, which at this time used 14-bit addressing (and not 16-bit as the name suggests). With 14 bits the number of entries on the table was of 16,384, and the size of the cluster was of 2 KB (i.e. each cluster was a group of four sectors). Making the math you will find out that with DOS 3.x the operating system could recognize only up to 32 MB (16,384 x 2 KB) hard disk drives.

Then with DOS 4.0 Microsoft expanded FAT-16 to real 16-bit addressing, meaning 65,536 entries on the table. Still using 2 KB clusters this allowed the operating system to recognize hard disk drives up to 128 MB.

With DOS 5.0 instead of increasing the size of the FAT Microsoft decided to play around with cluster size. At the time you’d format your hard disk drive, the operating system would choose the cluster size according to the capacity of your hard disk drive (see table below). This DOS version, however, allowed clusters only up to 8 KB, allowing the operating system to recognize hard disk drives partitions up to 512 MB (65,536 x 8 KB).

Partition Size

Cluster Size (FAT-16)

Operating System

Up to 128 MB

2 KB

DOS 5.0 and up

From 128 MB to 256 MB

4 KB

DOS 5.0 and up

From 256 MB to 512 MB

8 KB

DOS 5.0 and up

From 512 MB to 1 GB

16 KB

DOS 6.0 and up

From 1 GB to 2 GB

32 KB

DOS 6.0 and up

From 2 GB to 4 GB

64 KB

Windows NT only

Finally with DOS 6.0 Microsoft expanded the above table to allow 16 KB and 32 KB clusters, making the operating system to recognize hard disk drives up to 2 GB (65,536 x 32 KB). This is the final version of FAT-16 as we know it today and was the same file system used by the first version of Windows 95. So FAT-16 file system still has a 2 GB limit per partition. This means that under FAT-16 you can only install a 4 GB hard disk drive by creating 2 GB partitions, i.e. your hard disk drive would be divided into a C: drive with 2 GB and a D: drive with 2 GB.

As a side note, Windows NT allowed the use of FAT-16 partitions with 64 KB clusters (see table above), however this configuration isn’t supported by other operating systems; partitions formatted with this configuration can’t be recognized by other operating systems.

Microsoft could have gone forever increasing the cluster size instead of increasing the number of positions inside the allocation table, but this leads to a problem called slack space. Since the smallest unit on the hard disk drive the operating system can access is the cluster (and not the sector) each file when stored on the hard disk drive must have a size that is an exact multiple of the cluster size. For example, on a 2 GB hard disk drive using FAT-16 a 100 KB file would take up four clusters, or 128 KB, because the hard drive is using 32 KB clusters (100 KB / 32 KB = 3.125, a broken value, so it has necessarily to use four clusters). This extra 28 KB has nothing inside, it is wasted. So when using big clusters, a lot of space on the hard disk drive is wasted just because inside the hard disk drive each file must have a size that is an exact multiple of the cluster size being used.

With Windows 95 OSR2 (launched in 1996 it was Windows 95’s second maintenance version; also known as Windows 95 B) Microsoft launched FAT-32, which became more known when Windows 98 was released, two years later. Using 32-bit addressing it could, at least in theory, access disks up to 2 TB accessing sectors directly instead of using clusters, what would eliminate the slack space problem. FAT-32, however, continues to use clusters:

Partition Size

Cluster Size (FAT-32)

Up to 256 MB

Not Available

From 256 MB to 8 GB

4 KB

From 8 GB to 16 GB

8 KB

From 16 GB to 32 GB

16 KB

From 32 GB to 2 TB *

32 KB

* In theory FAT-32 supports partitions bigger than 2 TB – for example, up to 128 TB if 32 KB clusters are used (2^32 x 32 KB = 128 TB). However, due to a limitation on the hard disk drive boot sector, which uses a 32 bit variable to number the physical sectors present on the hard disk drive, the practical limit of FAT-32 is of 2 TB (2^32 x 512 bytes per sector = 2 TB).

So the slack problem is still around with FAT-32.

This is not the only problem. Even with FAT-32 Windows 95 OSR2 can’t access partitions over 32 GB and Windows 98 can’t access partitions over 128 GB. Windows ME does not face this problem.

Windows NT, 2000 and XP (and probably Vista) can’t format FAT-32 partitions over 32 GB, even though they can recognize hard disk drives formatted with FAT-32 under Windows ME up to the 2 TB limit.

Another problem with FAT-32 is that files can’t be bigger than 4 GB. With people nowadays editing hi-def videos and even the most newbie user authoring and burning his/her own DVDs, this is a real limitation.

FAT-32 also allows only each partition to hold up to 4,194,304 files. Probably you will reach this and the above limit way before the 2 TB maximum partition size limit.

The solution to all these problems is to use a different file system, and if you are a Windows user the most indicated is to use NTFS, which is a file system introduced by Windows NT back in 1993 and is natively available on Windows NT, 2000, XP, 2003 and Vista. In fact this is the recommended file system if you use one of these operating systems. We will discuss more about this file system on next page.

In fact, the solution for each one of the limits explained on this page is to upgrade your operating system to a newer version.

Pages (6): « 1 2 [3] 4 5 6 »
Print Version | Send to Friend | | Bookmark Article | Comments (7)

Related Content
  • Everything you Need to Know About ATA-66, ATA-100 and ATA-133 Hard Disks
  • How to Install Hard Drives over 8 GB in Older PCs
  • Anatomy of a Hard Disk Drive
  • Data Recovery Myths
  • 250 GB Hard Disk Drive Round-Up

  • Recommended Deal.
    Barracuda 7200.11 1.5TB 3.5 Hard DriveSeagate Barracuda 1.5TB Hard Drive ST31500341AS - 7200RPM 32MB Cache SATA-3G


    CompUSA: $119.99 TigerDirect: $119.99
    eCost: $134.99 OnSale.com: $118.99

    RSSLatest News
    IN WIN LAN Party in Southern California
    November 20, 2009 - 12:37 PM PST
    Patriot Announces PS-100 SSD Series
    November 19, 2009 - 7:30 AM PST
    Antec Launches TPQ-1200 PSU
    November 18, 2009 - 11:30 AM PST
    AMD/ATI Launches Radeon HD 5970
    November 18, 2009 - 10:18 AM PST
    OCZ Launches Colossus SSD Series
    November 17, 2009 - 1:39 PM PST
    NZXT Unleashes Tempest EVO Mid-Tower Case
    November 17, 2009 - 1:06 PM PST
    nVidia Launches GeForce GT 240
    November 17, 2009 - 10:18 AM PST
    Arctic Cooling Announces Accelero TWIN TURBO PRO VGA Cooler
    November 16, 2009 - 11:46 AM PST
    PowerColor Announces PLAY! HD5770 Video Card
    November 13, 2009 - 12:51 PM PST
    G.Skill Announces Falcon II SSD Series
    November 11, 2009 - 3:31 PM PST
    .:: More News ::.

    RSSLatest Content
    Ultra X4 500 W Power Supply Review
    Seagate Barracuda XT 2 TB Hard Disk Drive Review
    Nintendo Wii Fit Plus Review
    AMD ATI Chips Comparison Table
    nVidia Chips Comparison Table
    Gigabyte G41M-ES2L Motherboard
    Netflix on Playstation 3 Review
    CM Storm Sentinel Advance Mouse Review
    Titan Skalli CPU Cooler Review
    Nexus RX-6300 630 W Power Supply Review
    Gigabyte P55-UD6 Motherboard
    Nintendo Wii Review
    SilverStone Grandia GD04 Case Review
    Can We Trust the 80 Plus Certification?
    NZXT Gamma Case Review

    Our Most Popular Articles
    Maximum CPU Temperature
    1,078,685 views
    How to Find Out Your Motherboard Manufacturer and Model
    706,726 views
    nVidia Chips Comparison Table
    679,478 views
    Connecting Two PCs Using a USB-USB Cable
    593,783 views
    How To Correctly Apply Thermal Grease
    562,777 views
    AMD ATI Chips Comparison Table
    560,385 views
    ATI Radeon X1300 Pro Review
    488,030 views
    ATI Radeon X1600 XT Review
    477,182 views
    How To Perform a BIOS Upgrade
    394,744 views
    Sempron vs. Athlon XP
    338,607 views

    Latest Threads in Our Forums
    Dell Inspiron 6000 Powers but will not boot...
    by Merman
    Ultra X4 500 W Power Supply Review
    by Merman
    IN WIN LAN Party in Southern California
    by Hardware Secrets Team
    Getting A Hard Copy
    by Trevorrross
    Am I Making The Right Choice?
    by need2know
    Is it available to mount the Zalman cooler?
    by Olle P
    dsl modem prob
    by Sherry
    Seagate Barracuda XT 2 TB Hard Disk Drive Review
    by Hardware Secrets Team
    Overclocking a dell xps 410
    by 6dracing
    How to recover mp3's, pdf & chm files, applications from formated harddrive partition
    by tomahawk 1705
    .:: Visit Our Forums ::.


    © 2004-9, Hardware Secrets, LLC. All rights reserved.
    Advertising | Legal Information | Privacy Policy
    All times are Pacific Standard Time (PST, GMT -08:00)