Some Notes on Partitioning Hard
by Wilf James
Hard disk drives are becoming increasingly large these days so there is some sense in dividing up a drive into partitions. Before I get started, I must say that Microsoft has made partitioning hard disk drives very confusing to the beginner because of the way Microsoft has mucked up the nomenclature.
For every organisation but Microsoft, a separate section of a hard disk drive is a partition. Microsoft allows only two partitions on any drive. However, the Microsoft system enables the division of the second Microsoft partition into "logical" drives. This confusion is unnecessary but one is forced to accept it when a Microsoft operating system is used. Having got that out of the way I can now explain why it is very useful and sensible to divide up a large hard disk drive into smaller sections - no matter what they are called.
Microsoft operating systems usually require the boot to be on drive A: or C. Drive C: is called drive C: because in the dim and distant days a PC had only two floppy disk drives called Drive A: and Drive B: When the first hard disk drive was introduced it became drive C: Please note that a letter followed immediately by a colon : means a disk drive in Microsoft language. A letter without the colon does not mean a disk drive except when the running program is specifically set up to accept a letter on its own as a drive designation. The main programe that accepts letters on their own as drive letters is Microsoft's FDISK.EXE. All Microsoft's operating systems include this program and it is included in the set of programs on a Windows startup floppy disk.
A hard disk drive is used to store programs and data almost indiscriminately in the Microsoft world. This means that whatever is newly stored on the hard disk is stored in the next available space. This is OK initially but soon runs into problems when the next available space is one that has been vacated by a deleted file.
I use the example of a school teacher writing something on a blackboard for the pupils to copy into their notebooks. The usual situation that arises is that the space on the blackboard is filled up before the teacher has written all that needs to be copied into notebooks. The teacher then rubs out the top part of the text on the blackboard to make space for more text. This is feasible because the first few sentences will have been copied into notebooks by the pupils while the teacher is writing at the bottom of the blackboard. When the teacher writes fresh text at the top of the blackboard, there is no confusion about where it should be copied in the notebooks. Now imagine a different arrangement. Instead of writing in a clear space at the top of the blackboard, the teacher rubs out selected sentences and uses the empty spaces to write in new text in a different coloured chalk. The new sentences will not fit into the erased spaces where the old sentences were very well. The new sentences will often be divided into sections spread over the blackboard. They will be less legible than if they had been written in a continuous space at the top of the blackboard. If this process was continued with more sentence erasings and more text, the whole blackboard would soon look like a mess.
A hard disk system uses an indexing arrangement to remember where every part of every file is stored. This prevents the data and programs from being mixed up for most of the time although errors sometimes occur. Nevertheless, reliance on the indexing system to deal with fragmented files causes access to the files to be much slower. The effect is somewhat similar to that of a children's potato race. This is where potatoes are placed at 2 yard intervals on a track and the race is to collect all the potatoes and to put them in a bucket. The one who has collected all the potatoes first is the winner. The usual rule for such a race is that the potatoes have to be picked up singly and put in the bucket individually. This means that the child will run to pick up potato 1 and then run back to the bucket with it. Then the child has to run to pick up potato 2 and then run back to the bucket. Now turn the potato race around a bit. Let us assume that the potatoes are all in holes but there are hundreds more holes than potatoes. Now the child has to consult an index list in the bucket to see where the next potato can be found and then go to fetch it. The child having fetched it, the index list has to be checked to get the location of the next potato. Now compare this with the idea of carrying the bucket to the potatoes and progressing directly from one potato to the next. The difference in speed of collecting all the potatoes is going to be enormous.
The hard disk system works in a manner that is very much like a child running to collect potatoes using a check list. If a file is in one continuous piece, it is only necessary to find the first part and how long it is. If the file is fragmented, each fragment's starting position and length has to be found successively from the hard disk's indexing system. The difference in the time taken to get all the parts of a file is analogous to that of the child with the list type of potato race.
You can see that fragmentation is bad because it slows down access to the files on a hard disk. However, it would seem that Microsoft doesn't care very much about this inefficiency because the Windows operating systems are almost designed to create fragmentation delays from the start.
The Windows system tries hard to make itself inefficient from the very beginning. It creates a folder called TEMP to put temporary files in. These files are usually those that are used to install programs (including Windows itself) on the hard disk. When these files have done their jobs, they are deleted. Bear in mind that the hard disk system works on a first come first served basis. The temporary space is initially on the first part of the drive. When the temporary files are deleted, the space becomes available for whatever needs to be stored on the hard disk next. If nothing is done to prevent it, the next program stored on the disk will have some of its files in the space previously occupied by some temporary files. The mess starts there and gets worse. Windows offers a "nice" home for "My Documents". Guess where? These go on the same drive letter as Windows and get mixed up with programs and temporary files.
Windows has an excellent method for creating even more fragmentation automatically. This when Internet Explorer comes into action. Every file accessed when on the internet is stored in a cache. The aim is to improve the speed of access to revisited web pages. However most pages are not revisited and an enormous collection of files appears in the cache. A lot of thes files are very small - down to less than 1K. They fill up all the available spaces created by deleted files. Then, the unsuspecting user decides to add to his or her document or install another program. Sooner or later Internet Explorer will discover that the cache has become filled up with a lot of old files that are no longer needed. It then does a cache cleanup. Now the hard disk has lot of available small spaces to be used for whatever is next stored on the hard disk. If a picture or other large file is loaded, guess what happens? The listed potato race problem is back again with a vengeance. You may gather from this that a lot of the fragmentation problem can be avoided if a lot less is stored on the same drive as Windows.
Partitions and logical drives act as if they are completely separate entities as far as fragmentation is concerned. If a hard drive is split up in a planned way and programs and data files are stored on different drive letters in a sensible manner, the computer will run faster on average and crash less.
I will start by trying to work out what data and programs need to be stored in a particular way for maximum reliability and speed.
The most critical part od a computer system is the boot. If the computer does not boot properly, you do not have a computer. I have mentioned a lot of the inefficiencies of Windows so you may gather that I do not advocate Windows being on the boot drive letter. Since Microsoft systems always boot on C:, Windows is best put on the next available drive letter. If you put Windows on D: you could save yourself some other problems that I will mention later.
There are other programs that can be usefully stored on drive C:. These include anti-virus software and maintenance utilities of many varieties. You can force Internet Explorer that runs with Windows on drive D: to put its cache on C: In most cases you will not want to put much else on C: This will leave the first part of C: devoted to boot up programs and utilities that do not change much. The rest of the drive's space can be used for any temporary files that are not likely to be troubled by fragmentation or cause fragmentation.
Programs always try to install themselves on the same drive as Windows in a folder called Program Files. The fact that there are nicely pre-named folders for programs and other information is totally misleading. Files and folders appear in Windows Explorer in a tidy alphabetical order but the way that they are stored on the hard disk is in first come first served order. It is therefore a good policy to try to put programs where they can sit undisturbed on a drive that does not have data continually added to it and taken away from it. The logical answer is drive E: If you like to keep data files separate from programs, the best place for them will be drive F: You can set up folders for your wordprocessor, spreadsheet and picture files on F:, knowing that such files are seldom deleted.
Now we come to what may be the last drive letter that you will need - G: If you produce your own CDs or copy CDs you will need a disk cache. Why not put it on a drive letter that is almost used for nothing else. A disk cache assists in the copying of CDs because CDROM drives are usually very much slower to access than hard disks. A drive letter dedicated to CD copying will usually provide fast access for data and will help to prevent the generation of CD coasters and beermats.
We have arrived at the suggestion that four hard disk drive letters will be better than one for organising your data. I have worked with 21 hard drive letters with two floppydrives and two CDs giving 25 drive letters altogether on one of my computers. I use the extra drive letters for specific jobs so that downloaded utilities are on one drive and drivers for many sorts of hardware are on another drive. You may find that having a lot of drive letters is helpful in a similar way. You may find that a lot of drive letters is confusing. No two people see things in the same way.
I have already told you about the ways in which Microsoft gets things wrong. There is another problem that you must consider when installing a hard drive on your PC. Hard disk drives last for a very long time but they do not last forever. It is therefore wise to arrange that all your important data is stored on two drives so that if one fails you still can access your data. Copying from one hard disk to another is the very quickest way to make a backup. However, this must be done with two separate hard disk drives. There is no point in making backups on different partitions or logical drives that are all on one physical hard disk drive. Microsoft really mucks things up for everyone who wants to add a hard disk drive to an existing system. This is because FDISK and the operating system gives the first parts of the disk drives the letters C: D: and E: etc. So, if you have a hard disk drive that has a first partition C: and logical drives D: E: and F: in the second partition, and you add a second hard disk drive, the first part of the second hard disk drive will become D: and the former D: E: and F: drive letters will become E: F: and G: In the old days when Windows for Workgroups 3.11 was in use, this did not cause much of a problem because it was easy to tell Windows that your programs and data had been moved to new drive letters. With Windows 95 and later, you are screwed. Every program that you had installed with your original hard disk drive will now be useless. The later versions of Windows will not allow existing programs to be given new drive letters. In addition, as I have said, there are good reasons why Windows should not be on drive C: So, if you had installed Windows on drive D: or any othe letter other than C: Windows will not run when you add a hard disk drive to an existing system. A more ludicrously silly arrangement could hardly be imagined but that is Microsoft for you.
Plan Your System In Advance (if you can)
It is usual that a system is improved by adding a second hard disk drive that is much larger than the original one. A typical system might have a 2GB drive originally and a 40GB drive is now available to be added. The best solution is to make the new drive the master and the older drive the slave. In that way the first part of the new drive will be C: and the first part of the old drive will be D: If you have a CD writer on your original system, you should copy all your own data files onto the CD so that you will be able to put them back later. You will have to visualise what will be lost when your older hard disk drive is re-partitioned and re-formatted. Save as much data as you can. Programs can always be replaced. There is software around that makes lists of disk contents showing the folder/directory structure that can be used to create a record of your original setup. If your orignal disk is already partitioned, a lot of this work will be saved because your data files can be copied onto one or more logical drives in the second partition. You should also make sure that you have a startup floppy disk to suit your Windows system before making any changes.
The following list is just a series of suggestions for arranging your Windows and programs on a series of drive letters. I will assume that your original system had one 2GB drive and you are now going to add a second 40Gb drive.
Drive C: (New drive) Partition 1 2Gb Two gigabytes). Partition 2 38Gb (Thirty-Eight gigabytes)
Drive D: (Old drive) Partition 1 - half the drive if 2Gb or more up to 2Gb. All the drive if less than 2Gb.
Partition 2 will be what is left. Windows 95 and 98 will work OK on 1GB drives as long as no programs or temporary files are stored on the drive. Later versions of Windows are less flexible and will need more than 1Gb for Windows and things added to the drive that are beyond your control.
Drive E: (New drive) Logical drive in partition 2. Up to 4Gb depending on what programs you wish to install.
Drive F: (New drive) Logical drive in partition 2. Up to 2Gb for text and spreadsheet data. More, if a lot of graphics data is likely to be stored.
Drive G: (New drive) Logical drive in partition 2. Up to 2Gb for a CD cache and a reserve cache or more if DVDs are to be recorded.
Drive H: (New drive) Logical drive in partition 2. What is left of the new drive (around 30Gb in this example. Use it for any old rubbish like saved downloaded files and program installing files.
Drive I: (Old Drive) The whole of partition 2 as a logical drive unless already partitioned differently.
1. Make the 40Gb drive Master and the 2Gb drive the Slave. Set your CDROM as secondary Master on the second IDE cable. It is preferable to keep hard drives and CDROMs on separate IDE cables. If you have a CD writer or a DVD player and a CD player, make the CD player the Slave and the other drive a Master.
2. with the PC booted using the startup disk, type in FDISK (ENTER). You will be offered a menu and a choice of drives. Select the second drive (the original one) and view the partition organisation. Make a note of this information. Now select drive 1.
Create a Primary DOS Partiton of 2Gb on the drive and make it bootable.
Create a Secondary DOS partition of the rest of the drive space.
Create logical drives in the second partition as suggested above.
When all the drive space has been allocated on the new drive, check the drive letters and sizes to make sure that you have set them in the way that you want. If you have made a mistake, the logical drives in the second partition on the new drive can be deleted and new ones of revised sizes can be created at this point. When you are completely satisfied that you have done things in the way you want them to be, reboot with the startup disk.
Check the list of drives that you have and what jobs that you want to do with them. It is possible that the partition setup for your original drive will not need to be changed so you will only need to wipe the primary DOS partition on your old drive by formatting it.
When the PC has rebooted with the startup disk, format drives C: D: E: F: G: and H: if you have followed my suggestions. Drives I: and later should be left untouched if they exist.`
Install your version of Windows on drive D: and call it anything but Windows. (I use Winn98 for the folder name for Windows 98SE. This fools some viruses.)
When Windows has been installed on drive D: you can then add your preferred programs. ALWAYS choose CUSTOM installation if you can. Then you can select the drive letter and folder name where the program will be stored on your hard disk system. With MS Office, just select a drive letter and NO FOLDER NAME. MS Office will always create a folder called Office when the installation starts. If you give the name MSOffice for the folder name you will end up with MSOffice and Office as folder and subfolder.
Most other programs are not so silly. Remember that if you do not install all of Microsoft Office and want to add one or more omitted items later, you will have to select all the original items again when you add items because the installation program will delete any existing items that are not selected! This, I consider to be one of Microsoft's silliest failings. Be warned!
You will find that Lotus Smartsuite is far better than Microsoft Office in almost every respect. Lotus Wordpro will read and create Word files. Lotus 123 will read Excel files. In general, if you can avoid using Microsoft's products, you will have fewer problems. The same can be said (more or less) for Wordperfect Office and Open Office. These products are generally superior to Microsoft's stuff.
Create folders on drive F: for your data files. Avoid storing files in "My Documents" like the plague. They end up on the Windows drive where problems can occur. Most programs can be set so that files will be stored and looked for in a default directory or folder. Try to arrange that these are always on drive F: if you use my suggestions.
The sort of names to give the folders should be designed to describe the contents in a loose sort of way.
For example, wordprocessor files should be in a folder called WP_Files . Then, within this folder should be sub folders for Letters, Notes, Stories, Work or whatever types of file you regularly create. Comparable sets would apply to spreadsheet and database files. In any case, the setup would normally be arranged so that files are generally added and very seldom deleted.
I prefer Netscape to Outlook Express but both programs allow you to specify where the internet cache files should be stored. Create a folder/directory on C: called Cache and tell your internet software where the cache lives. The internet cache files are added and deleted almost at random by internet browser programs so it is best that they are on a drive that will not suffer from fragmented files. Your boot files will have been installed on drive C: before you start using the internet cache so they will not normally become fragmented. In any case, any fragmentation that occurs will only slow down the boot process and not the general running of the PC.
There is a program that is a part of the Windows operating system that defragments hard disks. However, it takes a very long time to defragment a large hard disk full of files. If a hard disk is divided up into smaller sections, the time taken to defragment one of these is very much less than that which would be taken to do an entire hard disk. There is a further problem that Windows does not help. If anything is changed on a hard disk during defragmentation, the program restarts from the beginning. There are now a lot of programs that effectively report to Windows periodically and thereby change what is on the hard disk where Windows is installed. If you only have one drive letter where Windows resides, defragmentation of the disk may never be completed because of this problem. If you never purposefully store anything on the drive where Windows resides, you will seldom have to try to defragment the Windows drive.
I think that the foregoing advice is based on experience and common sense. If you can suggest better ways of organising your programs and data on a Microsoft controlled PC, please tell me.
Linux normally uses a completely different way of storing data on hard disks to avoid causing fragmentation. The hard disk system is checked to see if there is a big enough continuous space for the whole file before a new file is added The file is then given that space. This arrangement helps to give Linux more reliability than Windows.
Return to Technical Topics Page