Вы находитесь на странице: 1из 34

Book disk

System disk

A system disk, also sometimes called a boot disk, is a disk that will allow you to start a
computer when the operating system no longer responds, as the result of a virus for
example. This disk contains special information that makes it possible to bootstrap the
system without touching the hard drive. There is no single type of startup disk: each
operating system has its own startup disk.

It is absolutely necessary to have a system disk, as it is the only way to restart a computer in the
event of defects in the MBR if your computer doesn't let you boot from a CD-ROM!

How to create a startup disk?


Under MS-DOS

Insert an unprotected blank floppy disk into drive a:

Then all you need to do is type the command:

format a: /s
The /s parameter means "copy the system files"

Under Windows 95/98/Me

Insert an unprotected blank floppy disk into drive a:

Then go to:
Start / Parameters / Control Panel / Add/Delete programs / Startup disk
Then click create a startup disk

Under Windows 2000

To create an emergency repair disk under Windows 2000 click on Start > Programs >
Accessories > System tools > Backup. Under the General tab, click on the Create an
emergency repair disk button. When prompted, insert a blank, formatted 1.44 MB floppy
disk into the disk drive, and then click on OK. Once complete, remove the disk, write
"Emergency repair disk" on the label and keep it in a safe place.

To restore parameters from the repair disk, you need to have your Windows 2000 CD-
ROM, the Windows 2000 installation disks and the emergency repair disk. During the
restore process, you can press F1 to get additional information on the options.
Under Windows XP

Insert an unprotected blank floppy disk into drive a:

Then go to:
My computer
Right click on Format, and then choose the option Create an MS-DOS startup disk.

It is essential to set the write-protect tab on the floppy disk just after you create it to ensure that it
will not be contaminated by a virus when you need it to restart your computer.

What do you do with the floppy disk?

The BOOT disk can only be used to reboot your computer in MS-DOS after a crash. To
be "valid", the BOOT disk must:

• Not be infected by a virus


• Have anti-virus software (that works under DOS)
• Be write-protected so that no virus can hide there after you run the anti-virus software
• You will also need the installation disks of your operating system (if it is a CD-ROM make sure that
the CD-ROM drivers are loaded when you boot from the floppy disk!)

Startup sequence

PC-type computers let you configure the order in which the drives are searched for an
operating system when the computer starts up. This order, called the boot sequence, can
be configured in the computer's BIOS setup. This allows you, for example, to configure
the computer so that it looks for the operating system first on the IDE hard drive, then on
the CD-ROM drive and finally on a SCSI drive.

To be able to start from the system disk, you must make sure that no drive located earlier
than the floppy disk drive in the boot sequence contains an operating system. By default,
most BIOSes start the boot sequence with the floppy drive.

How to transfer the system files from the floppy disk to the hard
drive?

After the system has been started from a boot disk and the hard drives have been
carefully verified using anti-virus software, you can transfer the system files from the
boot disk so that you will be able to boot from the hard drive. To do this, type the
following command:

sys a: c:
where a: and c: represent the drive names associated with the floppy drive and the hard drive from which
the system will start up.
The operating system used to make the system disk must be the same as the system installed on
the hard drive...

If you forget to use the "/s" switch when formatting a hard drive using the format command under
DOS, the computer will not be able to start the operating system. The system will then display the
following message:
Non system disk / Disk error
In this case, you should boot from your system disk and then execute the command sys a: c:.
Formatting - Formatting a hard drive
Before trying to understand formatting, you first need to understand how a hard drive works. Many people
do not distinguish low-level formatting (also called physical formatting) from high-level formatting (also
called logical formatting).

Even though hard drives can be very small, they still contain millions of bits and
therefore need to be organised so that information can be located. This is the purpose of
the file system. The surface of each cylinder, which is originally uniform, is divided
during formatting (by divided we mean of course that the surface particles are
magnetised...) into little parcels that can be more easily located.

Low-level formatting

The purpose of low-level formatting is to divide the disk surface into basic elements:

• tracks
• sectors
• cylinders

Remember that a hard drive consists of several circular platters rotating around an axis
and covered on either side by a magnetic oxide which, since it is polarised, can be used to
store data.

The tracks are the concentric areas written on both sides of a platter.
Finally, these tracks are divided into pieces called sectors.

There are millions of tracks and each has around 60 to 120 sectors.

A cylinder refers to all the data located on the same track of different platters (i.e.
vertically on top of each other) as this forms a "cylinder" of data in space.
Physical formatting therefore consists in organising the surface of each platter into
entities called trackers and sectors, by polarising the disk areas using the write heads.
Tracks are numbered starting from 0, then the heads polarise concentrically the surface of
the platters. When the head goes from one track to the next, it leaves a gap. Each track is
itself organised into sectors (numbered starting from 1) and separated by gaps. Each of
these sectors starts with an area reserved for system information called a prefix and ends
with an area called a suffix
The purpose of low-level formatting is therefore to prepare the disk surface to receive
data (and therefore does not depend on the operating system) and to mark "defective
sectors" using tests performed by the manufacturer.

When you buy a hard drive, it has already undergone low-level formatting. SO YOU DO
NOT NEED TO PERFORM LOW-LEVEL FORMATTING!

Checksum

During the formatting, check tests (algorithms allowing the validity of sectors to be tested
using checksums) are performed and each time a sector is considered defective, the
(invalid) checksum is written in the prefix. It can no longer be used thereafter and is said
to be "marked defective".

When the disk reads the data, it sends a value that depends on the content of the sent
packet, and which is initially stored with the data. The system calculates this value based
on the data received, and then it compares it with the one that is stored with the data. If
these two values are different, the data are no longer valid and there is probably a
problem with the disk surface.
The cyclic redundancy check (CRC), is based on the same principle to check the integrity
of a file.

Analysis utilities such as scandisk or chkdsk operate differently:


they write data on sectors considered to be valid, and then read them and compare them.
If they are the same, the utility goes on to the next sector, otherwise it marks the sector as
defective.

High-level formatting

Logical formatting occurs after the low-level formatting. It creates a file system on the
disks that will allow an operating system (DOS, Windows 95, Linux, OS/2, Windows
NT, ...) to use the disk space to store and access files.

Operating systems use different file systems, so the type of logical formatting will depend
on the operating system you install. So, if you format your disk with a single file system,
this naturally limits the number and type of operating systems that you can install (in fact,
you can only install operating systems that use the same file system).
Fortunately, there is a solution to this problem which is to create partitions. Each of the
partitions can effectively have its own file system, and you can therefore install different
types of operating systems.

If you forget to use the "/s" switch when formatting a hard drive using the format command under
DOS, it may prevent the operating system from starting. The system will then display the following
message:
Non System disk / Disk error
In this case, it is useful to have a system disk that you can boot from and execute the command
sys a: c:.
Partition - Partitioning a hard drive
What is a partition?

The partitioning of a hard drive occurs after the drive has been physically formatted but
before it is logically formatted. It involves creating areas on the disk where data will not
be mixed. It can be used, for example, to install different operating systems that do not
use the same file system. There will therefore be at least as many partitions as there are
operating systems using different file systems. If you are using just one operating system,
a single partition the full size of the disk is sufficient, unless you want create several
partitions so as to have, for example, several drives on which data are kept separate.

There are three types of partitions: primary partitions, extended partitions and logical
drives. A disk may contain up to four primary partitions (only one of which can be
active), or three primary partitions and one extended partition. In the extended partition,
the user can create logical drives (i.e. "simulate" several smaller-sized hard drives).

Let's look at an example where the disk contains one primary partition and one extended
partition made up of three logical drives (later we will look at multiple primary
partitions):

For DOS systems (DOS, Windows 9x), only the primary partition is bootable, and is
therefore the only one on which the operating system can be started.

Partitioning is the process of writing the sectors that will make up the partition table
(which contains information on the partition: size in sectors, position with respect to the
primary partition, types of partitions present, operating systems installed,...).

When a partition is created, it is given a volume name which allows it to be easily


identified.

Master Boot Record

The boot sector (called the Master Boot Record or MBR) is the first sector of a hard
drive (cylinder 0, head 0, sector 1), it contains the
main partition table and the code, called the boot loader, which, when loaded into
memory, will allow the system to boot up.
After it is loaded into memory, this programme will determine from which system
partition to boot, and will start the programme (called the bootstrap) which will start up
the operating system present on that partition.
This disk sector also contains all information concerning the hard drive (manufacturer,
serial number, number of bytes per sector, number of sectors per cluster, number of
sectors,...). This sector is therefore the most important one on the hard drive and is also
used by the BIOS setup to recognize the hard drive. In other words, without it your hard
drive is useless, which makes it a favourite target for viruses.

File systems

In this section, it is important to differentiate between the FAT file system and
the file allocation table (FAT).

FAT is the name of the file system used by DOS operating systems (DOS and Windows
95, as well as Windows NT and OS/2 which support it).

Operating
Associated file system
system
DOS FAT16
Windows XP NTFS
Windows 98 FAT32
FAT16 - FAT32 (for version
Windows 95
OSR2)
Windows NT NTFS
OS/2 HPFS
Linux Linux Ext2, Linux Ext3

FAT file systems are characterised by the use of a file allocation table and clusters (or
blocks).

Clusters are the smallest unit of storage in a FAT file system. A cluster actually
represents a fixed number of disk sectors.

The FAT (File Allocation Table) is the heart of the file system. It is located in sector 2 of
cylinder 0, head 1 (and is duplicated in another sector as a precaution in the event of an
accident). This table records the numbers of the clusters that are used, and where the files
are located in the clusters.

The FAT file system supports disks or partitions up to a maximum size of 2 GB, but only
allows at most 65536 clusters. So, whatever the size of the partition or disk, there must be
enough sectors per cluster so that the entire disk space can be contained in these 65525
clusters. As a result, the larger the disk (or partition), the greater the number of sectors
per cluster.

The FAT file system uses a root directory (represented on the operating systems that use
this type of file system by the symbol C:\ ) , which must be located at a specific location
on the hard drive. This root directory stores information on the sub-directories and files
that it contains. For a file, it will store:

• the file name


• the file size
• the date and time the file was last modified
• the file attributes
• the cluster number at which the file starts

Using multiple partitions

As mentioned earlier, there are three types of partitions: primary partitions, extended
partitions and logical drives. A disk may contain up to four primary partitions (only one
of which can be active), or three primary partitions and one extended partition. In the
extended partition, the user can create logical drives (i.e. create the impression that there
are several smaller-sized hard drives).

Primary partition

A primary partition must be logically formatted and have a file system appropriate to the
operating system installed on it.
If you have several primary partitions on your disk, only one will be active and visible at
a time, depending on the operating system with which you started the computer. By
choosing which operating to load at start-up, you determine which partition will be
visible. The active partition is the partition from which one of the operating systems was
loaded when the computer was started up. The partitions other than the one from which
you started will then be hidden, which will prevent their data from being accessible. The
data on a primary partition are therefore only accessible from the operating system
installed on that partition.

Extended partition

Extended partitions were developed to overcome the limit of four primary partitions, as
you can create as many logical drives as you want in them. At least one logical drive is
required in an extended partition, as you cannot stored data in them directly.

Many machines are formatted with one large partition using up all available space on the
drive. This is not, however, the most advantageous solution in terms of performance and
capacity. The solution is to create several partitions, which will allow you to:
• install several operating systems on your disk
• save disk space
• increase file security
• organise your data more easily

Let's have a look at what a system containing several operating systems looks like:
The file system
What is a file system?

Even though hard drives can be very small, they still contain millions of bits and
therefore need to be organised so that information can be located. This is the purpose of
the file system. Remember that a hard drive is made up of several circular platters
rotating around an axis. The tracks (concentric areas written to on either side of the
platter) are divided into pieces called sectors (each 512 bytes in size). Logical formatting
of a disk allows a file system to be created on the disk, which in turn will allow an
operating system (DOS, Windows 9x, UNIX, ...) to use the disk space to store and use
files. The file system is based on management of clusters, the smallest disk unit that the
operating system is able to manage.

A cluster consists of one or more sectors, so the larger the cluster size, the fewer entities
the operating system will have to manage…
On the other hand, since an operating system only knows how to manage whole
allocation units (i.e. a file occupies a whole number of clusters), the more sectors per
cluster, the more wasted space there will be. This is why the choice of file system is
important.

Files systems and the operating system

In reality, the choice of file system depends first of all on the operating system that you
are using. In general, the more recent the operating system, the greater the number of files
it will support. So, under DOS and on the first versions of Windows 95, FAT16 is
required.

Starting with Windows 95 OSR2, you have the choice between FAT16 and FAT32 file
systems. If the partition size is greater than 2GB, then FAT file systems are excluded and
you need to use the FAT32 system (or modify the size of the partition).

Below this limit, FAT16 is recommended for partitions with a capacity of less than
500Mb, otherwise it is preferable to use FAT32.

In the case of Windows NT (up until version 4) you have the choice between the FAT16
system and NTFS, FAT32 is not supported. In general, the NTFS system is recommended
as it provides higher security and better performance than the FAT system. Microsoft
actually recommends using a small FAT-type partition (of between 250 and 500MB) for
the operating system, so as to be able to boot from a bootable DOS floppy disk in case of
a catastrophe, and to use a second partition for storing your data.

Under Windows NT5, there is more choice as it accepts FAT16, FAT32 and NTFS
partitions. Once again, the more recent file system (NTFS 5) is recommended, as it offers
many more features than the FAT systems. For the same reasons given above, you can
still choose to have a FAT-type partition.

Operation
File system types supported
system
Dos FAT16
Windows 95 FAT16
Windows 95 OSR2 FAT16, FAT32
Windows 98 FAT16, FAT32
Windows NT4 FAT, NTFS (version 4)
Windows 2000/XP FAT, FAT16, FAT32, NTFS (versions 4 and 5)
Ext2, Ext3, ReiserFS, Linux Swap(, FAT16, FAT32,
Linux
NTFS)
HFS (Hierarchical File System), MFS (Macintosh File
MacOS
System)
OS/2 HPFS (High Performance File System)
SGI IRIX XFS
FreeBSD,
UFS (Unix File System)
OpenBSD
Sun Solaris UFS (Unix File System)
IBM AIX JFS (Journaled File System)

Coexistence of several file systems

When several operating systems coexist on the same machine, the problem of choosing a
file system is at its worse. Since the file system is tightly coupled to the operating system,
when there are several operating systems you must choose a file system for each, bearing
in mind that it is possible that data from one operating system may be accessed from
another. One solution would be to use FAT partitions for all the systems, making sure
that the partitions are no larger than 2 GB. The most appropriate solution would be to use
for each OS a partition whose file system is best suited to it, and to use a a dedicated
FAT16 partition for data to be shared by the different operating systems.
FAT16 and FAT32
The FAT16 file system

The first file system to be used on a Microsoft operating system was the FAT system,
which uses a file allocation table. The file allocation table is actually an index which
lists the content of the disk in order to record the location of the files on it. Since the
blocks making up a file are not always stored contiguously on the disk (a phenomenon
called fragmentation), the allocation table allows the file system structure to be
maintained by creating links to the blocks making up the file. The FAT system is a 16-bit
system that allows files to be identified by a name consisting of up to 8 characters and a 3
character extension, which is why this system is called FAT16.

To improve on this, the original version of Windows 95 (using the FAT16 system) was
delivered with improved FAT management in the form of the VFAT (Virtual FAT)
system. VFAT is a 32-bit system that allows file names of up to 255 characters in length.
The programmers had to ensure forward compatibility, however, so that 16-bit (DOS)
environments could still access these files. The solution was therefore to assign one name
for each system. This is why it is possible to use long file names under Windows 95, but
still access them under DOS.

The FAT file system is a 16-bit system, which means that cluster addresses can not be
bigger than 16 bits. The maximum number of clusters that can be referenced with the
FAT system is therefore 216, (65536) clusters. Now, since a cluster consists of a fixed
number (4,8,16,32, ...) of sectors of 512 contiguous bytes, the maximum size of FAT
partition can be determined by multiplying the number of clusters by the size of a cluster.
With 32Kb clusters, the maximum size of a FAT partition is therefore 2GB.

Furthermore, a file can only occupy an integral number of clusters, which means that if a
file occupies several clusters, the last cluster will only be partially occupied and the
unoccupied space will be unusable. As a result, the smaller the cluster size, the less
wasted space. It is estimated that a file wastes, on average, half a cluster, which means
that on a 2 GB partition, 16KB will be lost per file…

The file allocation table

The File Allocation Table is a list of digital values that describes the allocation of the
clusters of a partition or, in other words, the state of each cluster of the partition in which
it is located. In fact, each cell of the allocation table corresponds to a cluster. Each cell
contains a number that indicates if the cluster is used by a file and, if so, the location of
the next cluster in the file. In this way, you end up with a FAT chain, a linked list of
references pointing to the successive clusters up until the end of the file. Each FAT entry
is 16- or 32-bits long (depending on whether it is FAT16 or FAT32). The first two entries
store information about the table itself, while the following entries reference the clusters.
Certain entries may contain values indicating the state of the specific cluster. For
example, the value 0000 indicates that the cluster is not used, FFF7 marks the cluster as
bad so that it will not be used, and values between FFF8 and FFFF specify that the cluster
contains the end of a file. Each partition actually contains two copies of the table stored
contiguously on the disk, so that it can be recovered if the first copy becomes corrupted.

The FAT32 file system

Although VFAT was a clever system, it did not address the limitations of FAT16. As a
result, a new file system (and not just better FAT management as was the case with
VFAT) appeared with Windows 95 OSR2. This file system, called FAT32 uses 32-bit
values for the FAT entries. In fact, only 28 bits are used, as 4 bits are reserved for future
use.

With the appearance of the FAT32 file system, the maximum number of clusters per
partition went increased from 65535 to 268,435,455 (228-1). FAT32 thus allows much
bigger partitions (up to 8 terabytes). Although the maximum theoretical size of a FAT32
partition is 8 TB, Microsoft has voluntarily limited it to 32 GB on Windows 9x systems
to promote NTFS (ref: http://support.microsoft.com/default.aspx?scid=kb;en;184006).
Since a FAT32 partition can contain many more clusters than a FAT16 partition, it is
possible to reduce significantly the size of the clusters and thereby also limit wasted disk
space. For example, with a 2GB partition, it is possible to use 4KB clusters with the
FAT32 system (instead of 32KB clusters with FAT16), which reduces the wasted space
by a factor of 8.

The trade-off for this is that FAT32 is not compatible with Windows versions prior to
OEM Service Release 2. A system booting up with an earlier version will simply not see
this type of partition.
Also, 16-bit disk management utilities, such as early versions of Norton Utilities, will no
longer work correctly. In terms of performance, using a FAT32 system instead of a
FAT16 system will result in a slight performance improvement on the order of 5%.

FAT16 or FAT32 file system?

As the number of clusters is limited, the maximum size of a partition depends on the size
of each cluster. Let's take a look at the maximum partition size according to the cluster
size and file system used:

FAT32 file
Cluster FAT16 file
system
size system
(theoretical)
512 bytes 32 MB 64 MB
1 KB 64 MB 128 MB
2 KB 128 MB 256 MB
8 GB
4 KB 256 MB
(1 TB)
16 GB
8 KB 512 MB
(2 TB)
16 KB 1 GB 32 GB
(4 TB)
2 GB
32 KB 2 GB
(8 TB)

When you format a hard disk, you therefore need to decide carefully on the type of file
system to use, and select the one that provides an amount of available space that is as
close as possible to the desired size!
The NTFS file system
The NTFS file system

The NTFS file system (New Technology File System) is based on a structure called the
"master file table" or MFT, which is able to hold detailed information on files. This
system allows the use of long names, but, unlike the FAT32 system, it is case-sensitive,
which means that is capable of distinguishing lower-case and upper-case letters.

As far as performance goes, file access on an NTFS partition is faster than on a FAT-type
partition, as it uses a high-performance binary tree to locate files. The theoretical limit on
the size of a partition is 16 exabytes (17 billion TB), but the physical limit of a disk is
2TB.

It is at the security level, that NTFS differentiates itself, as it allows attributes to be


defined for each file. Version 5 of this file system (standard under Windows 2000 (alias
NT 5)) brings even more new features, including heightened performance and per-
volume disk quotas defined for each user. NTFS v.5 should also support remote
administration...

The master file table

The File Allocation Table is a table of numeric values each cell of which describes the
allocation of clusters of a partition, in other words, the state (used or not used by a file) of
each cluster in the partition on which it is located.

The NTFS file system is based on a different structure, called a master file table,
containing records about the files and directories of the partition. The first record, called a
descriptor, contains information on the MFT (a copy of it is stored in the second record).
The third record contains the log file, a file containing all actions performed on the
partition. The following records, making up what is known as the core, reference each
file and directory of the partition in the form of objects with assigned attributes. This
means that the information concerning each file is stored in a file, which is itself
registered inside the MFT. The MFT is therefore a storage structure of the data in the
partition, and not a list of clusters.
Defragmentation
What is fragmentation?

When you save a file on a disk (which is initially empty), all the information concerning
this file is written sequentially, one piece after the other. When you save a second file, it
will be written after the first, and so on.

However, when a file is deleted, this creates a blank space on the disk. Now, the
following files will fill up the "holes", and will be scattered in pieces over the disk. This
phenomenon is even more pronounced on a hard drive, which has a large capacity and
contains a huge number of files.

So, when the system accesses a file, the disk head will need to visit all the locations
where the file pieces are saved to read them. This will result in reduced performance...

How can you remedy this fragmentation?

Copying, moving and deleting files is inevitable, as the system is constantly writing
temporary files. So you need to use a defragmentation tool, which is a software package
that is able to reorganise the files on the hard drive so that the file "pieces" are stored
contiguously so as to form more "compact" files.

It is recommended that you regularly (around once a month) use a defragmentation utility
that will reorganise the data stored on the disk.

Some defragmentation tips

The defragmentation tool uses algorithms to re-order the files on the disk in the best
possible manner. The file fragments scattered over the disk are moved, one by one, to
free disk space (not used by files) on a temporary basis, and are then relocated to an
appropriate place. The more free disk space there is available, the easier the
defragmentation will be.

Furthermore, if the data is changed during defragmentation, the tool has to recalculate
how to move the files to take into account these new changes. It is therefore essential to
close all open applications before starting the defragmentation. Now, the operating
system has processes that are running in the background and accessing the hard drive
(especially if the amount of RAM on the system is insufficient, as the system creates
swap files).

Therefore, it is strongly recommended, if your computer is running Windows, that you


reboot in safe mode, which is a mode in which a minimal configuration is loaded. To
reboot the computer in safe mode, you need to press the F8 key just after the computer
starts up (RAM test and disk detection) and just before the message Starting Windows.
Overclocking
The purpose of overclocking

A processor is normally designed to operate at a given frequency, namely the one for
which its operation has been certified. It can, however, be advantageous to increase this
frequency as it is what governs the processor's speed of computation. In this way, you can
increasing your computing power without spending any money.

Furthermore, it is also possible to increase the frequency of the motherboard bus, in other
words, the communication speed between the processor and other components.

This process of increasing the processor frequency is generally referred to as


overclocking.

However, this process can also be dangerous for your computer. First of all, an increase
in frequency is accompanied by an increase in temperature in the components whose
frequency was increased. You therefore must make sure that the components affected by
this increase in temperature are properly ventilated (the processor is one component that
will obviously experience a major increase in temperature, but other components will be
affected as well...). The first thing to do, therefore, is to add additional heat sinks / fans to
evacuate the extra heat.

Furthermore, add-on cards may not be able to accept too great an increase in frequency (a
PCI card, for example, is initially designed to operate at 33 MHz).

In a best-case scenario, the system will operate correctly. It may, however, become
unstable or lock up, in which case you need to go back to the previous configuration.
Some components may even overheat and burn, in which case you will need to change
them and the process of overclocking could potentially become more expensive than
changing the processor!

Understanding the concept of frequency

To understand overclocking, you need to understand the concept of frequency and the
relationships that exist between the frequencies of the motherboard and the
microprocessor.

First of all, you need to know how manufacturers determine the frequency at which the
processor will operate:
the processors manufactured by a manufacturer all come from the same base series.
However, after manufacturing the processors undergo frequency tests, which means that
the processors are subjected to a given frequency and then the processor is checked to see
if it operates stably. The processor may, however, be able to operate at a higher
frequency, and this, in fact, is almost always the case, as manufacturers use a wide safety
margin to guarantee the quality of their processors, and it is into that safety margin that
you start encroaching when you push the processor to its limits in order to gain
megahertz, the equivalent of computing power!
For example, a Pentium 150 will not be much different than a Pentium 166.

As the processor runs at a higher speed than the motherboard, there exists what is called a
multiplier coefficient (or multiplication coefficient) that defines the processor speed in
relation to the motherboard speed. A coefficient of 2 therefore means that: "the processor
runs at double the frequency of the motherboard".

Overclocking can be achieved in two ways:

• by modifying the multiplier coefficient (the motherboard will not experience any change in
frequency, only the processor will run at a higher speed)
• by modifying the base frequency, in other words, the motherboard's frequency (the processor will
then also experience an increase in frequency proportional to the multiplier coefficient). The
possible frequencies for the motherboard depend on the type of motherboard (a recent
motherboard will obviously be capable of higher frequencies), but will be one of the following:
o 50MHz
o 60MHz
o 66MHz
o 75MHz
o 83MHz
o 100MHz
o and higher...

Overclocking possibilities

System bus
Base PCI Multiplier
(motherboar Result
processor bus Coefficient
d)
Pentium 90
60 MHz 30 MHz 1.5
Pentium 75 Pentium
66 MHz 33 MHz 1.5
100
Pentium
60 MHz 33 MHz 1.5 100
Pentium 90
66 MHz 33 MHz 2 Pentium
133
Pentium
Pentium 100 66 MHz 33 MHz 2
133
Pentium
66 MHz 33 MHz 2 133
Pentium 120
66 MHz 33 MHz 2.5 Pentium
166
Pentium
66 MHz 33 MHz 2.5 166
Pentium 150
66 MHz 33 MHz 3 Pentium
200
Pentium
Pentium 166 66 MHz 33 MHz 3
200

Which type of overclocking should you choose?

As mentioned above, there are two main ways of overclocking your system:
• overclocking the processor only
• overclocking the motherboard and all its components

So, which type of overclocking should you choose?

The frequency of a PCI-type bus, for example, is linked to the motherboard frequency by
a coefficient of 0.5, which means that with a motherboard operating at 66MHz the PCI
bus will have a frequency of 33MHz. So increasing the base frequency of the
motherboard will have, as a direct consequence, a proportional increase in the frequency
of the PCI bus, in other words on all the components that are attached to it.

It is therefore better to increase the motherboard than the multiplier coefficient. Lets look
at an example: a Pentium 166 with a base frequency of 83MHz and a multiplier
coefficient of 2 (2x83=166) will have better performance than a Pentium 200 with a base
frequency of 66MHz and a multiplier coefficient of 3 (3x66=200). What happens is that
certain components play the role of a brake, in that the processor "waits" until they have
completed their operations before it continues with its own!

Cooling and aeration

As soon as you start overclocking, the temperature of the overclocked components


becomes significantly higher, which could be harmful to them. A processor is normally
tested to withstand a temperature on the order of 80°C, beyond which damage may be
irreversible. That is why you can never talk about overclocking without also talking about
cooling and aeration. A processor is usually cooled by a special-purpose fan. It is not,
however, the only element that suffers from the overheating associated with
overclocking: chipsets, memory modules, and voltage regulators must also be cooled.

Which cooling systems should you use?

The system most commonly used is a fan mounted on a heat sink (a heat sink is a metal
plate with small fins that improves the heat exchange between the processor on which it
is mounted and the ambient air). The fan can also be mounted directly on the processor,
but the cooling will not be as effective; sometimes a small metal plate inserted between
the fan and the processor can help to dissipate the processor heat. The fan must be as
large as possible (use, for example, a Cyrix 6x86 M1 special fan, which is known for its
heat dissipation) to allow major air movement which will also contribute to the
ventilation of the case...

Some overclocking aficionados use a (silicon-type, heat-)conductive paste between the


processor and the fan to achieve the best possible heat exchange. There are also fans that
are equipped with an alarm (connected to the speaker of your computer) which will sound
if the fan breaks down. In fact, a fan failure can directly cause the death of your
processor. This type of fan is therefore recommended if you are severely overclocking
your processor.
Finally, there are components designed to provide excellent cooling: these are Peltier
effect plates, which act like a heat pump, by significantly lowering the temperature on
one side (the processor side), but heating the other side, which must be cooled by a fan.
This type of system is recommended for overclocking!

Aeration is also very important as it is air movement inside the case that makes it possible
to evacuate the heat (transferred to the air from the components). For this reason, a well-
arranged case minimises obstacles to ventilation. In particular, hard drive ribbon cables
(particularly SCSI ribbon cables, which are very wide), if they are located in front of an
element that heats up (the processor, for example), will obstruct air circulation and could
cause overheating (even for processors that are not overclocked...).

In addition, the hard drive is also sensitive to excessive heat increases, so you must make
sure that you don't locate it in a confined part of the case; instead it should be in an area
where it will benefit from fan airflow.
BIOS optimisation
The BIOS (Basic Input/Output System) is a small memory chip located on the
motherboard containing data that define the system parameters. As some BIOS data are
written in a ROM, it is not possible to change them, however, certain parameters are
accessible from the BIOS setup, which can be enabled right after start-up, usually by
pressing the <F1> or <DEL> key (it may be another key, in which case at start-up you
will see a message like "HIT 'DEL' TO ENTER SETUP"). BIOS setup is a sort of "BIOS
configuration panel".

The BIOS setup generally takes the form of menus selected using the keyboard (apart
from a few rare BIOSes which use a mouse, such as AMI's WIN BIOS, for example, and
which present the sections in the form of windows). The parameters are arranged in
sections in the form of options for which there are a limited number of choices. However,
given the number of options present, the set of all possible configurations resulting from
all possible choices of BIOS parameters is huge. In addition, these options are always in
English, which prevents those who don't know English from optimising their machines,
unless they have a guide ;-)

There is no single type of BIOS. There are several BIOS manufacturers, but the main
ones are currently

• AMI BIOS (from American Megatrends)


• Award BIOS
• Phoenix BIOS

In addition, each of these manufacturers supplies several BIOS versions and it is estimated that there are
more than 1800 different BIOS versions...
Here we will only look at AWARD BIOS and AMI BIOS

Why optimise your BIOS?

As we have seen, BIOS configuration allows you to adjust the behaviour of the chipset.
For example, you can modify parameters such as the data transfer speed between the
different components of the motherboard, and the way in which the transfers occur.
However, all the default parameters (i.e. the parameter settings at the time the
manufacturer delivered the BIOS) are configured so that any computer using this BIOS
will operate correctly without modifying the parameters. In addition, when assemblers (a
person or company who assembles PCs) supply a PC, they do not generally optimise the
BIOS for you. In fact, for such a company, a PC that is assembled quickly is generally a
large amount of money saved, as demand is high. However, these standard parameters are
also the least advantageous settings for your configuration.

By optimising your BIOS you can gain up to 50% more power!


However, this operation takes time, as you must not modify all parameters at once. In
fact, it is preferable to modify one or two parameters and then boot up the system to make
sure it operates correctly. The best way is to use so-called Benchmark software that
evaluates system performance by assigning a mark for the tests performed.
It can, in fact, happen that your computer becomes lightning fast but generates a large
number of errors (such as bugs or crashes) making it unstable (as in the case of
overclocking).

What does the BIOS setup look like?

The various BIOSes offer roughly the same features, but their presentation varies from
one BIOS manufacturer to another (a single manufacturer usually sticks to the same
presentation). You can generally find the following sections:

• STANDARD CMOS SETUP


• ADVANCED CMOS SETUP
• ADVANCED CHIPSET SETUP
• POWER MANAGEMENT BIOS SETUP
• PERIPHERAL SETUP
• AUTO CONFIGURATION WITH BIOS DEFAULTS
• AUTO CONFIGURATION WITH POWER ON DEFAULTS
• CHANGE PASSWORD
• HARD DISK UTILITY
• WRITE TO CMOS AND EXIT
• DO NOT WRITE TO CMOS AND EXIT

The Video ROM BIOS shadow function

Video can be slightly accelerated using BIOS configuration.

While it is true that the BIOS ROM contains routines (program lines) specially dedicated
to graphic display, the ROM is read byte by byte, which makes access to these data
extremely slow. The shadow RAM or video ROM BIOS shadow function allows the
content of this ROM (access time on the order of 170 ns) to be copied to RAM (access
time on the order of 60ns for SIMM modules, and 10ns for DIMM modules). For your
information, the memory area into which the ROM is copied is located between 640KB
and 1024KB, called the Adapter segment.
This option is of interest for games and graphic applications running under MS-DOS as
they use this ROM.

However, recent operating systems (Windows 95 and 98, Windows NT, OS/2, ...) all
have their own video card drivers (graphic display managers), so the shadow RAM (or
video ROM BIOS shadow) function can be disabled for recent operating systems that no
longer operate under DOS.

In general, as many peripherals have a ROM (whose access time is not the greatest), their
contents (if you know the exact address) can be copied to RAM using the ROM BIOS
shadow function. However, use of this option is not recommended as most adapter cards
now have their own drivers, and modifications could cause problems.
Disable unneeded options

Some BIOS options are unneeded for recent PCs or the use that you make of them (e.g.
network options, ...), so it is possible to accelerate start-up by disabling them.

The BIOS has a small anti-virus which prevents any writes to the Boot sector of your hard
Anti-virus drive. Only the installation of a new operating system requires access to this (very
sensitive) part of the disk. It is sufficient to enable the Virus Warning option
Recalibration of At each start-up, the BIOS recalibrates the floppy disk drive, which means that it
the floppy disk determines if the floppy disk drive is of the 40- or 80-track type. This can be avoided by
drive disabling the Boot Up Floppy Seek option.
By correctly configuring the cache memory, the computer performance can be
considerably improved. Depending on the machine, it is often helpful to enable the CPU
Cache memory Internal Cache and CPU External Cache options. It is therefore recommended that you
run tests with these options enabled and disabled to see which settings yield the best
results...
The RAM tests performed by the BIOS are completely useless. If these
options exist, disable them:

Above 1 MB Memory Test


Disable the
start-up tests to Memory Parity Check Error
save time

Memory Test Tick Sound

On the other hand, you should enable the Quick Power On Self Test option
which will accelerate the start-up of your PC.
Hard drive block Block mode lets the system transfer several sectors at once. Enable the IDE HDD Block
mode Mode option if your disk supports this..
By enabling the Typematic Rate Setting setting (speed at which the keyboard repeats a
Keyboard character when you hold a key down). The Typematic Rate and Typematic Delay
repeat speed options define the key repetition frequency and the time interval before repetition starts.
The values 30 and 250 are optimal values.
The DMA Clock option defines the direct memory access speed. The higher the value, the
Memory access
better the results. This value must be increased slowly until you find the optimal setting
speed
(which will depend on your motherboard).
Memory Enable the DRAM Fast Leadoff and DRAM Posted Write Buffer options
performance Set DRAM Read Burst to the lowest value supported by your PC.
Enable the CPU to PCI Posting, PCI Burst and PCI to CPU Posting options which allow
PCI
you, respectively, to create buffer systems for the data sent by the CPU to the PCI bus,
performance
transfer more data simultaneously and manage a PCI to CPU buffer.
The AGP Aperture Size option lets you define the memory assigned to textures. The
AGP
higher this value, the faster the memory access. Increase this value step by step until you
performance
find the optimal setting.
The Boot sequence option lets you define the order in which the system chooses the
drives from which it will boot up. The boot sequence generally starts with the floppy disk
drive (sequence A, C), which means that if the system detects a floppy disk in the drive it
will verify that it contains a boot sector and then boot from if it finds one, otherwise it will
send an error message indicating that the floppy disk is not bootable, or is not a system
disk (sample message:
Boot sequence
"Non-system disk or disk error, Replace and strike any key when ready").
This option is useless if you have no intention of booting from a system disk. In fact, this
option slows computer startup considerably and is very annoying if you are like me and
tend to forget floppy disks in the drive. To disable this option, you need to modify the boot
sequence (using the PgUp and Pgdown keys), until it is something like 'C, A'. Don't forget
to reset the sequence to 'A, C' the day you need to boot from a system disk.
Auto-detection Detection of hard drives can take time if you have several hard drives. To save time at
of disks start-up, it is recommended that you fix the parameters of your hard drives in the
STANDARD CMOS SETUP. If you know the number of cylinders, tracks and sectors per track
of your hard drive (these values are generally written on the disk) you can enter them
manually, otherwise, you can run automatic hard drive detection (IDE HDD AUTO
DETECTION) which will determine these values for you...

BIOS parameters related to memory

In the area of performance, memory access times are of great importance in the BIOS. By
setting these parameters, it is possible to obtain increases of up to 20% with respect to the
automatic default configuration.

The parameters related to memory are generally in the "Chipset Features Setup" section.
These parameters are:

• Wait states
• Burst access
• Refresh

To modify these values, you first have to disable automatic configuration by disabling the
Auto Configuration option (the enabled value assigns the safest settings for all types of
memory, and therefore the slowest... however, they should be noted down as they are a
starting point). You then need to modify the options, one at a time, and after each test
note the previous value so that you can restore it if you see a problem occur after a
change.

Burst access

Why are there different settings for memory?


Because there are large number of memory types, each with different settings.

The DRAM R/W option has two values: the first value corresponds to the number of
processor cycles for reading (R), and the second for writing (W). The values are
generally X444 for reading, X333 for writing (the lower the value, the faster the memory
access, but the greater the risk that your configuration will be unstable. This is why you
need to reduce these values gradually, testing them each time).

Wait states

The FP Mode DRAM Read WS and EDO Read Wait State options characterise the RAM
reading synchronisation for DRAM and EDO memory modules (they are sometimes
called DRAM Read WS, DRAM Read Wait States, ...). This option lets you define the
number of wait states with respect to the system bus, as the system bus is sometimes too
fast for the memory, which can cause lock-ups.
So, you can try to lower the number of wait states to accelerate the system. If, however,
you have problems because you have increased the speed of the system (overclocking)
you can try to lower it...
There are also wait states inside the memory modules. As the data are stored in tables,
there are two signals:

• CAS (Column Address Strobe)


• RAS (Row Address Strobe)

These signals must be spaced out in time, and this delay between the two signal types is called RAS to
CAS delay

Refresh

There are a very large number of refresh options in the BIOS. To understand the concept
of refresh, you need to understand how RAM works.

RAM consists of a large number of capacitors which lose their charge over time, which
means that the memory gradually loses ... its memory. It therefore needs to be refreshed
using small electrical pulses which recharge the capacitors. These pulses last on the order
of a millisecond. Now, in a computer, time is marked with respect to a clock frequency.
The duration of the refresh intervals is therefore given with respect to the clock frequency
("1 CLK" means one clock tick, while "2T or 3T" refer to the number of processor (CPU)
cycles). These values must be a low as possible to achieve good optimisation. Each value
can generally be lowered by one unit with respect to the value set via auto-configuration.
Flashing the BIOS
What does it mean "to flash"?

The BIOS (Basic Input/Output System) is a small memory chip located on the
motherboard containing data that defines the system parameters. The data may, however,
contain errors (bugs). Furthermore, when new hardware becomes available, BIOS
manufacturers may decide to upgrade their BIOS.
However, this is not as simple as it seems, as you may already knowthe BIOS is memory
that persists when the PC is turned off (it would actually be very unpleasant to have to
configure the BIOS each time you boot your computer...). As a result, BIOSes have
evolved over to the past few years so that they can be updated.

On the earliest PCs, BIOSes were ROM chips soldered to the motherboard and were
impossible to modify. Certain manufacturers were still able to offer software corrections
(called patches) that were stored on the hard drive and loaded into RAM (RAM) to
correct any bugs. They were only able to act, however, after the PC booted up.

BIOS manufacturers then began to sell socketed BIOSes that could be physically
changed, but whose price was very high at the time.
Next came electrically programmable read-only memory, which were memory chips that
could be modified using a machine that sent electrical pulses via special-purpose
connectors. This type of chip programmer was rare, however, so that the operation was
always relatively expensive for the user.

Most motherboards have flash memories, that can be directly modified by software.
BIOSes installed on motherboards having this type of memory can be upgraded using a
program called firmware, provided by the manufacturer, that replaces the old BIOS with
a more recent BIOS. The problem, however, was how to obtain updates for one's BIOS (a
problem that has now been resolved thanks to the Internet). These updates are available
in the form of binary files containing a BIOS image that is transferred to flash memory
using firmware.

BIOS flashing therefore means updating the BIOS via software, i.e., replacing the old
BIOS version using a program.

Why flash your BIOS?

Before flashing your BIOS, you have to be sure you know what the benefits are. Flashing
does, in effect, allow the BIOS to be updated for various reasons (bug fixes, new features,
support for new hardware), however, the improvements provided do not necessarily
affect all users. Furthermore, there is no guarantee that the new BIOS itself will not have
new bugs...
So, are the improvements brought by flashing the BIOS (generally described in a file
accompanying the new BIOS) worth the risks incurred (small as they may be)?

If your system is working correctly and you want to flash your BIOS "just to see", in the
hope of some hypothetical improvements, then it would be best not to do it. There is a
very simple rule:

Any system that works correctly should only be updated for


known reasons.

In what situations should you flash your BIOS?

Flashing the BIOS changes the hardware that is being flashed, in other words, it modifies
the behaviour of the hardware containing the BIOS (this could be the motherboard, a
video card, a SCSI card, ...), so you need to be very careful.

Guidelines to be followed:

• read thoroughly the documentation supplied with the BIOS and firmware, and the documentation
for your hardware. Certain hardware components require a jumper to be installed to enable
flashing. In fact, since the BIOS is modifiable via software, it can also be modified by viruses (e.g.
the Chernobyl virus). The jumper therefore lets you enable or disable write protection via
hardware (making it impossible for a virus to act...)
• make sure that the BIOS you have obtained and that you are going to upload corresponds exactly
to the hardware you wish to modify. If this is not the case, it could happen (even though the
firmware (software supplied with the BIOS which performs the transfer) generally carries out a
verification test) that you transfer data that do not match your hardware, which would have the
same effect as modifying your microwave to make it read video cassettes...
• verify the integrity of the BIOS and the firmware (if there were errors during downloading, the file
could be corrupted, in which case it would be prudent to restart the download)
• perform the BIOS flashing in a stable environment, i.e. under MS-DOS (in native mode, and not in
a DOS window or by simply "restarting in MS-DOS mode"). The safest way of doing this is to
restart your computer with a DOS system disk. A floppy disk generally comes with "flashable"
hardware that allows the system to boot up in a stable DOS environment suitable for flashing. It
usually also contains a program allowing you to save the current BIOS so that you can restore it in
the event of problems
• make sure that there is no program resident in memory. You should run a recent anti-virus on
your machine (bootable system disk and hard drive) before starting the BIOS upgrade
• Finally, you need to work in an electrically stable environment to minimise the risks of power
outages during the transfer operation (storms, unsafe electrical outlets, frequent power company
outages, ...)
Hardware interrupts (IRQ) and conflicts
What is an interrupt?

Since the processor cannot process multiple pieces of data at the same time (it processes
one piece of data a time, multitasking is actually the alternation of instruction snippets
from several different tasks), a currently running program can be momentarily suspended
by an interrupt for the time it takes to execute an interrupt service routine. The interrupted
program may then continue executing. There are 256 different interrupt addresses.

An interrupt is a hardware interrupt when it is requested by a hardware component of the


computer. A computer has many peripherals. They generally need to use system
resources, if only to communicate with the system...
When they need a resource, they send an interrupt request to the system so that the
system will pay attention to them. The peripherals each have an interrupt number, called
an IRQ (Interruption request). One way of imagining this is to view each peripheral as
pulling on a "string" connected to a bell to signal to the computer that it wants attention.

This "string" is in fact a physical line that connects the slot to the motherboard. For an 8-
bit ISA location, for example, there are 8 IRQ (Interruption Request) lines connecting the
8-bit ISA slot to the motherboard, IRQ0 to IRQ7. These IRQs are controlled by an
"interrupt controller" which gives control to the IRQ with the highest priority. For 16-
bit slots, IRQs 8 to 15 are added, requiring the addition of a second interrupt controller,
the connection between the two groups of interrupts is made via IRQ 2 which is
connected to IRQ 9 (called "cascading"). Cascading can be thought of as "inserting"
IRQs 8 to 15 between IRQs 1 and 3:

As the priority is given by increasing order of IRQ number, and since IRQs 8 to 15 are
inserted between IRQs 1 and 3, the order of priority is the following:

0 > 1 > 8 > 9 > 10 > 11 > 12 > 13 > 14 > 15 > 3 > 4 > 5 > 6 > 7

What is DMA?

Peripherals frequently need to "borrow memory" from the system to use as a buffer, a
temporary storage area that allows input or output data to be quickly written.
A direct memory access channel called DMA was defined to address this need.

The DMA channel is an access to a RAM location on the computer referenced by a


"RAM Start Address" and an "End address". This method allows a peripheral to use
special channels giving it direct access to memory, without involving the microprocessor,
which frees the microprocessor from doing this work.

A PC-type computer has 8 DMA channels. The first four DMA channels are 8 bits wide
while DMAs 4 to 7 are 16 bits wide.
DMA channels are usually assigned as follows:

• DMA0 - free
• DMA1 - (sound card)/ free
• DMA2 - floppy disk controller
• DMA3 - parallel port (printer port)
• DMA4 - direct memory access controller
(redirected to DMA0)
• DMA5 - (sound card)/ free
• DMA6 - (SCSI)/ free
• DMA7 - available

Base addresses

As peripherals sometimes need to exchange information with the system, memory


addresses are assigned to them for sending and receiving data. These addresses are called
"base addresses" (the following terms are also sometimes used: "input/output ports",
"I/O ports", "I/O address", "I/O port addresses", "base ports", or "Input/Output
Address").

It is through the intermediary of this base address that the peripheral can communicate
with the operating system. There can therefore only be one base address per peripheral.

Here is a list of some common base addresses:

• 060h - keyboard
• 170h/376h - secondary IDE controller
• 1F0h/3F6h - primary IDE controller
• 220h - sound card
• 300h - network card
• 330h - SCSI adapter card
• 3F2h - floppy disk drive controller
• 3F8h - COM1
• 2F8h - COM2
• 3E8h - COM3
• 2E8h - COM4
• 378h - LPT1
• 278h - LPT2
All this information, however, is transparent to the average user, who doesn't need to
worry about it.

Why are there hardware conflicts?

An interrupt is thus a line connecting a peripheral to the processor, and an interrupt is a


hardware interrupt when it is requested by a hardware component of the PC. This is the
case, for example, when a key is hit and the keyboard wants to draw the processor's
attention to this event. However, the 256 interrupts cannot all be requested as hardware
interrupts. The different peripherals always call specific interrupts.
That is why, when installing and configuring expansion cards, you must be sure that the
same interrupt is not used by two different peripherals.

If, in fact, two peripherals have the same IRQ, the system will not know to which piece of
hardware it should pass control... the system will lock up or function abnormally... this is
called a hardware conflict. A hardware conflict does not occur only when two peripherals
have the same hardware interrupt. There can also be a conflict if two peripherals have the
same input/output address or are assigned to the same DMA channels.

How to configure the IRQs of peripherals

The IRQ of a card can be modified, as it needs to be allocated an IRQ number that is not
used by another peripheral.

• On older cards, it was set using jumpers on the card.


• On more recent cards (that have a Plug & Play BIOS), resources (IRQs, DMAs, Input-Output
Addresses) are configured using a little utility (often running under DOS) supplied with the
network card (it is generally called setup.exe, install.exe, ezconf.exe, config.exe, ...) that makes it
possible to modify the IRQ, DMA,and other values through software.
To be able to modify the parameters manually, you normally have to disable plug & play mode.
• However, many cards are configurable at will (it is possible to assign an IRQ value under
Windows). This is particularly true for most sound cards.

It is not always obvious how to find resources for all the peripherals, so here are the resources that are
already used and that cannot be assigned to your expansion cards:
IRQ Peripheral
0 Internal clock
1 keyboard
programmable interrupt
2 controller
Redirected to IRQs 8 to 15
COM2/COM4 communication
3
port
COM1/COM3 communication
4
port
5 free
6 floppy disk controllers
7 LPT1 printer port
8 CMOS (Real time clock)
9 free
10 free
11 free
12 PS2 mouse port/free
numerical data processor
13
(Math coprocessor)
primary hard drive controller
14
(IDE)
secondary hard drive controller
15
(IDE)
As can be seen above, ports COM1 and COM4 use the same interrupt, as do ports COM2 and
COM3. This may appear illogical in that the same interrupt cannot be used by two peripherals. In
fact, it is possible to use COM1 and COM4 (as well as COM2 and COM3) provided that they are not
active simultaneously. Otherwise, the computer may lock up or exhibit abnormal behaviour.

Resolving hardware conflicts

When you are facing a problem that you believe is related to the hardware configuration
of your machine, the first thing to do is to try to isolate it. This means trying to eliminate
all possible variables, generally by opening the machine and removing, one by one, all
items that could cause a conflict, or by isolating them through software means (in your
operating system), until you find the component that is responsible.