Waste not, want not

by Alan Zisman (c) 1997. First published in Computer Player, July 1997

So you got a new computer or added a new hard drive on your old one. 2 gigabytes. 2 billion bytes. Sounds like lots of space. But add a few games, an office suite, some other applications, and suddenly, you're just about out of room. Add up everything you've installed, and you'll find four or five hundred megs of free space has gone missing.

You've run into the problem known as cluster slack.

This problem is a result of history-most of us are still using file systems designed in the early 1980s. The people who designed the DOS File Allocation Tables (FAT) to keep track of files, put an upper limit on the number of possible addresses that could be assigned to a disk. Since DOS 3.31 (1987), there's been a fixed number of addresses, but as partitions get larger, cluster sizes grow at the same rate. This enables DOS (and related operating systems) to use drive partitions as large as 2 gigs.

Here's the down side.

Files get stored in a series of these clusters... and two files can't share a single cluster. So if a file fills up, say, five clusters plus 1 byte, all but 1 byte of that sixth cluster is wasted. On average, each file wastes one-half a cluster. With relatively small drive partitions, that's not too bad. For example, my 240 meg D: drive, uses 4 kb clusters, and has 1,623 files... wasting a mere 3 megs of space.

But I also have a 840 meg C: drive, requiring 16 kb clusters with 8,408 files... that's about 135 megs wasted. And if I'd set up my system as a single 1080 meg (1 gig) drive, I'd need to use 32 kb clusters, so the 10,000 or so files would waste about 320 megs-over 30% of my drive space! Even with drives getting ever cheaper, I don't want to be paying for that much space that I can't use.

To check this on your own computer, PC users can run the old DOS standby, CHKDSK at a DOS prompt... it will report, among other things, the number of files, and the allocation unit (or cluster) size. Multiply the two numbers, and cut the answer in half for an estimate of cluster waste. And by the way, Mac owners can't gloat-they have exactly the same problem.

You can minimize the waste, however.

* Create multiple partitions. As we've seen, there is much less waste with smaller partitions. Unfortunately, the DOS partitioning tool, FDISK, destroys your data if you make any changes to your partitions. Instead, check out Partition Magic, from Power Quest, a non-destructive alternative.
* If you've got the Windows 95 Plus Pack, you've got DriveSpace 3 (DS 3). While designed as a disk compressor, it can be used to virtually eliminate cluster slack... set it to a paradoxical 0% compression, and you'll get rid of waste space, as all your files are combined into a single, large file that pretends to be a hard drive. Sounds weird, but it works... and with virtually no performance loss, since you're not actually compressing and expanding your data. (But DS 3 needs a 104 kb driver when you boot to DOS-a major problem running older DOS games).
* Upgrade to a more advanced operating system. OS/2 has an optional HPFS file system, while NT sports an optional NTFS system. Both use a different way of keeping track of files, resulting in the equivalent of 512 byte clusters, and virtually no waste. But changing operating systems is a rather drastic solution... and if you boot to DOS, you won't be able to read those HPFS or NTFS partitions.
* If you bought a computer with Win 95 pre-installed since Fall 1996, you probably have Win95B. (Check in Control Panel/System... if you have Win95B it will say '4.00.950B'). That lets you use FAT32... a new and improved version of FAT, with much smaller cluster sizes, and support for partitions larger than the DOS 2 gig limit. Even with Win95B, however, most manufacturers are continuing to use the older, wasteful FAT16 system.. You can change a Win95B system to FAT32, using the DOS FDISK, but you'll destroy your data and have to reinstall everything. Again, Partition Magic provides a non-destructive alternative. Be careful not to use old disk utilities with FAT32, and note that while you can boot to Win95B's DOS, you can't boot to earlier DOS versions.

One way or another, you might as well get as much hard disk as you've paid for!

Search WWW Search www.zisman.ca

Alan Zisman is a Vancouver educator, writer, and computer specialist. He can be reached at E-mail Alan