You are on page 1of 37

The computer you are using to read this page uses a microprocessor to do its work.

The microprocessor
is the heart of any normal computer, whether it is a desktop machine, a server or a laptop. The
microprocessor you are using might be a Pentium, a K6, a PowerPC, a Sparc or any of the many other
brands and types of microprocessors, but they all do approximately the same thing in approximately the
same way.
If you have ever wondered what the microprocessor in your computer is doing, or if you have ever
wondered about the differences between types of microprocessors, then read on. In this edition of
HowStuffWorks, you will learn how fairly simple digital logic techniques allow a computer to do its job,
whether its playing a game or spell checking a document!

HOW TO MICROPROCESSOR HISTORY


Microprocessor History
A microprocessor -- also known as a CPU or central processing unit -- is a complete computation engine
that is fabricated on a single chip. The first microprocessor was the Intel 4004, introduced in 1971. The
4004 was not very powerful -- all it could do was add and subtract, and it could only do that 4 bits at a
time. But it was amazing that everything was on one chip. Prior to the 4004, engineers built computers
either from collections of chips or from discrete components (transistors wired one at a time). The 4004
powered one of the first portable electronic calculators.
The first microprocessor to make it into a home computer was the Intel 8080, a complete 8-bit computer
on one chip, introduced in 1974. The first microprocessor to make a real splash in the market was the
Intel 8088, introduced in 1979 and incorporated into the IBM PC (which first appeared around 1982). If
you are familiar with the PC market and its history, you know that the PC market moved from the 8088 to
the 80286 to the 80386 to the 80486 to the Pentium to the Pentium II to the Pentium III to the Pentium 4.
All of these microprocessors are made by Intel and all of them are improvements on the basic design of
the 8088. The Pentium 4 can execute any piece of code that ran on the original 8088, but it does it about
5,000 times faster!
The following table helps you to understand the differences between the different processors that Intel
has introduced over the years.

Compiled from The Intel Microprocessor Quick Reference Guide and TSCP Benchmark Scores
Information about this table:
The date is the year that the processor was first introduced.
What's a Chip?
Many processors are re-introduced at higher clock speeds for
A chip is also called an
many years after the original release date.
integrated circuit.
Generally it is a small, thin
Transistors is the number of transistors on the chip. You can
piece of silicon onto which
see that the number of transistors on a single chip has risen
the transistors making up
steadily over the years.
the microprocessor have
Microns is the width, in microns, of the smallest wire on the
been etched. A chip might
chip. For comparison, a human hair is 100 microns thick. As the
be as large as an inch on a
feature size on the chip goes down, the number of transistors
side and can contain tens of
rises.
millions of transistors.
Clock speed is the maximum rate that the chip can be clocked
Simpler processors might
at. Clock speed will make more sense in the next section.
consist of a few thousand
Data Width is the width of the ALU. An 8-bit ALU can
transistors etched onto a
add/subtract/multiply/etc. two 8-bit numbers, while a 32-bit ALU
chip just a few millimeters
can manipulate 32-bit numbers. An 8-bit ALU would have to
square.

execute four instructions to add two 32-bit numbers, while a 32-bit ALU can do it in one
instruction. In many cases, the external data bus is the same width as the ALU, but not always.
The 8088 had a 16-bit ALU and an 8-bit bus, while the modern Pentiums fetch data 64 bits at a
time for their 32-bit ALUs.
MIPS stands for "millions of instructions per second" and is a rough measure of the performance
of a CPU. Modern CPUs can do so many different things that MIPS ratings lose a lot of their
meaning, but you can get a general sense of the relative power of the CPUs from this column.
From this table you can see that, in general, there is a relationship between clock speed and MIPS. The
maximum clock speed is a function of the manufacturing process and delays within the chip. There is also
a relationship between the number of transistors and MIPS. For example, the 8088 clocked at 5 MHz but
only executed at 0.33 MIPS (about one instruction per 15 clock cycles). Modern processors can often
execute at a rate of two instructions per clock cycle. That improvement is directly related to the number of
transistors on the chip and will make more sense in the next section.

Inside a Microprocessor
To understand how a microprocessor works, it is helpful to look inside and learn about the logic used to create one.
In the process you can also learn about assembly language -- the native language of a microprocessor -- and many
of the things that engineers can do to boost the speed of a processor.
A microprocessor executes a collection of machine instructions that tell the processor what to do. Based on the
instructions, a microprocessor does three basic things:
Using its ALU (Arithmetic/Logic Unit), a microprocessor can perform mathematical operations like
addition, subtraction, multiplication and division. Modern microprocessors contain complete floating point
processors that can perform extremely sophisticated operations on large floating point numbers.
A microprocessor can move data from one memory location to another.
A microprocessor can make decisions and jump to a new set of instructions based on those decisions.
There may be very sophisticated things that a microprocessor does, but those are its three basic activities. The
following diagram shows an extremely simple microprocessor capable of doing those three things:

This is about as simple as a microprocessor gets. This microprocessor has:


An address bus (that may be 8, 16 or 32 bits wide) that sends an address to memory
A data bus (that may be 8, 16 or 32 bits wide) that can send data to memory or receive data from memory
An RD (read) and WR (write) line to tell the memory whether it wants to set or get the addressed location
A clock line that lets a clock pulse sequence the processor
A reset line that resets the program counter to zero (or whatever) and restarts execution
Let's assume that both the address and data buses are 8 bits wide in this example.
Here are the components of this simple microprocessor:
Registers A, B and C are simply latches made out of flip-flops. (See the section on "edge-triggered latches"
in How Boolean Logic Works for details.)
The address latch is just like registers A, B and C.
The program counter is a latch with the extra ability to increment by 1 when told to do so, and also to reset
to zero when told to do so.
The ALU could be as simple as an 8-bit adder (see the section on adders in How Boolean Logic Works for
details), or it might be able to add, subtract, multiply and divide 8-bit values. Let's assume the latter here.
The test register is a special latch that can hold values from comparisons performed in the ALU. An ALU
can normally compare two numbers and determine if they are equal, if one is greater than the other, etc.
The test register can also normally hold a carry bit from the last stage of the adder. It stores these values in
flip-flops and then the instruction decoder can use the values to make decisions.
There are six boxes marked "3-State" in the diagram. These are tri-state buffers. A tri-state buffer can pass
a 1, a 0 or it can essentially disconnect its output (imagine a switch that totally disconnects the output line
from the wire that the output is heading toward). A tri-state buffer allows multiple outputs to connect to a
wire, but only one of them to actually drive a 1 or a 0 onto the line.
The instruction register and instruction decoder are responsible for controlling all of the other components.

RAM and ROM


The previous section talked about the address and data buses, as well as the RD and WR lines. These
buses and lines connect either to RAM or ROM -- generally both. In our sample microprocessor, we have
an address bus 8 bits wide and a data bus 8 bits wide. That means that the microprocessor can address
(28) 256 bytes of memory, and it can read or write 8 bits of the memory at a time. Let's assume that this
simple microprocessor has 128 bytes of ROM starting at address 0 and 128 bytes of RAM starting at
address 128.
ROM stands for read-only memory. A ROM chip is programmed with a permanent collection of pre-set
bytes. The address bus tells the ROM chip which byte to get and place on the data bus. When the RD line
changes state, the ROM chip presents the selected byte onto the data bus.
RAM stands for random-access memory. RAM contains bytes of information, and the microprocessor can
read or write to those bytes depending on whether the RD or WR line is signaled. One problem with
today's RAM chips is that they forget everything once the power goes off. That is why the computer needs
ROM.
By the way, nearly all computers contain some amount of ROM (it is possible to create a simple computer
that contains no RAM -- many microcontrollers do this by placing a handful of RAM bytes on the
processor chip itself -- but generally impossible to create one that contains no ROM). On a PC, the ROM
is called the BIOS (Basic Input/Output System). When the microprocessor starts, it begins executing
instructions it finds in the BIOS. The BIOS instructions do things like test the hardware in the machine,
and then it goes to the hard disk to fetch the boot sector (see How Hard Disks Work for details). This
boot sector is another small program, and the BIOS stores it in RAM after reading it off the disk. The
microprocessor then begins executing the boot sector's instructions from RAM. The boot sector program
will tell the microprocessor to fetch something else from the hard disk into RAM, which the
microprocessor then executes, and so on. This is how the microprocessor loads and executes the entire
operating system.

Although they are not shown in this diagram, there would be control lines from the instruction decoder that would:
Tell the A register to latch the value currently on the data bus
Tell the B register to latch the value currently on the data bus
Tell the C register to latch the value currently on the data bus
Tell the program counter register to latch the value currently on the data bus
Tell the address register to latch the value currently on the data bus
Tell the instruction register to latch the value currently on the data bus
Tell the program counter to increment
Tell the program counter to reset to zero
Activate any of the six tri-state buffers (six separate lines)
Tell the ALU what operation to perform
Tell the test register to latch the ALU's test bits
Activate the RD line
Activate the WR line
Coming into the instruction decoder are the bits from the test register and the clock line, as well as the bits from the
instruction register.

Understanding Microprocessor Instructions


Even the incredibly simple microprocessor shown in the previous example will have a fairly large set of instructions
that it can perform. The collection of instructions is implemented as bit patterns, each one of which has a different
meaning when loaded into the instruction register. Humans are not particularly good at remembering bit patterns, so
a set of short words are defined to represent the different bit patterns. This collection of words is called the assembly
language of the processor. An assembler can translate the words into their bit patterns very easily, and then the
output of the assembler is placed in memory for the microprocessor to execute.
Here's the set of assembly language instructions that the designer might create for the simple microprocessor in our
example:
LOADA mem - Load register A from memory address
LOADB mem - Load register B from memory address
CONB con - Load a constant value into register B
SAVEB mem - Save register B to memory address
SAVEC mem - Save register C to memory address
ADD - Add A and B and store the result in C
SUB - Subtract A and B and store the result in C
MUL - Multiply A and B and store the result in C
DIV - Divide A and B and store the result in C
COM - Compare A and B and store the result in test
JUMP addr - Jump to an address
JEQ addr - Jump, if equal, to address
JNEQ addr - Jump, if not equal, to address
JG addr - Jump, if greater than, to address
JGE addr - Jump, if greater than or equal, to address
JL addr - Jump, if less than, to address
JLE addr - Jump, if less than or equal, to address
STOP - Stop execution
If you have read How C Programming Works, then you know that this simple piece of C code will calculate the
factorial of 5 (where the factorial of 5 = 5! = 5 * 4 * 3 * 2 * 1 = 120):
a=1;
f=1;
while (a <= 5)
{
f = f * a;

a = a + 1;
}
At the end of the program's execution, the variable f contains the factorial of 5.
A C compiler translates this C code into assembly language. Assuming that RAM starts at address 128 in this
processor, and ROM (which contains the assembly language program) starts at address 0, then for our simple
microprocessor the assembly language might look like this:
// Assume a is at address 128
// Assume F is at address 129
0
CONB 1
// a=1;
1
SAVEB 128
2
CONB 1
// f=1;
3
SAVEB 129
4
LOADA 128
// if a > 5 the jump to 17
5
CONB 5
6
COM
7
JG 17
8
LOADA 129
// f=f*a;
9
LOADB 128
10 MUL
11 SAVEC 129
12 LOADA 128
// a=a+1;
13 CONB 1
14 ADD
15 SAVEC 128
16 JUMP 4
// loop back to if
17 STOP
So now the question is, "How do all of these instructions look in ROM?" Each of these assembly language
instructions must be represented by a binary number. For the sake of simplicity, let's assume each assembly language
instruction is given a unique number, like this:
LOADA - 1
LOADB - 2
CONB - 3
SAVEB - 4
SAVEC mem - 5
ADD - 6
SUB - 7
MUL - 8
DIV - 9
COM - 10
JUMP addr - 11
JEQ addr - 12
JNEQ addr - 13
JG addr - 14
JGE addr - 14
JL addr - 16
JLE addr - 17
STOP - 18
The numbers are known as opcodes. In ROM, our little program would look like this:
// Assume a is at address 128
// Assume F is at address 129
Addr opcode/value
0
3
// CONB 1
1
1
2
4
// SAVEB 128

3
128
4
3
// CONB 1
5
1
6
4
// SAVEB 129
7
129
8
1
// LOADA 128
9
128
10
3
// CONB 5
11
5
12
10
// COM
13
14
// JG 17
14
31
15
1
// LOADA 129
16
129
17
2
// LOADB 128
18
128
19
8
// MUL
20
5
// SAVEC 129
21
129
22
1
// LOADA 128
23
128
24
3
// CONB 1
25
1
26
6
// ADD
27
4
// SAVEB 128
28
128
29
11
// JUMP 4
30
8
31
18
// STOP
You can see that seven lines of C code became 17 lines of assembly language, and that became 31 bytes in ROM.
The instruction decoder needs to turn each of the opcodes into a set of signals that drive the different components
inside the microprocessor. Let's take the ADD instruction as an example and look at what it needs to do:
1. During the first clock cycle, we need to actually load the instruction. Therefore the instruction decoder
needs to:
activate the tri-state buffer for the program counter
activate the RD line
activate the data-in tri-state buffer
latch the instruction into the instruction register
2. During the second clock cycle, the ADD instruction is decoded. It needs to do very little:
set the operation of the ALU to addition
latch the output of the ALU into the C register
3. During the third clock cycle, the program counter is incremented (in theory this could be overlapped into
the second clock cycle).
Every instruction can be broken down as a set of sequenced operations like these that manipulate the components of
the microprocessor in the proper order. Some instructions, like this ADD instruction, might take two or three clock
cycles. Others might take five or six clock cycles.

Performance
The number of transistors available has a huge effect on the performance of a processor. As seen
earlier, a typical instruction in a processor like an 8088 took 15 clock cycles to execute. Because of the
design of the multiplier, it took approximately 80 cycles just to do one 16-bit multiplication on the 8088.
With more transistors, much more powerful multipliers capable of single-cycle speeds become possible.
More transistors also allow for a technology called pipelining. In a pipelined architecture, instruction
execution overlaps. So even though it might take five clock cycles to execute each instruction, there can

be five instructions in various stages of execution simultaneously. That way it looks like one instruction
completes every clock cycle.
Many modern processors have multiple instruction decoders, each with its own pipeline. This allows for
multiple instruction streams, which means that more than one instruction can complete during each clock
cycle. This technique can be quite complex to implement, so it takes lots of transistors.
The trend in processor design has been toward full 32-bit ALUs with fast floating point processors built in
and pipelined execution with multiple instruction streams. There has also been a tendency toward special
instructions (like the MMX instructions) that make certain operations particularly efficient. There has also
been the addition of hardware virtual memory support and L1 caching on the processor chip. All of these
trends push up the transistor count, leading to the multi-million transistor powerhouses available today.
These processors can execute about one billion instructions per second!
For more information on microprocessors and related topics, check out the links on the next page!

HOW TO MOTHERBOARD WORKS


The motherboard has been an integral part of most personal computers for more than 20 years. Think of a
motherboard as a scale model of a futuristic city with many modular plug-in buildings, each using power from a
common electrical system. Multiple-lane highways of various widths transport data between the buildings. The
motherboard is the data and power infrastructure for the entire computer.
Motherboards (also called mainboards) are actually a carryover from architecture used for years in mainframe
computers. Various circuit cards performing various functions all plug into many similar sockets on a common
circuit board. Each circuit card performs a unique function in the computer and gets its power from the socket as
well.
Due to improvements in circuitry and packaging, motherboards have essentially stayed the same size or shrunk (in
square inches), while their functionality has skyrocketed in the past 20 years. In this edition of How Stuff Works,
you will learn more about how the motherboard works, and about a motherboard's many sockets and connectors.

A Brief History
The original IBM PC contained the original PC motherboard. In this design, which premiered in 1982, the
motherboard itself was a large printed circuit card that contained the 8088 microprocessor, the BIOS,
sockets for the CPU's RAM and a collection of slots that auxiliary cards could plug into. If you wanted to
add a floppy disk drive or a parallel port or a joy stick, you bought a separate card and plugged it into one
of the slots. This approach was originally pioneered in the mass market by the Apple II machine. By
making it easy to add cards, Apple and IBM accomplished two things:
They made it easy to add new features to the machine over time
They opened the computer to creative opportunities by third-party vendors

Motherboard Sizes
Different motherboards of different vintages typically have different form factors. Form factor essentially
means the size and shape of the actual motherboard. There are more than a half-dozen form factors for
motherboards, with the most recent ones having the designation of NLX. Right now, the designation ATX
is the most prevalent. By buying a computer with a true ATX motherboard, you are assured that you will
have the ability to upgrade by being able to re-use the personal computer case with a more recent
replacement ATX board design.
Motherboards have helped to keep the "personal" in personal computing since pluggable components
allow the user to personalize the system depending on their applications and needs. For example:
A prolific collector of digital camera images or video will want to add a SCSI hard disk drive to an
open bay and use an empty socket on the motherboard for the SCSI controller card.
A serious game enthusiast will want the fastest video card possible with as much memory on the
card as possible.

Common Motherboard Items


A motherboard is a multi-layered printed circuit board. Copper circuit paths called traces that resemble
a complicated roadmap carry signals and voltages across the motherboard. Layered fabrication
techniques are used so that some layers of a board can carry data for the input/output, processor and
memory buses while other layers can carry voltage and ground returns without circuit paths shortcircuiting at intersections. The insulated layers are manufactured into one complete, complex "sandwich."
Chips and sockets are soldered onto the motherboard. For example, you will typically find:
one or more microprocessors
a basic input/output system chip (BIOS)
memory slots
a chip set that adds lots of features like I/O ports and controllers
peripheral component interconnect (PCI) adapter card slots
industry standard architecture (ISA) adapter slots
accelerated graphics port (AGP) video card slots
universal serial bus (USB) ports
cooling fan(s) on heat sinks of processor and some video cards

Examples
The MSI 694D Pro AR supports dual Pentium central processing units (CPUs), has five PCI slots and a
communications network riser (CNR) slot. The board supports 133 MHz bus speeds and ultra-direct
memory access-100 (UDMA). There are four USB ports and onboard audio in the ATX form factor board.

MSI 694D Pro AR Dual Flip Chip Socket 370 Motherboard

The Abit KT-7A supports Advanced Micro Devices (AMD) processors and has the KT-133A chipset. The
card slots on the Abit KT-7A, from bottom to top, shows below that ISA has one slot, PCI has six slots and
AGP has one slot. A special fan cools the chipset.

Abit KT-7A AMD Processor Motherboard


A partial view of the TechRam S3ProM motherboard shows slots, from bottom to top, that ISA has one
slot, PCI has two slots, audio modem riser (AMR) has one slot, and AGP has one slot.

TechRam S3ProM Motherboard

The BIOS chip is common to many motherboards.

BIOS Chip

Data Bus Width


Modern Pentium class motherboards have a data bus with 64 bits. That is the width of the data highway that goes in
and out of the processor. The Pentium processors, however, do use 32-bit registers to handle 32-bit instructions.
Bus speeds and widths have increased due to faster processors and the needs of multimedia applications. Typical bus
names and widths (in bits) are:
Industry Standard Architecture (ISA) - 8 or 16 bits
Extended Industry Standard Architecture (EISA) - 8 or16 bits
Microchannel Architecture (MCA) - 16 or 32 bits
VESA Local Bus (VLB) - 32 bits
Peripheral Component Interconnect (PCI) - 32 or 64 bits
Accelerated Graphics Port (AGP ) - 32 bits

How Have Motherboards Changed?


Speeds, temperatures, density, faster chipset designs and component count have driven the need for circuit cooling
via miniature electric fans. These fans mount inside the actual computer case. Heat sinks act like an automobile

radiator and provide additional surface area to help cool a component. Replaceable fan-heat sink assemblies are
often used to help dissipate the considerable amount of heat on modern processor chips. The fan-heat sink assembly
conducts heat away from the chip by convection, using a layer of thermal grease between the two mating metal
surfaces. Fans often have a third wire used for monitoring the speed of the fan.
Modern motherboard designs include provisions for monitoring:
fan speed in RPM for the personal computer case, processor and power supply fans
temperatures of motherboard and processor
personal computer case intrusion
PCI slots are replacing the older ISA slots, and both types of slots are being replaced by USB ports. USB ports can
also be used to replace the usual keyboard, mouse and printer ports. Sound card function is also typically
incorporated into modern motherboards. Multifunction chips are on the horizon that will do even more multiple
tasks.
The additional function on the motherboard saves the motherboard manufacturer costs because:
there are less warranty claims due to problems associated with all the many electrical contacts (fasteners) in
the usual card slot
there are lower power supply wattage requirements
there are savings from elimination of a slot's socket and its space on the motherboard
The consumer can still upgrade function integrated on the motherboard (such as audio and game controls) so long as
the motherboard manufacturer provides a means of disabling the function in order to prevent subsequent system
resource conflicts.
A motherboard still may have voltages present on it even if the computer is switched off due to recent advances in
power management and power controls. Always make sure that the power cord is unplugged!

Chipsets
Chipsets provide the support for the processor chip on the motherboard. The Intel 440BX is the dominant
chipset in the non-Apple personal computers. The chipset is the heart of the computer since it controls
and determines how fast and which type of processor, memory, and slots are used. Another chip on the
motherboard is called the Super I/O controller. Its main function is to control the floppy disk drive,
keyboard, mouse, serial and printer ports.
Recent motherboard designs include additional chips to support USB, sound card, video adapter,
computer host and network adapter. These chips save the cost of an adapter slot.

Advice on Motherboards
When buying a motherboard, follow these tips:
Deal only with a reputable manufacturer.
Ensure that it has the same form factor as your current case.
Read the booklet that comes with your motherboard. It should fully cover the motherboard's settings and
specifications.
Check the power supply requirements for AMD processors. Some motherboards have unique requirements.
Verify the form factor of your computer case matches the form factor of any motherboard you plan to buy.
Avoid tweaking voltages and timings to get more speed out of a computer ("overclocking")."

MOTHERBOARD

COMPONENTS/
MOTHERBOARDS
Evolution
BIOS
CMOS RAM
Form factor
BAT
LPX
ATX
NLX
MicroATX
FlexATX
Riser architectures

Last Updated - 1Jun01


The motherboard is the main circuit board inside the PC which holds the processor, memory and expansion slots and
connects directly or indirectly to every part of the PC. It's made up of a chipset (known as the "glue logic"), some
code in ROM and the various interconnections or buses. PC designs today use many different buses to link their
various components. Wide, high-speed buses are difficult and expensive to produce: the signals travel at such a rate
that even distances of just a few centimetres cause timing problems, while the metal tracks on the circuit board act as
miniature radio antennae, transmitting electromagnetic noise that introduces interference with signals elsewhere in
the system. For these reasons, PC design engineers try to keep the fastest buses confined to the smallest area of the
motherboard and use slower, more robust buses, for other parts.
This section focuses on basic functionality and layout - the motherboard's various interfaces, buses and chipsets
being covered elsewhere.
Evolution
The original PC had a minimum of integrated devices, just ports for a keyboard and a cassette deck (for storage).
Everything else, including a display adapter and floppy or hard disk controllers, were add-in components, connected
via expansion slots.
Over time, more devices have been integrated into the motherboard. It's a slow trend though, as I/O ports and disk
controllers were often mounted on expansion cards as recently as 1995. Other components - typically graphics,
networking, SCSI and sound - usually remain separate. Many manufacturers have experimented with different levels
of integration, building in some or even all of these components. However, there are drawbacks. It's harder to
upgrade the specification if integrated components can't be removed, and highly integrated motherboards often
require non-standard cases. Furthermore, replacing a single faulty component may mean buying an entire new
motherboard.
Consequently, those parts of the system whose specification changes fastest - RAM, CPU and graphics - tend to
remain in sockets or slots for easy replacement. Similarly, parts that not all users need, such as networking or SCSI,
are usually left out of the base specification to keep costs down.

The basic changes in motherboard form factors over the years are covered later in this section - the diagrams below
provide a detailed look at the various components on two motherboards. The first a Baby AT design, sporting the
ubiquitous Socket 7 processor connector, circa 1995. The second is an ATX design, with a Pentium II Slot 1 type
processor connector, typical of motherboards on the market in late 1998.

Motherboard development consists largely of isolating performance-critical components from slower ones. As
higher speed devices become available, they are linked by faster buses - and the lower-speed buses are relegated to
supporting roles. In the late 1990s there was also trend towards putting peripherals designed as integrated chips
directly onto the motherboard. Initially this was confined to audio and video chips - obviating the need for separate
sound or graphics adapter cards - but in time the peripherals integrated in this way became more diverse and
included items such as SCSI, LAN and even RAID controllers. While there are cost benefits to this approach the
biggest downside is the restriction of future upgrade options.
BIOS
All motherboards include a small block of Read Only Memory (ROM) which is separate from the main system
memory used for loading and running software. The ROM contains the PC's Basic Input/Output System (BIOS).
This offers two advantages: the code and data in the ROM BIOS need not be reloaded each time the computer is
started, and they cannot be corrupted by wayward applications that write into the wrong part of memory. A Flash
upgradeable BIOS may be updated via a floppy diskette to ensure future compatibility with new chips, add-on cards
etc.
The BIOS comprises several separate routines, serving different functions. The first part runs as soon as the machine
is powered on. It inspects the computer to determine what hardware is fitted and then conducts some simple tests to
check that everything is functioning normally - a process called the power-on self test (POST). If any of the
peripherals are plug and play devices, it's at this point that the BIOS assigns their resources. There's also an option to
enter the Setup program. This allows the user to tell the PC what hardware is fitted, but thanks to automatic selfconfiguring BIOSes this isn't used so much now.
If all the tests are passed, the ROM tries to boot the machine from the hard disk. Failing that, it will try the CDROM drive, then the floppy drive, finally displaying a message that it needs a system disk. Once the machine has
booted, the BIOS serves a different purpose by presenting DOS with a standardised API for the PC hardware. In the
days before Windows, this was a vital function, but 32-bit "protect mode" software doesn't use the BIOS, so again
it's of less benefit today.
Most PCs ship with the BIOS set to check for the presence of an operating system in the floppy disk drive first, then
on the primary hard disk drive. Any modern BIOS will allow the floppy drive to be moved down the list so as to
reduce normal boot time by a few seconds. To accommodate PCs that ship with a bootable CD-ROM, some BIOSes
allow the CD-ROM drive to be assigned as the boot drive. Some also allow booting from a hard disk drive other
than the primary IDE drive. In this case it would be possible to have different operating systems - or separate
instances of the same OS - on different drives.
Windows 98 (and later) provides multiple display support. Since most PCs have only a single AGP slot, users
wishing to take advantage of this will generally install a second graphics card in a PCI slot. In such cases, most
BIOSes will treat the the PCI card as the main graphics card by default. Some, however, allow either the AGP card
or the PCI card to be designated as the primary graphics card.

Whilst the PCI interface has helped - by allowing IRQs to be shared more easily - the limited number of IRQ
settings available to a PC remains a problem for many users. For this reason, most BIOSes allow ports that are not in
use to be disabled. With the increasing popularity of cable and ADSL Internet connections and the ever-increasing
availability of peripherals that use the USB interface, it will often be possible to get by without needing either a
serial or a parallel port.
CMOS RAM
Motherboards also include a separate block of memory made from very low power consumption CMOS
(complementary metal oxide silicon) RAM chips, which is kept "alive" by a battery even when the PC's power is
off. This is used to store basic information about the PC's configuration: number and type of hard and floppy drives,
how much memory, what kind and so on. All this used to be entered manually, but modern auto-configuring BIOSes
do much of this work, in which case the more important settings are advanced settings such as DRAM timings. The
other important data kept in CMOS memory is the time and date, which is updated by a Real Time Clock (RTC).
The clock, CMOS RAM and battery are usually all integrated into a single chip. The PC reads the time from the
RTC when it boots up, after which the CPU keeps time - which is why system clocks are sometimes out of sync.
Rebooting the PC causes the RTC to be reread, increasing their accuracy.
Form factor
Early PCs used the AT form factor and 12in wide motherboards. The sheer size of an AT motherboard caused
problems for upgrading PCs and did not allow use of the increasingly popular slimline desktop cases. These
problems were largely addressed by the smaller version of the full AT form factor, the Baby AT, introduced in 1989.
Whilst this remains a common form factor, especially for Socket 7 motherboads, there have been several
improvements since. All designs are open standards and as such don't require certification. A consequence is that
there can be some quite wide variation in design detail between different manufacturers' motherboards.
BAT
The Baby AT (BAT) format reduced the dimensions of the motherboard to a typical 9in wide by 10in long, and BAT
motherboards are generally characterised by their shape, an AT-style keyboard connector soldered to the board and
serial and parallel port connectors which are attached using cables between the physical ports mounted on the
system case and corresponding connectors located on the motherboard.
With the BAT design the processor socket is located at the front of the motherboard, and full-length expansion cards
are intended to extend over it. This means that removing the processor requires the removal of some or all expansion
cards first. Problems were exacerbated by the increasing speeds of Pentium-class processors. System cooling relied
on the AT power supply blowing air out of the chassis enclosure and, due to the distance between the power supply
and the CPU, an additional chassis fan or active heatsink became a necessity to maintain good airflow across the
CPU. AT power supplies only provide 12V and 5V outputs to the motherboard, requiring additional regulators on the
motherboard if 3.3V components (PCI cards or CPUs) are used. Sometimes a second heatsink was also required on
these voltage regulators and together the various additional heat dissipation components caused serious obstruction
for expansion slots.
Some BAT designs allow the use of either AT or ATX power supplies, and some ATX cases might allow the use of a
Baby-AT motherboard.

LPX
The LPX format is a specialised variant of the Baby-AT used in low profile desktop systems and is a loose
specification with a variety of proprietary implementations.

Expansion slots are located on a central riser card, allowing cards to be mounted horizontally. However, this
arrangement can make it difficult to remove the motherboard, and the more complex engineering required adds to
system costs. As the riser card prevents good airflow within the system case, additional chassis fans are almost
always needed.

ATX
The Intel Advanced/ML motherboard, launched in 1996, was designed to solve these issues and marked the
beginning of a new era in motherboard design. Its size and layout are completely different to the BAT format,
following a new scheme known as ATX. The dimensions of a standard ATX board are 12in wide by 9.6in long; the
mini ATX variant is typically of the order 11.2in by 8.2in.
The ATX design gets round the problem by moving the CPU socket and the voltage regulator to the right-hand side
of the expansion bus. Room is made for the CPU by making the card slightly wider, and shrinking or integrating
components such as the Flash BIOS, I/O logic and keyboard controller. This means the board need only be half as
deep as a full size Baby AT, and there's no obstruction whatsoever to the six expansion slots (two ISA, one ISA/PCI,
three PCI).
The ATX uses a new specification of power supply that can be powered on or off by a signal from the motherboard.
This allows notebook-style power management and software-controlled shutdown and power-up. A 3.3V output is
also provided directly from the power supply. Accessibility of the processor and memory modules is improved
dramatically, and relocation of the peripheral connectors allows shorter cables to be used. This also helps reduce
electromagnetic interference. The ATX power supply has a side vent that blows air from the outside directly across
the processor and memory modules, allowing passive heatsinks to be used in most cases, thereby reducing system
noise.
Mini-ATX is simply a smaller version of a full-sized ATX board. On both designs, parallel, serial, PS/2 keyboard
and mouse ports are located on a double-height I/O shield at the rear. Being soldered directly onto the board
generally means no need for cable interconnects to the on-board I/O ports. A consequence of this, however, is that
the ATX needs a newly designed case, with correctly positioned cut-outs for the ports, and neither ATX no MiniATX boards can be used in AT-style cases.

NLX
Intel's NLX design, introduced in 1997, is an improvement on the LPX design for low-profile systems, with an
emphasis on ease of maintenance. The NLX format is smaller, typically 8.8in wide by 13in long, so well suited for
low-profile desktop cases.
All expansion slots, power cables and peripheral connectors are located on an edge-mounted riser card, allowing
simple removal of the main motherboard, which is mounted on rails in the chassis. It uses a full-width I/O shield to
allow for different combinations of rear-panel I/O. The design allows for use of an AGP card, but the slot must be on
the motherboard, which reduces the ease of maintenance when such a card is implemented.

MicroATX
Introduced in the late 1990s, the MicroATX is basically a smaller version of Intel's ATX specification, intended for
compact, low-cost consumer systems with limited expansion potential.
The maximum size of the board is 9.6in square, and its designed to fit into either a standard ATX case or one of the
new micro-tower desktop designs. The double-decker I/O shield is the same as that on the ATX design, but there's
only provision for up to four expansion slots as opposed to the seven that ATX allows. The microATX also allows
use of a smaller power supply, such as the SFX design, which is reduced in both size and power output.

FlexATX
The FlexATX is a natural evolution of the Intel's microATX form factor which was first unveiled in late 1999. The
FlexATX addendum to the microATX specification addresses the requirements of only the motherboard and not the
overall system solution. As such, it does not detail the interfaces, memory or graphics technologies required to
develop a successful product design. These are left to the implementer and system designer. The choice of processor
is, however, limited to socket-only designs.
The principal difference between FlexATX and microATX is that the new form factor reduces the size of the
motherboard - to 9in x 7.5in. Not only does this result in lower overall system costs, it also facilitates smaller system
designs. The FlexATX form factor is backwards compatible with both the ATX and micro-ATX specifications - use
of the same motherboard mounting holes as both of its predecessors avoids the need to retool existing chassis.
In the spring of 2000 VIA Technologies announced an even smaller motherboard than the FlexATX. At 8.5in x 7.5in,
the company's ITX form factor is half and inch less wide than it's Intel competitor. The key innovation that allows
the ITX to achieve such a compact form is the specially designed slimline power unit with built in fan. It's
dimensions of 174mm long x 73mm wide x 55mm high compare with a standard ATX power supply unit measuring
140mm x 150mm x 86mm.
The table below compares the dimensions of the microATX, FlexATX and ITX form factors:
Form Factor Max. Width (mm) Max. Depth (mm)
microATX 244 244
FlexATX 229 191
ITX 215 191
Unsurprisingly Intel's FlexATX form factor uses it's CNR riser architecture, while the ITX uses the rival ACR
architecture.

Riser architectures
In the late 1990s, the PC industry developed a need for a riser architecture that would contribute towards reduced
overall system costs and at the same time increase the flexibility of the system manufacturing process. The
Audio/Modem Riser (AMR) specification, introduced in the summer of 1998, was the beginning of a new riser
architecture approach. AMR had the capability to support both audio and modem functions. However, it did have
some shortcomings, which were identified after the release of the specification. These shortcomings included the
lack of Plug and Play (PnP) support, as well as the consumption of a PCI connector location.
Consequently, new riser architecture specifications were defined which combine more functions onto a single card.
These new riser architectures combine audio, modem, broadband technologies, and LAN interfaces onto a single
card. They continue to give motherboard OEMs the flexibility to create a generic motherboard for a variety of
customers. The riser card allows OEMs and system integrators to provide a customised solution for each customer's
needs. Two of the most recent riser architecture specifications include CNR and ACR.
Intel's CNR Communication and Networking Riser) specification defines a hardware scalable OEM motherboard
riser and interface that supports the audio, modem, and LAN interfaces of core logic chipsets. The main objective of
this specification is to reduce the baseline implementation cost of features that are widely used in the "Connected
PC", while also addressing specific functional limitations of today's audio, modem, and LAN subsystems.
PC users' demand for feature-rich PCs, combined with the industry's current trend towards lower cost, mandates
higher levels of integration at all levels of the PC platform. Motherboard integration of communication technologies
has been problematic to date, for a variety of reasons, including FCC and international telecom certification
processes, motherboard space, and other manufacturer specific requirements.
Motherboard integration of the audio, modem, and LAN subsystems is also problematic, due to the potential for
increased noise, which in-turn degrades the performance of each system. The CNR specifically addresses these
problems by physically separating these noise-sensitive systems from the noisy environment of the motherboard.
With a standard riser solution, as defined in this specification, the system manufacturer is free to implement the
audio, modem, and/or LAN subsystems at a lower bill of materials (BOM) cost than would be possible by deploying
the same functions in industry-standard expansion slots or in a proprietary method. With the added flexibility that
hardware scalability brings, a system manufacturer has several motherboard acceleration options available, all
stemming from the baseline CNR interface.
The CNR Specification supports the five interfaces:
AC97 Interface - Supports audio and modem functions on the CNR card
LAN Connect Interface (LCI) - Provides 10/100 LAN or Home Phoneline Networking capabilities for Intel chipset
based solutions
Media Independent Interface (MII) - Provides 10/100 LAN or Home Phoneline Networking capabilities for CNR
platforms using the MII Interface
Universal Serial Bus (USB) - Supports new or emerging technologies such as xDSL or wireless
System Management Bus (SMBus) - Provides Plug and Play (PnP) functionality on the CNR card.
Each CNR card can utilise a maximum of four interfaces by choosing the specific LAN interface to support.
The rival ACR specification is supported by an alliance of leading computing and communication companies,
whose founders include 3COM, AMD, VIA Technologies and Lucent Technologies. Like CNR, it defines a form
factor and interfaces for multiple and varied communications and audio subsystem designs in desktop OEM personal
computers. Building on first generation PC motherboard riser architecture, ACR expands the riser card definition
beyond the limitation of audio and modem codecs, while maintaining backward compatibility with legacy riser
designs through an industry standard connector scheme. The ACR interface combines several existing
communications buses, and introduces new and advanced communications buses answering industry demand for
low-cost, high-performance communications peripherals.

ACR supports modem, audio, LAN, and xDSL. Pins are reserved for future wireless bus support. Beyond the
limitations of first generation riser specifications, the ACR specification enables riser-based broadband
communications, networking peripheral and audio subsystem designs. ACR accomplishes this in an open-standards
context.
Like the original AMR Specification, the ACR Specification was designed to occupy or replace an existing PCI
connector slot. This effectively reduces the number of available PCI slots by one, regardless of whether the ACR
connector is used. Though this may be acceptable in a larger form factor motherboard, such as ATX, the loss of a
PCI connector in a microATX or FlexATX motherboard - which often provide as few as two expansion slots - may
well be viewed as an unacceptable trade-off. The CNR specification overcomes this issue by implementing a shared
slot strategy, much like the shared ISA /PCI slots of the recent past. In a shared slot strategy, both the CNR and PCI
connectors effectively use the same I/O bracket space. Unlike the ACR architecture, when the system integrator
chooses not to use a CNR card, the shared PCI slot is still available.
Although the two specifications both offer similar functionality, the way in which they are implemented are quite
dissimilar. In addition to the PCI connector/shared slot issue, the principal differences are as follows:
ACR is backwards compatible with AMR, CNR isn't
ACR provides support xDSL technologies via its Integrated Packet Bus (IPB) technology; CNR provides such
support via the well-established USB interface
ACR provides for concurrent support for LCI (LAN Connect Interface) and MII (Media Independent Interface)
LAN interfaces; CNR supports either, but not both at the same time
The ACR Specification has already reserved pins for a future wireless interface; the CNR specification has the pins
available but will only define them when the wireless market has become more mature.
Ultimately, motherboard manufacturers are going to have to decide whether the ACR specification's additional
features are worth the extra cost.

HOW TO PC POWER SUPLY WORK


If there is any one component that is absolutely vital to the operation of a computer, it is the power supply. Without
it, a computer is just an inert box full of plastic and metal. The power supply converts the alternating current (AC)
line from your home to the direct current (DC) needed by the personal computer. In this edition of How Stuff
Works, we'll learn how PC power supplies work and what the wattage ratings mean.

Power Supply
In a personal computer (PC), the power supply is the metal box usually found in a corner of the case. The power
supply is visible from the back of many systems because it contains the power-cord receptacle and the cooling fan.

This is a power supply removed from its PC case. The small, red
switch at right, above the power-cord connector, is for changing line
voltages in various countries.

The interior of a power supply.


Power supplies, often referred to as "switching power supplies", use switcher technology to convert the AC input to
lower DC voltages. The typical voltages supplied are:
3.3 volts
5 volts
12 volts
The 3.3- and 5-volts are typically used by digital circuits, while the 12-volt is used to run motors in disk drives and
fans. The main specification of a power supply is in watts. A watt is the product of the voltage in volts and the
current in amperes or amps.
If you have been around PCs for many years, you probably remember that the original PCs had large red toggle
switches that had a good bit of heft to them. When you turned the PC on or off, you knew you were doing it. These
switches actually controlled the flow of 120 volt power to the power supply.
Today you turn on the power with a little push button, and you turn off the machine with a menu option. These
capabilities were added to standard power supplies several years ago. The operating system can send a signal to the
power supply to tell it to turn off. The push button sends a 5-volt signal to the power supply to tell it when to turn
on. The power supply also has a circuit that supplies 5 volts, called VSB for "standby voltage" even when it is
officially "off", so that the button will work.

Switcher Technology
Prior to 1980 or so, power supplies tended to be heavy and bulky. They used large, heavy transformers
and huge capacitors (some as large as soda cans) to convert line voltage at 120 volts and 60 hertz into 5
volts and 12 volts DC.
The switching power supplies used today are much smaller and lighter. They convert the 60-Hertz (Hz, or
cycles per second) current to a much higher frequency, meaning more cycles per second. This
conversion enables a small, lightweight transformer in the power supply to do the actual voltage stepdown from 110 volts (or 220 in certain countries) to the voltage needed by the particular computer
component. The higher-frequency AC current provided by a switcher supply is also easier to rectify and
filter compared to the original 60-Hz AC line voltage, reducing the variances in voltage for the sensitive
electronic components in the computer.

In this photo you can see three small transformers (yellow) in


the center. To the left are two cylindrical capacitors. The large
finned pieces of aluminum are heat sinks for the voltage
regulators. Voltage regulators produce precise voltage at 3.3
volts, 5 volts, 12 volts, etc.
A switcher power supply draws only the power it needs from the AC line. The typical voltages and current
provided by a power supply are shown on the label on a power supply.

Personal computer power supply label.


VSB is the standby voltage provided to the
power switch.

Switcher technology is also used to make AC from DC, as found in many of the automobile power
inverters used to run AC appliances in an automobile and in uninterruptible power supplies. Switcher
technology in automotive power inverters changes the direct current from the auto battery into alternating
current. The transformer uses alternating current to make the transformer in the inverter step the voltage
up to that of household appliances (120 VAC).

Power Supply Standardization


Over time, there have been at least six different standard power supplies for personal computers. Recently, the
industry has settled on using ATX-based power supplies. ATX is an industry specification that means the power
supply has the physical characteristics to fit a standard ATX case and the electrical characteristics to work with an
ATX motherboard.
PC power-supply cables use standardized, keyed connectors that make it difficult to connect the wrong ones. Also,
fan manufacturers often use the same connectors as the power cables for disk drives, allowing a fan to easily obtain
the 12 volts it needs. Color-coded wires and industry standard connectors make it possible for the consumer to have
many choices for a replacement power supply.

A PC power supply removed from its PC case. Cables and connectors


at right supply DC voltages.

Advanced Power Management


Advanced Power Management (APM) offers a set of five different states that your system can be in. It was
developed by Microsoft and Intel for PC users who wish to conserve power. Each system component, including the
operating system, basic input/output system (BIOS), motherboard and attached devices all need to be APMcompliant to be able to use this feature. Should you wish to disable APM because you suspect it is using up system
resources or causing a conflict, the best way to do this is in the BIOS. That way, the operating system won't try to
reinstall it, which could happen if it were disabled only in the software.

Power Supply Wattage


A 400-watt switching power supply will not necessarily use more power than a 250-watt supply. A larger
supply may be needed if you use every available slot on the motherboard or every available drive bay in
the personal computer case. It is not a good idea to have a 250-watt supply if you have 250 watts total in
devices, since the supply should not be loaded to 100 percent of its capacity.
According to PC Power & Cooling, Inc., some power consumption values (in watts) for common items in a
personal computer are:
PC Item
Watts
Accelerated Graphics Port (AGP) card
20 to 30W
Peripheral Component Interconnect (PCI) card
5W
small computer system interface (SCSI) PCI card
20 to 25W
floppy disk drive
5W
network interface card
4W
50X CD-ROM drive
10 to 25W
10W per
RAM
128M
5200 RPM Intelligent Drive Electronics (IDE) hard disk
5 to 11W
drive
7200 RPM IDE hard disk drive
5 to 15W
Motherboard (without CPU or RAM)
20 to 30W
550 MHz Pentium III
30W
733 MHz Pentium III
23.5W
300 MHz Celeron
18W
600 MHz Athlon
45W
Power supplies of the same form factor ("form factor" refers to the actual shape of the motherboard) are
typically differentiated by the wattage they supply and the length of the warranty.
Products: Power Supplies: Maximum PC Article
Excerpted from Maximum PC magazine, April 2000.
Article copyright 2000 Imagine Media, Inc. Reprinted with permission.

You Got the Power!


Oh, the irony: You'll turn up your nose at a non-DDR videocard, or purchase memory according to who fabbed the
actual chips, but you'll settle for the cheapest power supply in the world. If there's one underappreciated system
component, it's the power supply. But peep this: Running your system with inadequate power is certain to hurt
performance and stability.
In fact, some blue screens that people blame on cheap RAM, unstable drivers, or Windows itself can actually be
power supply related. Witness the problems that Athlon-based systems have with power supplies that lack ample
wattage.
If you're afraid that running a 425W power supply will increase your electricity bills, fear not. A "switching" power
supply only pulls out what's needed. If your PC needs 200W total, but you have a 400W supply, the system will only
consume 200W. In fact, some power supply vendors say the extra breathing room can actually save you money
because the more powerful unit will run cooler and more efficiently than the cheap power supply.

Power regulation is critical. The tighter the power regulation, the closer the power supply comes to its target voltage.
Witness, for example, PC Power & Cooling's Turbo-Cool 425W supply. Its regulation on all three lines is 1 percent.
Cheaper power supplies generally range from 5 percent to 7 percent.
Measuring Your Power Struggles
How much power do you need? If you're running a micro-ATX motherboard with embedded graphics and audio, and
a single 5400rpm IDE drive, that whimpy 150W power supply may be enough. But if your rig pushes half a gig of
RAM, dual procs, Ultra2 SCSI RAID, and a GeForce 256, even a 300W supply may leave you bent.
We've compiled a list of roughly how much power is consumed by common parts. By now you should know not to
judge your power supply by overall wattage alone, so look at the demands on each separate line. Nonetheless, when
looking at overall wattage, add the requirements of every device in your rig, then multiply that number by 1.5
(because you should be taxing from 30 precent to 70 pecent of your power supply's capacity). Some of your
individual components may actually list their specific power requirements, so use these numbers for more accurate
calculations. And remember, if you need to figure out wattage, multiply the voltage by the amps.

Component
Requirement
Line(s) Used
High-wattage AGP card 20 - 50W +3.3V
Average PCI card 5W +5V
Cached SCSI controller PCI card 20-25W +3.3V and +5V
Floppy drive 5W +5V
10/100 NIC 4W +3.3V
50x Atapi CD-ROM 10 - 25W +5V and +12V
12x Atapi DVD-ROM 10 - 25W +5V and +12V
12x / 10x / 40x SCSI CD-R/RW 20W +5V and +12V
SCSI CD-ROM 12W +5V and +12V
RAM 8W per 128MB +3.3V
Ultra2 SCSI PCI card 5W +3.3V and +5V
7200rpm IDE hard drive 5 - 15W +5V and +12V
7200rpm Ultra2 SCSI hard drive 24W +5V and +12V
10,000rpm SCSI drive 10 - 40W +5V and +12V
Motherboard (without CPU or RAM) 20 - 30W +3.3V and +5V
Typical Pentium II 30W +5V
1GHz Pentium III 34W +5V
1.7GHz Pentium 4 65W +12V
1.4GHz AMD Athlon 70W +12V

Power Supply Problems


The PC power supply is probably the most failure-prone item in a personal computer. It heats and cools each time it

is used and receives the first in-rush of AC current when the PC is switched on. Typically, a stalled cooling fan is a
predictor of a power supply failure due to subsequent overheated components. All devices in a PC receive their DC
power via the power supply.
A typical failure of a PC power supply is often noticed as a burning smell just before the computer shuts down.
Another problem could be the failure of the vital cooling fan, which allows components in the power supply to
overheat. Failure symptoms include random rebooting or failure in Windows for no apparent reason.
For any problems you suspect to be the fault of the power supply, use the documentation that came with your
computer. If you have ever removed the case from your personal computer to add an adapter card or memory, you
can change a power supply. Make sure you remove the power cord first, since voltages are present even though your
computer is off.

Power Supply Improvements


Recent motherboard and chipset improvements permit the user to monitor the revolutions per minute (RPM) of the
power supply fan via BIOS and a Windows application supplied by the motherboard manufacturer. New designs
offer fan control so that the fan only runs the speed needed, depending on cooling needs.
Recent designs in Web servers include power supplies that offer a spare supply that can be exchanged while the
other power supply is in use. Some new computers, particularly those designed for use as servers, provide redundant
power supplies. This means that there are two or more power supplies in the system, with one providing power and
the other acting as a backup. The backup supply immediately takes over in the event of a failure by the primary
supply. Then, the primary supply can be exchanged while the other power supply is in use.

Nearly every desktop computer and server in use today contains one or more hard disk drives. Every
mainframe and supercomputer is normally connected to hundreds of them. You can even find VCR-type
devices and camcorders that use hard disks instead of tape. These billions of hard disks do one thing well
- they store changing digital information in a relatively permanent form. They give computers the ability to
remember things when the power goes out.
In this edition of How Stuff Works we'll take apart a hard disk so that you can see what's inside, and also
discuss how they organize the gigabytes of information they hold in files!

Hard Disk Basics


Hard disks were invented in the 1950s. They started as large disks up to 20 inches in diameter holding
just a few megabytes. They were originally called "fixed disks" or "Winchesters" (a code name used for a
popular IBM product). They later became known as "hard disks" to distinguish them from "floppy disks."
Hard disks have a hard platter that holds the magnetic medium, as opposed to the flexible plastic film
found in tapes and floppies.
At the simplest level, a hard disk is not that different from a cassette tape. Both hard disks and cassette
tapes use the same magnetic recording techniques described in the HSW article titled How Tape
Recorders Work. Hard disks and cassette tapes also share the major benefits of magnetic storage - the
magnetic medium can be easily erased and rewritten, and it will "remember" the magnetic flux patterns
stored onto the medium for many years.
Let's look at the big differences between the cassette tapes and hard disks so you can see how they
differ:
The magnetic recording material on a cassette tape is coated onto a thin plastic strip. In a hard
disk, the magnetic recording material is layered onto a high-precision aluminum or glass disk. The
hard disk platter is then polished to mirror smoothness.
With a tape, you have to fast-forward or reverse through the tape to get to any particular point on
the tape. This can take several minutes with a long tape. On a hard disk you can move to any
point on the surface of the disk almost instantly.
In a cassette tape deck, the read/write head touches the tape directly. In a hard disk the
read/write head "flies" over the disk, never actually touching it.
The tape in a cassette tape deck moves over the head at about 2 inches (about 5.08 cm) per
second. A hard disk platter can spin underneath its head at speeds up to 3,000 inches per second
(about 170 MPH or 272 KPH)!
The information on a hard disk is stored in extremely small magnetic domains compared to a
cassette tape's. The size of these domains is made possible by the precision of the platter and
the speed of the media.
Because of these differences, a modern hard disk is able to store an amazing amount of information in a
small space. A hard disk can also access any of its information in a fraction of a second.
A typical desktop machine will have a hard disk with a capacity of between 10 and 40 gigabytes. Data is
stored onto the disk in the form of files. A file is simply a named collection of bytes. The bytes might be
the ASCII codes for the characters of a text file, or they could be the instructions of a software application
for the computer to execute, or they could be the records of a data base, or they could be the pixel colors
for a GIF image. No matter what it contains, however, a file is simply a string of bytes. When a program
running on the computer requests a file, the hard disk retrieves its bytes and sends them to the CPU one
at a time.
There are two ways to measure the performance of a hard disk:
The data rate - the number of bytes per second that the drive can deliver to the CPU. Rates
between 5 and 40 megabytes per second are common.
The seek time - the amount of time it takes between the time that the CPU requests a file and the
first byte of the file starts being sent to the CPU. Times between 10 and 20 milliseconds are
common.
The other important parameter is the capacity of the drive - the number of bytes it can hold.

Inside a Hard Disk


The best way to understand how a hard disk works is to take a look inside. [Note that opening a hard disk
ruins it, so this is not something to try at home unless you have a defunct drive.]
Here is a typical hard disk drive:

It is a sealed aluminum box with controller electronics attached to one side. The electronics control the
read/write mechanism and the motor that spins the platters. The electronics also assemble the magnetic
domains on the drive into bytes (reading) and turn bytes into magnetic domains (writing). The electronics
are all contained on a small board that detaches from the rest of the drive:

Underneath the board are the connections for the motor that spins the platters, as well as a highly-filtered
vent hole that lets internal and external air pressures equalize:

Removing the cover from the drive reveals an extremely simple but very precise interior:

In this picture you can see:


The platters, which typically spin at 3,600 or 7,200 RPM when the drive is operating. These
platters are manufactured to amazing tolerances and are mirror smooth (as you can see in this
interesting self-portrait of the author... No easy way to avoid that, actually!)
The arm that holds the read/write heads. This arm is controlled by the mechanism in the upperleft corner, and is able to move the heads from the hub to the edge of the drive. The arm and its
movement mechanism are extremely light and fast. The arm on a typical hard disk drive can
move from hub to edge and back up to 50 times per second - it is an amazing thing to watch!
In order to increase the amount of information the drive can store, most hard disks have multiple platters.
This drive has three platters and six read-write heads:

The mechanism that moves the arms on a hard disk has to be incredibly fast and precise. It can be
constructed using a high-speed linear motor.

Many drives use a "voice coil" approach - the same technique used to move the cone of a speaker on
your stereo moves the arm.

Storing the Data


Data is stored on the surface of a platter in sectors and tracks. Tracks are concentric circles, and sectors
are pie-shaped wedges on a track, like this:

A typical track is shown in yellow; a typical sector is shown in blue. A sector contains a fixed number of
bytes -- for example, 256 or 512. Either at the drive or the operating system level, sectors are often
grouped together into clusters.
The process of low-level formatting a drive establishes the tracks and sectors on the platter. The
starting and ending points of each sector are written onto the platter. This process prepares the drive to
hold blocks of bytes. High-level formatting then writes the file-storage structures, like the file allocation
table, into the sectors. This process prepares the drive to hold files.

FAT AND FILE SYSTEM


Hard Disk Logical Structures and File Systems
The hard disk is, of course, a medium for storing information. Hard disks grow in size every year, and as they get
larger, using them in an efficient way becomes more difficult. The file system is the general name given to the
logical structures and software routines used to control access to the storage on a hard disk system. Operating
systems use different ways of organizing and controlling access to data on the hard disk, and this choice is basically
independent of the specific hardware being used--the same hard disk can be arranged in many different ways, and
even multiple ways in different areas of the same disk. The information in this section in fact straddles the fine line
between hardware and software, a line which gets more and more blurry every year.
The nature of the logical structures on the hard disk has an important influence on the performance, reliability,
expandability and compatibility of your storage subsystem. This section takes a look at the logical structures on the
hard disk and how they are set up and used for a typical PC installation. I begin with a discussion of different PC
operating systems, and an overview of different file system types. I then go into significant detail describing the
major structures and key operating details of the most common PC file system, FAT (FAT12/FAT16/VFAT/FAT32). I
talk about utilities used for partitioning and formatting hard disks, and also talk a bit about disk compression (even
though it is no longer nearly as important as it once was.) I place special emphasis on how to organize the disk for
maximum performance--while not getting bogged down in the minutiae of optimization where it will buy you little.
Most of the focus in this section is on the FAT family of file systems, because these are by far the most commonly
used, and also the ones with which I am most familiar. I do mention alternative file systems, but do not go into
extensive detail on them, with one exception. Recognizing the growing role of Windows NT and Windows 2000
systems, a separate, comprehensive section has been added that describes the NTFS family of file systems. If you
are mostly interested in reading about NTFS, you may want to skip some of the earlier subsections that describe
FAT, and skip directly to the NTFS material. Bear in mind, however, that some of the NTFS discussions build upon
the descriptions of FAT, since in some ways the file systems are related. So I recommend reading the section in
order, if possible.

Note: If you are running a less-common operating system such as OS/2, Linux or BeOS, you likely know more
about those operating systems than I do. :^) While I have done my best to research file system support for the
alternative operating systems, my personal experience with them is limited. I decided it was better to mention these
operating systems and cover their file system support to the best of my knowledge, rather than just leave them out.
However, I probably missed something somewhere, so if you find any mistakes,

Operating Systems and File Systems


The operating system is the large, relatively complex, low-level piece of software that interfaces your hardware to
the software applications you want to run. The operating system you use is closely related to the file system that
manages your hard disk data. The reason is a simple one: different operating systems use different file systems.
Some are designed specifically to work with more than one, for compatibility reasons; others work only with their
own file system.
This section takes a brief look at the most common operating systems in use on the PC, provides a bit of their history
as it relates to file systems, and mentions the file systems that they use. The operating systems are listed
approximately in the chronological order of when they were first used for PC hardware (although not exactly, since I
chose to keep the discussions of the consumer Windows 9x/ME operating systems near each other, as this seems a
more clear way to describe them). Note that different "sub-versions" of a particular operating system (such as
different variants of Windows 95) may provide support for different kinds of file systems (thanks to the strange way
that Microsoft sometimes chooses to operate... :^) )
Next: DOS (MS-DOS, PC-DOS, etc.)
DOS (MS-DOS, PC-DOS, etc.)
The very first operating system used on the earliest IBM PCs was called simply the Disk Operating System,
abbreviated DOS. There are few PC users who have not heard of DOS; at one time it was used on pretty much every
PC, and it is still around today in many different forms. Microsoft's version of DOS is the most common one, and is
called MS-DOS--with the "MS" abbreviation being rather self-explanatory. :^) For a while IBM Corporation was
producing a competing product called PC-DOS, and there are other companies' alternatives around as well.
As the name "DOS" implies, the use of disks is an inherent part of the DOS operating system. The FAT file system
has been an essential component of DOS since the beginning, and generally speaking, DOS uses only various
versions of FAT for managing files. Different flavors of FAT (sorry :^) ) are supported by different versions of DOS,
as follows:
DOS 1.x and 2.x: These ancient DOS versions support only the FAT12 file system, used today primarily
for floppy disks. If you're still using DOS 1.x or 2.x, man do you need a new computer! :^)
DOS 3.x through 6.x: These are more common versions of DOS for older PCs running either straight DOS
or Windows 3.x. DOS 6.x was especially popular; millions of copies of these operating systems were sold.
DOS 3.x through 6.x support the older FAT12 and the newer FAT16, which was the file system standard for
many years in the PC world.
DOS 7.0: MS-DOS 6.22 was the last "standalone" version of DOS sold by Microsoft. After DOS6.22,
Microsoft sold DOS only as the underpinnings of other operating systems, such as Windows 95/98/ME.
The first of these was MS-DOS 7.0, which runs "underneath" the first Windows 95 version (Windows
95A). It supports FAT12, FAT16 and VFAT, the enhanced version of FAT that includes support for long file
names.
DOS 7.1 and later: These versions of DOS underlie Windows versions from Windows 95 OEM Service
Release 2 (Windows 95B) and later. They support FAT12, FAT16, VFAT and FAT32.
The most confusion is caused by the "appearance" of FAT32 support in the second release of Windows 95-corresponding to DOS 7.1--which was complicated by the fact that later versions of Windows that support FAT32
were not "officially" sold to the public. See the discussions of Windows 95A and Windows 95B and 95C for more
information.
Tip: You can check the version of DOS your system is running by using the "VER" command from any DOS
command line. Note that this may not work for DOS running under a Windows version, as Microsoft desperately
wants people to think that Windows 95/98/ME do not run on the ancient DOS platform. ;^)

Next: Windows 3.x


Windows 3.x
Microsoft's first foray into the world of the graphical operating system was Microsoft Windows 1.0. I never used this
product, but it is universally considered to have been rather scary. :^) Bill Gates and company did not give up, and
subsequent versions of Windows followed. Microsoft finally started to pick up a head of steam with the release of
Windows 3.0. The versions that followed, including Windows 3.1, Windows 3.11 and Windows for Workgroups
3.11, were the most common graphical operating systems used in the early 1990s, prior to the creation of Windows
95. These are often collectively called Windows 3.x.
To the technical purist, Windows 3.x isn't a true "operating system". The reason is that it runs strictly on top of DOS,
and uses DOS (and BIOS) facilities and routines for most of its hardware management, including disk access. For
this reason, some consider it just a "graphical shell". Another famous "Bill" made the point that names don't matter
all that much, but for our purposes, the matter of what Windows 3.x really is does matter. Since it uses DOS for disk
access, this means that Windows has the same file system support as whatever version of DOS underlies it. In most
cases that is MS-DOS 6.x, most commonly MS-DOS 6.22. See this discussion of DOS file system support for more
information.
The last version of Windows 3.x, Windows for Workgroups 3.11, includes an enhancement called "32-Bit File
Access". This is really a poorly-named feature that refers to the use of 32-bit protected mode routines for accessing
the disk, instead of using the standard 16-bit DOS routines. In fact, this is really the first, partial implementation of
the VFAT file system used by Windows 95, although not all of the VFAT features are included--only the use of 32bit access routines. The only thing different here is how the disk is accessed; the file system structures are still
"plain" FAT, so special features like long filenames are not included.
Next: Windows 95A (Initial Release)
Windows 95A (Initial Release)
The early versions of Windows that Microsoft created in the early 1990s represented a significant improvement to
those who had been used to the mostly text-based and single-tasking environment that DOS represented. (Of course,
Microsoft didn't exactly invent the graphical operating system! They just used their marketing muscle to make
Windows the standard on the PC desktop. But that's a different matter altogether. :^) ) Still, early versions of
Windows were very rudimentary in a number of respects. They ran on top of DOS and were limited to 16-bit
applications. Multitasking capability was limited and problems were frequent.
In 1995, Microsoft introduced Windows 95, which represented the "next step" towards a comprehensive consumeroriented graphical operating system for PCs (Windows NT had already been created at the time, but was geared
towards businesses and servers.) Windows 95 is the great "compromise" operating system. In some respects, it has
its own way of handling access to the hard disk, but in other ways it resembles, and even uses, standard DOS. This is
how Windows 95 strives for performance while retaining compatibility with older software. As mentioned in the
discussion of DOS, Windows 95 in fact includes a version of DOS, that is designed to work with it and its file
structures.
When Windows 95 was released, it came with a new and updated version of the traditional FAT file system: VFAT.
At the same time, Windows 95 was compatible with older FAT12 and FAT16 partitions and disks The initial version
of Windows 95 is now sometimes called "Windows 95A" to distinguish it from later editions, or "Windows 95
Retail" in recognition of the fact that it was the only revision of Windows 95 officially sold to the public. It's
important to remember that this version of Windows 95 does not support the now ubiquitous FAT32 file system.
Since modern hard disks basically require FAT32 (or NTFS) for reasonably convenient management, those still
running the first version of Windows 95 may need to consider an upgrade (Windows 98 or Windows ME being the
successors to Windows 95, but certainly not the only choices.)
Tip: If you are not sure of which version of Windows 95 is on your PC, use this procedure to find out.
Next: Windows 95B and 95C (OEM SR 2.x)

Windows 95B and 95C (OEM SR 2.x)

Windows 95 was a big success for Microsoft, and I would say this was for good reason: while certainly sharing
many of the flaws associated with other Microsoft operating systems, Windows 95 was a significant improvement
over Windows 3.x in virtually every way. However, Microsoft developed a problem with the operating system as
time went on, specifically related to the file systems it supported. As hard disks grew in size, they began to approach
the maximum size allowed by a FAT16 partition. This meant that PC makers were forced to divide the drives in their
new systems into multiple partitions, which was extra work and which some customers didn't like. People buying
new hard disks also had a similar problem. Since hard disks were only going to keep getting bigger, Microsoft had to
do "something".
That "something" came in the form of the FAT32 file system, which allows for much larger single partitions than the
older 16-bit version of FAT. FAT32 support was included in an updated version of Windows 95 that Microsoft
released in 1996, along with some other new features. In a move that was controversial at the time, Microsoft
decided to make these new operating systems available only to OEMs (original equipment manufacturers, in this
case PC and PC component makers)--no retail version was ever created. The new version of Windows 95 was called
"Windows 95 OEM Service Release 2", which is usually abbreviated to "Windows 95 OEM SR2" or "Windows 95
OSR2". It is also sometimes called "Windows 95B".
OSR2 was never sold to the public at retail, so if you wanted to use the newer version with FAT32 support you had
to either buy a new PC, motherboard or hard disk, or buy a "gray market" copy from a retailer willing to break
Microsoft's rules (and doing this was quite popular in 1996 and 1997). Microsoft never really explained why they
refused to make FAT32 available to the unwashed masses, but speculation is that they didn't want to expend the
energy involved in doing a full quality assurance cycle to ensure that it would work with all the hardware in use at
the time. By restricting it to OEMs and new systems, they didn't have to worry as much about whether OSR2 would
work with all older hardware and software, and could even push some of the validation effort onto the OEMs
themselves.
Between 1996 and 1997, Microsoft actually released three slightly different variants of Windows 95 OSR2:
OEM SR2.0: This is the first OSR2 version, also called "Windows 95B".
OEM SR2.1: This is OSR2.0 with the addition of a patch to allow (rudimentary) USB support within
Windows 95. Also called "Windows 95B".
OEM SR2.5: This was produced at around the time that Microsoft became obsessed with tying browsers
into their operating system. :^) It includes everything from OSR2.1 and also Internet Explorer 4. This
variant is often called "Windows 95C".
Note that all of these are identical, except as noted, and they all support the FAT12, FAT16, VFAT and FAT32 file
systems.
Well, I included all this verbiage so that you would understand all of the various issues surrounding FAT32 support
under Windows 95. The matter of FAT32 not being available at retail became a non-issue when Microsoft introduced
Windows 98, which all but removed Windows 95 OSR 2.x from the market. Of course, millions of PCs are still
running this operating system. If you have the older Windows 95 (now called "Windows 95A") and want FAT32 you
should upgrade to Windows 98 or Windows ME, not Windows 95 OSR 2.x (unless there is a specific reason why
you prefer Windows 95 of course!)
Next: Windows 98, Windows 98 Second Edition and Windows ME
Windows 98, Windows 98 Second Edition and Windows ME
Microsoft took a lot of heat when it created Windows 95 OEM SR 2, because they decided not to sell that version of
the operating system at retail. As hard disks got bigger and bigger, demand for FAT32 support increased.
Unfortunately, as a "regular customer" of Microsoft's, you would have no way to get FAT32 support, unless you
chose to buy new hardware or buy a copy that had been sold contrary to Microsoft's licensing rules. As a result,
1996 and 1997 were two years of confusion in the area of file system support on Microsoft operating systems. :^)
This situation persisted until 1998, when Microsoft released the first version of Windows 98.
Windows 98, among other improvements to Windows 95 (and some subtractions, depending on your perspective)
includes full support for FAT32, and was definitely sold at retail. :^) The operating system also provides the
capability of converting an existing FAT16 partition to FAT32. This was the first Microsoft operating system to
provide complete "official" support for FAT32. It also of course supports the older FAT variants.
In 1999, Microsoft released Windows 98 Second Edition ("Windows 98 SE"), which in this author's opinion was
little more than a glorified bug patch that Microsoft was able to sell as a new product. In 2000 came Microsoft
Millennium Edition ("Windows ME") which is another evolutionary tweak on the Windows 98 OSes. Neither of

these new operating systems added any additional file system support (and as far as I am concerned, neither added
anything of much substance in any way, though others would probably disagree with that...)
Next: Windows NT
Windows NT
All of the other operating systems that I have mentioned in the earlier pages in this section are, in one form or
another, evolutionary enhancements that hearken back to the very first version of MS-DOS 1.0, written in 1981. This
includes Windows 3.x, Windows 95, Windows 98 and Windows ME. While Microsoft would like very much for
people to forget this fact, I refuse to. :^) These operating systems are generally capable for most users, but are not
designed for the rigors of heavy use. In the early 1990s, Microsoft recognized that if it wanted to tackle the growing
(and lucrative) business and corporate market, a more advanced, capable, secure and scalable operating system
would be required.
The result was a new version of Windows, designed and built from the ground up. This new operating system was
released in 1993 as Windows NT, with the "NT" supposedly standing for "New Technology" (though since its arrival
was delayed for some time, pundits began to joke that it really stood for "Not There". ;^) ) Windows NT was
specifically designed for the corporate environment, and intended for use on high-powered servers and workstations.
Unlike the "consumer" Windows operating systems, it is not based on MS-DOS, though it can run some MS-DOS
programs (through emulation of a virtual MS-DOS machine.)
For compatibility, Windows NT supports the older FAT family of file systems, but not FAT32. However, NT's
intended file system of choice is the highly-capable NTFS, which is discussed in this section of the site. Many of the
more advanced features of Windows NT are in fact tied to the use of the NTFS file system. However, FAT support
provides flexibility for certain applications, especially ones that involved multiple operating system installs on the
same PC. Note that even though Windows NT will read both FAT and NTFS partitions, the two file systems are not
compatible with each other.
Several versions of Windows NT were created. The first was version 3.1, which was named to coincide with
Windows 3.1, the then-current consumer operating system. Windows NT 3.5 followed shortly thereafter, and then
Windows NT 3.51. All of these early NT versions had some limitations, and used the older Windows 3.1-style
interface that many people found somewhat lacking. They support FAT and NTFS partitions, as mentioned, and will
also support HPFS, the native file system of IBM's OS/2.
NT came into its own with Windows NT 4.0, which was released in 1996 and became very popular in the late 1990s.
It supports FAT and NTFS, like the earlier NT versions, but not HPFS, support for which was removed in version
4.0. From a file system support standpoint, Windows NT 4.0 was perceived as having one major weakness, and that
was lack of support for FAT32 (support for FAT32 under Windows NT was possible through the use of third-party
drivers, but not natively). As the 1990s closed, Windows NT became somewhat dated, and was "replaced" by
Windows 2000, which included FAT32 support (amongst other things).
Next: Windows 2000
Windows 2000
Windows NT was very successful for Microsoft through the 1990s, but the software giant didn't rest on its laurels.
As Windows NT 4.0 began to age, certain flaws began to show, including a lack of support for the latest hardware
and other limitations. From a file systems perspective, the most important was the lack of support for FAT32.
Microsoft addressed some of these through the use of service packs, but mostly concentrated on the next version of
the operating system. It had been unofficially called "Windows NT 5.0" for some time, but Microsoft instead called
the new operating system Windows 2000.
Windows 2000 builds upon Windows NT 4.0 in most respects, and differs from the older operating system in two
ways when it comes to file systems. The first is the addition of support for FAT32, as I hinted at in the preceding
paragraph. :^) This was a much-desired change, especially with FAT32 all but replacing FAT16 in newer Windows
9x/ME systems. The other was that NTFS under Windows 2000 was enhanced, through the creation of the NTFS 5.0
version of that file system. Windows 2000 will still read older NTFS partitions, but it must be installed on an NTFS
5.0 partition; NTFS 5.0 is Windows 2000's "preferred" file system.

Note: For a full discussion of NTFS, see this section of the site. For more on NTFS versions, see here.

Next: OS/2
OS/2
In the early 1990s, two of the biggest names in the PC world, IBM and Microsoft, joined forces to create OS/2, with
the goal of making it the "next big thing" in graphical operating systems. Well, it didn't quite work out that way. :^)
The story behind OS/2 includes some of the most fascinating bits of PC industry history, but it's a long story and not
one that really makes sense to get into here. The short version goes something like this:
4. Microsoft and IBM create OS/2 with high hopes that it will revolutionize the PC desktop.
5. OS/2 has some significant technical strengths but also some problems.
6. Microsoft and IBM fight over how to fix the problems, and also over what direction to take for the future of
the operating system.
7. Microsoft decides, based on some combination of frustration over problems and desire for absolute control,
to drop OS/2 and focus on Windows instead.
8. IBM and Microsoft feud.
9. IBM supports OS/2 (somewhat half-heartedly) on its own, while Microsoft dominates the industry with
various versions of Windows.
Now, OS/2 afficionados will probably take issue with at least some of that summarization, but that is what happened
in a nutshell, or at least I think so. :^) At any rate, OS/2 continues to be supported today, but really has been
relegated to a niche role. I don't know how long IBM will continue to support it.
OS/2's file system support is similar, in a way to that of Windows NT's. OS/2 supports FAT12 and FAT16 for
compatibility, but is really designed to use its own special file system, called HPFS. HPFS is similar to NTFS (NT's
native file system) though it is certainly not the same. OS/2 does not have support for FAT32 built in, but that there
are third-party tools available that will let OS/2 access FAT32 partitions. This may be required if you are running a
machine with both OS/2 and Windows partitions. I believe that OS/2 does not include support for NTFS partitions.
Note: As I mentioned in the introduction to this section, I have little personal experience with OS/2, so if anything
has changed with respect to file system support in OS/2, please feel free to let me know.

Next: UNIX / Linux


UNIX / Linux
UNIX is one of the very oldest operating systems in the computer world, and is still widely used today. However, it
is not a very conspicuous operating system. Somewhat arcane in its operation and interface, it is ideally suited for
the needs of large enterprise computing systems. It is also the most common operating system run by servers and
other computers that form the bulk of the Internet. While you may never use UNIX on your local PC, you are using
it indirectly, in one form or another, every time you log on to the 'net.
While few people run UNIX on their own systems, there are in fact a number of different versions of UNIX
available for the PC, and millions of PC users have chosen to install "UNIXy" operating systems on their own
desktop machines. There are dozens of variants of the basic UNIX interface; the most popular one for the PC
platform is Linux, which is itself available in many flavors. While UNIX operating systems can be difficult to set up
and require some knowledge to operate, they are very stable and robust, are efficient with system resources--and are
generally free or very inexpensive to obtain.
UNIX operating systems are designed to use the "UNIX file system". I put that phrase in quotes, because there is no
single UNIX file system, any more than there is a single UNIX operating system. However, the file systems used by
most of the UNIX operating system types out there are fairly similar, and rather distinct from the file systems used
by other operating systems, such as DOS or Windows.

As an operating system geared specifically for use on the PC, Linux is the UNIX variant that gets the most attention
in PC circles. To improve its appeal, the programmers who are continually working to update and improve Linux
have put into the operating system compatibility support for most of the other operating systems out there. Linux
will read and write to FAT partitions, and with newer versions this includes FAT32. I believe Linux can also read and
write HPFS volumes, and can read NTFS volumes as well, but not write to them. Even BeFS is now supported.
Some of these may require special drivers or utilities to be added to a basic Linux install.
While I use UNIX every day (The PC Guide runs on a UNIX server) my experience with Linux specifically is
limited. Fortunately, one of the best things about Linux is that there is a myriad of helpful information about it all
over the Internet: a popular one is slashdot.org. Since the Linux operating system is constantly being updated, your
best bet is to hook up with one or more of the better Linux web sites to keep yourself informed on the happenings in
this alternative operating system for PCs.
Next: BeOS
BeOS
In 1996, a new operating system was introduced to the world by a company called simply "Be". Its product, the
BeOS, was intended to be an alternative to the "big" operating systems used by most people. Support for PowerPC
(Apple hardware platform) came first, and then in 1998, BeOS for x86 (PC) computers was released. BeOS was
developed from the "ground up" and was intended to be especially suited for dealing with multimedia applications,
such as video and audio, on consumer-level hardware. To the PC user dissatisfied with Microsoft operating systems,
BeOS represents another important option. While still a very small percentage of the overall operating system
market (and for that reason mostly ignored in traditional hardware and software circles) it is the choice of a number
of PC hobbyists and power users.
BeOS's primary file system is its own, the BeOS File System, alternately abbreviated as BFS or befs. This file system
is unique to BeOS, but from my understanding most resembles a UNIX-type file system. One of BeOS's strengths,
however, is that to encourage its use by those already running other operating systems, Be has built into BeOS the
capability of accessing a multitude of other file systems. BeOS can read or write to FAT12, FAT16, VFAT and HPFS
partitions. Support for FAT32 has either been added to the operating system recently, or is available through a thirdparty add-on. BeOS can even read NTFS partitions with the appropriate tool added, though it cannot write to them.
My experience with BeOS would be best categorized as follows: "Between Slim and Nil, with Slim having just left
town". (Hey, honesty is supposed to be a virtue. :^) ) Any of you BeOS aficionados who find anything incorrect in
what I have written above, please let me know. While I don't use BeOS myself I think it is important that alternative
operating systems be at least given a fair mention when discussing PC hardware.

You might also like