English

Problem: Optimizing disk and allocation unit size for running PC ARC/INFO

Solution or Workaround

Product: PC ARC/INFO 3.4D Plus, 3.4.1, 3.4.2

Question:

There is not enough disk space available on any of my partitions to run PC ARC/INFO.

Answer:

With DOS 5.0/6.0 it is now possible to create hard disks with 2 gigabyte capacity. You no longer have to divide up your hard disk into 32 megabytes partitions or buy special disk manager software to break this barrier as you did under DOS 3.3. It is tempting to create one big disk, but you may not get the best use out of your disk if you do this. This document discusses the topic of optimum disk size.

To begin this discussion, you must understand the concept of an "allocation unit". Sometimes an "allocation unit" is also called a cluster. An "allocation unit" is the smallest amount of disk space that can be allocated to a file. As a file file grows in size it is allocated disk space in "allocation unit" sized chunks. For example, if the allocation unit size on your disk is 4K bytes, below is a table of how many allocation units certain sized files will take:

File Size Allocation Actual disk Percent of
units space used wasted space
0 1 4K 100.0%
2K 1 4K 50.0%
4K 1 4K 0.0%
6K 2 8K 25.0%
8K 2 8K 0.0%
10K 3 12K 16.6%
22K 6 24K 8.3%
102K 26 104K 1.9%

Please note that if the file size matches a multiple of the allocation
unit there is no wasted of disk space. This is a very rare, so you are
generally wasting some disk space for each file you create. Smaller
files and many sub directories tend to waste more disk space while
larger files and fewer sub directories tend to waste less disk space.

If the allocation unit size could be made smaller the average amount of
disk space wasted could be reduced. For example, an allocation unit of
one byte, would never waste any space and a 2K allocation unit would
waste about half the space of a 4K allocation unit.

The easiest way to find out how big the allocation unit is on your disk
is to use the CHKDSK command.

(C:\ARC\DOC)chkdsk
Volume Serial Number is 1A71-17CF

75460608 bytes total disk space
73728 bytes in 2 hidden files
528384 bytes in 245 directories <------- (C)
42428416 bytes in 3357 user files <------- (B)
32430080 bytes available on disk

2048 bytes in each allocation unit <------- (A)
36846 total allocation units on disk
15835 available allocation units on disk

655360 total bytes memory
629200 bytes free

The line marked as (A) is the size of each allocation unit. It will be
either 2K or some multiple of 2K (except for floppy disks which use 512
bytes). 2K is the smallest allocation unit size for hard disks under
DOS 5.0. If it is 4K or more, you could save some disk space by
reducing it to 2K.

You can use line (B) to calculate the average amount of disk space
used per file (42428416/3357/1024= 12.34K) and line (C) to calculate
average amount of disk space used per directory (528384/245/1024=2.1K).
The smaller these numbers, the more disk space that is probably being
wasted. The FS (file size) command that comes with Norton Utilities
automatically computes wasted disk space. Look for the value of "%
slack" in its report.

The allocation unit size is dependant on the size of the disk
partition. A smaller partition size will result in a smaller allocation
unit size. Below is a table of disk sizes and allocation units
associated with each size.

Partition size Allocation Unit Size

< 20MB (approximate) 4K
20- 32MB 2K
33- 128MB 2K
129- 256MB 4K
257- 512MB 8K
513-1024MB 16K
1025-2048MB 32K

Should you re-partition your disk to get a smaller allocation unit
size? If your disk is 128MB or less or you can live with disk
partitions of 128MB then it is probably worth the disk savings to do
it. If your allocation unit size is bigger than it should be (see
above table) for the size of the disk, you should probably
re-partition it to get a smaller allocation unit. If you have many
32MB partitions (DOS 3.3), you could re-partition them as 128MB
partitions with out wasting any more disk space. The re-partition
process can take several hours, but luckily it only needs to be done
once.

As an example of disk savings, on a 72MB disk with 47.3MB bytes in use
and a 4K allocation unit size, reducing to a 2K allocation unit
reduced the used bytes to 41MB for a 6.3MB savings or about 8.75%.

How to re-partition your disk to get allocation units of 2K. For 4K
allocation units, change 128MB to 256MB in the below instructions.

1) Make an emergency boot floppy disk.
This is a bootable floppy disk with all the necessary commands and
device drivers needed to do disk management (FDISK, FORMAT, XCOPY,
BACKUP, RESTORE, DISKCOPY etc) and to boot your computer. If you
have any special external drives or devices (Bernoulli drives,
external floppy drivers, CD ROMs etc) make sure the drivers and
commands for those devices are also on this disk. Also construct a
CONFIG.SYS and AUTOEXEC.BAT file assuming that you only have the
floppy drive to boot from (don't assume a device or command is on
the hard drive). This disk should hold all the most important DOS
commands and drivers you think you might need to resurrect your
machine, if the hard disk should happen to fail. You should try
booting with this disk and try accessing external devices and
running the DOS commands from the floppy. This is a important disk
to have even if you are not going to re-partition your disk. You may
even want to make a 2nd copy of it.

2) Backup up all files on your disk partition(s).

3) Reboot your system using the emergency boot disk.

4) Use FDISK to do the following:
a) Delete all logical DOS drives off the extended partition, if
there is one.
b) Delete extended DOS partition, if there is one.
c) Delete the primary DOS partition.
d) Create a new primary DOS partition of 128MB or less
e) Make the primary DOS partition active (this lets you boot off
of it). If all the space has been allocated skip to step h.
f) Create an extended DOS partition using the remaining disk space.
g) Create logical DOS drives of 128MB (or less) until no more disk
space is left.
h) Leave FDISK (your system will be rebooted).

5) Use FORMAT with the /S option to format the primary partition
(usually the C: drive).

6) Use the FORMAT command to format the other partitions, if there are
any.

7) Restore your files to your partitions(s).

This will result in zero or more equal sized partitions and one odd
sized partition. Some people like to make the odd sized partition the
primary partition (first partition) instead of having it the last one.