The following sections provide a quick overview of the components and technologies used in modern PCs.
One of the great strengths of the PC architecture is that it is extensible, allowing a great variety of components to be added, thereby permitting the PC to perform functions its designers may never have envisioned. However, most PCs include a more-or-less standard set of components, including the following:
The motherboard, described in Chapter 3, is the heart of a PC. It serves as "Command Central" to coordinate the activities of the system. Its type largely determines system capabilities. Motherboards include the following components:
The chipset provides the intelligence of the motherboard, and determines which processors, memory, and other components the motherboard can use. Most chipsets are divided physically and logically into two components. The Northbridge controls cache and main memory and manages the host bus and PCI expansion bus (the various busses used in PCs are described in Chapter 3). The Southbridge manages the ISA bus, bridges the PCI and ISA busses, and incorporates a Super I/O controller, which provides serial and parallel ports, the IDE interface, and other I/O functions. Some recent chipsets, notably models from Intel, no longer use the old Northbridge/Southbridge terminology, although the functionality and division of tasks is similar. Other recent chipsets put all functions on one physical chip.
The type of CPU slot or socket determines which processors the motherboard can use. The most popular CPU connectors are Socket 370 (late-model Intel Pentium III and Celeron processors), Socket A (AMD Athlon and Duron), Socket 478 (current Celeron and Pentium 4), Socket 423 (old-style Pentium 4), Slot 1 (old-style Pentium II/III and Celeron), Slot A (older-style Athlon), and the obsolete Socket 7 (Intel Pentium and AMD K6-* processors). Some motherboards have two or more CPU connectors, allowing them to support multiple processors. A few motherboards have both Slot 1 and Socket 370 connectors, allowing them to support either type of CPU (but not both at once).
VRMs supply clean, tightly regulated voltage to the CPU. Faster CPUs draw more current. Good VRMs are expensive, so some motherboard makers use the lowest-rated VRM suitable for the fastest CPU the motherboard is designed to support. Better VRMs allow a motherboard to accept faster future CPUs with only a BIOS upgrade.
The type and number of memory slots (along with chipset limitations) determine the type and amount of memory you can install in a PC. Recent motherboards use 168-pin SDRAM DIMMs, 168- or 184-pin Rambus RIMMs, 184-pin DDR-SDRAM DIMMs, or some combination. Motherboards that use 30- or 72-pin SIMMs are obsolete.
The type and number of expansion bus slots determine the type and number of expansion cards you can add to the system. Recent motherboards may have both PCI and ISA expansion slots, although many recent models have only PCI slots.
Modern motherboards often include embedded functions, such as video and sound (and, less commonly, LAN and SCSI interfaces), that were formerly provided by add-on expansion cards. Embedded components reduce costs, and are better integrated and more reliable. Against those advantages, it may be difficult or impossible to upgrade embedded components, and you pay for those embedded components whether you use them or not. Integrated motherboards are often ideally suited for casual use, but most readers of this book will avoid them for high-performance systems and build à la carte from discrete components.
The processor or CPU (described in Chapter 4) is the engine that drives the PC. The CPU you use determines how fast the system runs and what operating systems and other software can run on it. Most PCs use processors from Intel (Pentium II/III/4 or Celeron) or AMD (Athlon or Duron). Processors vary in speed (currently 700 MHz to 3+ GHz), cost ($25 to $500+), physical connector (Socket 423, Socket 478, Socket 370, Socket A, Slot 1, Slot 2, Slot A, Socket 7, and so on), efficiency at performing various functions, and other respects. Although processors get much attention, the truth is that performance differences between a $50 processor and a $250 processor are relatively minor, typically a factor of two.
A PC uses Random Access Memory (RAM), also called simply memory, to store the programs and data with which it is currently working. RAM is available in many different types, speeds, and physical packages. The amount and type of RAM a system can use depends on its chipset, the type and number of RAM slots available, and other factors. The optimum amount of RAM depends on the operating system you run, how many and which programs you run simultaneously, and other considerations. Typical new PCs may have from 64 megabytes (MB)?marginally adequate for some environments?to 256 MB, which is sufficient for many people. Very few commercial desktop systems come standard with 512 MB or more, which is the amount now used by most "power users." Adding RAM is often a cost-effective upgrade for older systems, many of which have woefully inadequate RAM to run modern operating systems and programs. Memory is described in Chapter 5.
The humble floppy disk drive (FDD) was formerly used for everything from booting the PC to storing data to running programs to making backups, but has now been largely relegated to such infrequent uses as making emergency boot diskettes, loading updated device drivers, running diagnostics programs, or "sneakernetting" documents to other systems. Many people don't use their FDDs from one month to the next. The FDD has been officially declared a "legacy" device, and many PCs manufactured after mid-2000 do not have one. All of that said, the FDD remains important to millions of PC users because it is the only read/write removable storage device present on most current PCs. Chapter 6 describes what you need to know about FDDs.
CD-ROM drives began to appear on mainstream PCs in the early 1990s, became ubiquitous, and have remained generally unchanged except for improvements in speed and reliability. CD-ROM discs store 600+ MB of data in read-only form, and because they are capacious and cheap to produce, are commonly used to distribute software and data. CD-ROM drives can also play CD-DA (audio) discs and multimedia discs, which makes them popular for listening to music and playing games. CD-ROM drives are detailed in Chapter 10. Chapter 11 covers CD-RW drives, which can write discs as well as read them. Chapter 12 describes DVD-ROM drives?which are the follow-on to CD-ROM, and may be used to watch movies or access very large databases?and DVD writers, which function much like CD writers but store about seven times as much data.
The hard disk drive (HDD) is the primary storage device on any PC. Unlike RAM, which retains data only while power remains applied, data written to an HDD remains stored there until you delete it. HDD space was formerly a scarce resource that users went to great lengths to conserve. Modern HDDs are so capacious (up to 200+ GB) and so inexpensive ($1.50/GB or less) that most people now regard disk space as essentially free. On the downside, modern HDDs can be difficult to install and configure, particularly in older systems, and their huge capacity makes some form of tape backup (Chapter 9) almost mandatory. Chapter 13 and Chapter 14 tell you everything you need to know about hard disk interfaces and hard disk drives.
A video adapter, also called a graphics adapter, accepts video data from the computer and converts it into a form the monitor can display. In addition to image quality, the video adapter you use determines the sharpness, number of colors, and stability of the image your monitor displays. Most recent video adapters display text and simple graphics adequately, but video adapters vary greatly in their suitability for use with graphics-intensive software, including games. Video adapters are covered in Chapter 15.
The display you use ultimately determines the quality of the video you see. Most PCs use traditional CRT monitors, but flat-panel LCD displays are an increasingly popular choice. Displays are available in a wide variety of sizes, capabilities, features, and prices, and choosing the right one is not a trivial task. Displays are covered in Chapter 16.
All PCs can produce basic warning sounds and audible prompts using their built-in speakers, but for listening to audio CDs, playing games, watching DVDs with full surround sound, using the Internet to make free long-distance telephone calls, using voice-recognition software, and performing other PC audio functions, you'll need a sound card (or embedded motherboard sound adapter) and speakers or headphones. Sound cards are covered in Chapter 17 and speakers in Chapter 18.
PCs use several types of devices to accept user input?keyboards for entering text; mice, trackballs, and other pointing devices for working in the Windows graphical environment; and game controllers for playing modern graphical computer games and simulations. Keyboards are covered in Chapter 19, Mice and trackballs in Chapter 20, and game controllers in Chapter 21.
Communications ports allow a PC to connect to external peripherals such as printers, modems, and similar devices. Chapter 22 covers serial ports, which are obsolescent but still important for some uses. Chapter 23 covers parallel ports, which are still commonly used to connect printers. Chapter 24 covers Universal Serial Bus (USB) ports, which are replacing legacy serial and parallel ports, and will eventually be the only general-purpose external communications ports used on PCs.
The case (or chassis) is the outer shell that contains the PC and all internal peripheral devices. The power supply provides regulated power to all system components and cooling airflow to keep components from overheating. Cases are described in Chapter 25, power supplies in Chapter 26. Chapter 27 tells you what you need to know about backup power supplies, which protect the power that runs your PC.
Many people think of a PC as comprising solely physical hardware, but hardware is just a useless pile of silicon, metal, and plastic unless you have software to make it do something. Software is a set of detailed instructions that allow a computer to perform a task or group of tasks. Software is usually categorized as being one of three types:
Applications programs are what most people think of when they hear the word software. These programs are designed to perform specific user-oriented tasks, such as creating a word processing document or spreadsheet, browsing the Web, reading and replying to email, managing your schedule, creating a presentation, or recovering a deleted file. Hundreds of thousands of applications programs are available, from comprehensive office suites such as Microsoft Office, to vertical market packages such as medical office billing software, to single-purpose utilities such as WinZip. Whatever you might want a computer to do for you, you can probably locate applications software that will do it.
An operating system is software that manages the PC itself, providing such basic functions as the ability to write and read data from a disk or to display images on the monitor. A PC can run any of dozens of operating systems, including DOS, Windows 95/98/98SE/Me (we use Windows 9X to refer to these collectively throughout the book, and Windows 98 inclusively if we are discussing all versions of Windows 9X other than Windows 95), Windows NT, Windows 2000, Windows XP, Linux and other Unix variants, NetWare, BeOS, and many others. The operating system you use determines which applications programs you can run, which peripherals you can use (not all operating systems support all peripherals), which technologies are available to you (e.g., NT does not support Plug and Play or USB), and how reliable the system is. The vast majority of PCs run Windows 9X/2000/XP or Linux, so we focus on those operating systems in this book.
We said that the operating system determines which peripherals you can use. That's true, but only indirectly. Operating systems themselves natively recognize only the most basic, standardized system components?things like memory, the system clock, and so on. Device drivers are small programs that work at a very low level to integrate support for other devices into the operating system. Using device drivers allows an operating system to be extensible, which means that support for new devices can be added incrementally, without updating the operating system itself. For example, if you install a new video card, installing a device driver for that video card allows the operating system to recognize it and use its full capabilities. Most operating systems include "vanilla" device drivers that allow devices to be used at less than their full capabilities (e.g., the standard VGA driver in Windows) until an appropriate driver can be installed. Most operating systems also include specific device-driver support for common devices, such as popular video cards and printers, but these drivers are often old and slow, and do not take full advantage of hardware capabilities. In general, you should download the most recent device driver from the hardware manufacturer when you install new hardware.
Firmware is a special class of software, so called because it is more or less permanently stored on chips. Firmware is often referred to generically as a BIOS (Basic Input/Output System) because the only firmware contained in early PCs was the main system ROM-BIOS (Read-Only Memory BIOS). That's no longer true. Nearly every component in a modern PC contains its own firmware. Disk drives, SCSI host adapters, video cards, sound cards, keyboards, and most other devices contain firmware, and nowadays that firmware is seldom read-only.
The two most important pieces of firmware in a PC are the chipset?which technically is intermediate between hardware and firmware?and the main system BIOS. The chipset is the heart of the PC. Its capabilities determine such fundamental issues as which processors the motherboard supports, how data is communicated between processor and memory, and so on. The BIOS manages the basic configuration information stored in nonvolatile CMOS memory, such as the list of installed devices, and controls many of the low-level configuration parameters that determine how the PC functions. Although the chipset cannot be updated, the BIOS in all modern PCs can be updated.
BIOS updates sometimes correct bugs, but BIOS code is so stable and well debugged (it has to be) that the purpose of most BIOS updates is to add support for new technologies. For example, many pre-1998 BIOS versions did not support hard disk drives larger than 8.4 GB. Installing an updated BIOS with Extended Interrupt 13 support allows the system to recognize and use larger hard disks. Another common reason for BIOS updates is to add support for new CPU types. For example, many Pentium II motherboards did not support Celerons, which use a different L2 caching method. Similarly, a motherboard manufactured when the fastest Pentium III available was 600 MHz might have no settings to allow using faster Pentium IIIs. Installing an updated BIOS fixes problems such as these. Systems with Flash BIOS (which is to say, all modern systems) can be updated simply by downloading the new BIOS and running a special installer program.
You configure BIOS options and chipset settings by running a special firmware program called CMOS Setup, which is usually invoked by pressing the F1, F2, or Delete keys while the system is booting. Some systems allow the administrator to password-protect access to CMOS Setup, while others make CMOS Setup a "blind" option. For example, recent Intel motherboards by default display an Intel splash screen rather than the standard BIOS boot screen. To run CMOS Setup, press the Esc key when the splash screen appears to clear it, and then press F2 to enter BIOS Setup.
CMOS Setup programs vary at the discretion of the motherboard or system maker in terms of what they allow you to access and change. Some Setup programs provide essentially complete access to all settings, while others allow changing only some settings, and some provide no access to chipset options at all. Figure 1-1 shows the Main screen of a typical BIOS Setup program.
There are so many different chipsets, BIOS versions, and Setup utilities that covering BIOS and chipset options in detail would require writing a separate book. Fortunately, someone already has. Phil Croucher's superb The BIOS Companion (http://www.electrocution.com/computing/book_bios.asp) documents BIOS and chipset options in great detail, including some that even we don't understand. Every PC technician should own a copy of this book. Another very useful BIOS resource is Wim's BIOS Page (http://www.wimsbios.com/).
Here are some important technologies pertinent to current and next-generation PCs, with a brief explanation of each:
Advanced Configuration and Power Interface (ACPI) is the current standard for configuring system components under Plug and Play, monitoring the health of the system, and managing power usage. It replaces Intel's Dynamic Power Management Architecture (DPMA) and Advanced Power Management (APM). All current PCs and motherboards include at least partial ACPI support. ACPI is one of those technologies that isn't quite "here yet." When it works as it should, which is usually, it provides power management and other functions that many find useful. When it doesn't work properly, or when it conflicts with other technologies such as USB, it can cause very subtle, intermittent problems that can have you pulling out your hair. It can also cause very nonsubtle problems, including systems that go into a coma rather than suspending, screens that refuse to unblank even though the system itself is running, and so on. In general, when we encounter a system that hangs or otherwise behaves strangely, our first suspects are the power supply or the memory. But ACPI conflicts are also high on the list.
Accelerated Graphics Port (AGP) is a dedicated video port connector, introduced in 1997 by Intel and now nearly ubiquitous. In theory, AGP improves video performance by removing it from the 33 MHz PCI bus and by allowing a video adapter to use main system memory. In practice, all high-performance video cards (PCI or AGP) have a large amount of fast, local video memory. Video performance is constrained by the bandwidth between the graphics processor and video memory. These cards render images in local video memory rather than in main system memory, so the limited bandwidth of the PCI bus is not a bottleneck. AGP video cards do not fit PCI slots, or vice versa. AGP is fully supported under Linux, Windows 98, and Windows 2000 or later (but not under earlier Microsoft operating systems). Note that many motherboards now use AGP 2.0-compliant 1.5V AGP slots that do not support legacy 3.3V AGP cards, so if you're upgrading a motherboard you may also have to upgrade your video adapter.
Instantly Available PC (IAPC) is an Intel initiative that defines power-saving modes that retain the ability to respond to programmed or external triggers, such as LAN activity (Wake-on-LAN, WOL) or an inbound telephone call (Wake-on-Ring, WOR).
Plug and Play is a joint Intel/Microsoft specification that allows computers and peripherals to configure themselves by negotiating for available system resources. Full implementation of Plug and Play requires that the chipset, BIOS, operating system, and devices all be Plug and Play-compliant. Ideally, adding a device in a Plug and Play environment requires only physically installing the device. Plug and Play then configures everything automatically, loading the appropriate driver and assigning nonconflicting resources (IRQ, I/O port, DMA, and memory space) to the device. In practice, Plug and Play sometimes does not work properly. Plug and Play is partially supported by early releases of Windows 95, and fully supported by Windows 95 OSR2+, Windows 98, Windows 2000 or later, and Linux.
Ultra DMA/100 (UDMA/100) and Ultra DMA/133 (UDMA/133) are recent standards that support IDE hard disk data-transfer rates up to 133 MB/s, eight times those supported under earlier Programmed I/O (PIO) modes, four times that of UDMA/33, and twice that of UDMA/66. UDMA (Ultra Direct Memory Access) modes have low CPU utilization under heavy disk load (typically ~1.5%, versus 80% for PIO), and high-end UDMA drives approach low-end SCSI drives in raw performance. The fastest current ATA hard drives can barely saturate a UDMA/66 interface, so the advantage of UDMA/100 and UDMA/133 over earlier UDMA standards is small for now. But we expect new-generation hard drives to ship in 2003 and 2004 that will saturate UDMA/66, so UDMA/100 is worth having. UDMA/100 is supported by most current systems and motherboards, and by many current IDE drives. Many current motherboards do not support UDMA/133, which is not yet a formal standard, although some motherboards shipping during 2003 will incorporate it. UDMA can be used with all versions of Windows 95/98/Me, by Windows NT/2000/XP, and by Linux, although configuring it is non-trivial in some of those environments.
The ATA standard has used 28-bit addressing since its inception. When using standard 512-byte blocks, a 28-bit address limits maximum drive size to 128 GB. Until 2001, that was so large as to be no limit at all, but the exponential growth in hard drive sizes has now put them hard against that 128 GB limitation. In 2001, a consortium of storage industry companies, led by Maxtor, introduced The Big Drive Interface Initiative. This initiative replaces the old ATA interface with a new version that uses 48-bit addressing, which allows drive sizes up to 128 petabytes (PB), still using standard 512-byte sectors. The new interface is backward-compatible with older drives, and the newer drives are backward-compatible with older interfaces (although, of course, you are limited to using 128 GB of the drive's capacity if it is connected to an older interface). As this is written, only motherboards based on the most recent chipsets have embedded 48-bit ATA interfaces. Nearly all new motherboards produced in 2003 and 2004 will include 48-bit ATA interfaces, although the ATA interface is being phased out in favor of the new Serial ATA interface. For more information about The Big Drive Interface Initiative, see http://www.maxtor.com/en/technologies/big_drives/index.htm.
Universal Serial Bus (USB) is a general-purpose communications interface for connecting peripherals to PCs. USB 1.1 supports speeds up to 12 Mb/s. USB 2.0, finalized in February 2000, supports speeds 40 times faster?up to 480 Mb/s. USB 2.0-compliant interfaces and peripherals began shipping in late 2001, and are now commonplace. USB is royalty-free and strongly backed by Intel, which makes it likely to prevail over the competing, more expensive IEEE-1394 FireWire standard. USB will ultimately replace low-speed "legacy" serial, parallel, keyboard, mouse, and floppy interfaces, and may also become a standard or at least alternative interface for mid-speed devices such as video, network adapters, and optical drives. All recent systems and motherboards include at least USB 1.1 ports, and nearly all include USB 2.0 ports. USB 1.1 is fully supported by Linux, Windows 98, and Windows 2000/XP, but not by earlier versions of Windows. USB 2.0 is fully supported by Windows 2000/XP and recent Linux releases.
An exhaustive list of these and other PC technology standards is available in the PC 2001 document and on the Web at http://www.pcdesguide.org/pc2001/Resources.htm.
Nearly everything inside a PC is designed to be user-installable. The Audio Modem Riser (AMR), Communications and Networking Riser (CNR), and Advanced Communication Riser (ACR) slots are exceptions. Although their presence on many recent motherboards intrigues some upgraders, these slots were never intended as general-purpose expansion slots. All of them were designed to be used by OEM system builders, not by backyard mechanics. Here's what you need to know about AMR, CNR, and ACR slots:
Intel developed the AMR slot to provide an easy, standardized way to integrate modem and audio functions into finished systems at minimal cost, but OEM system builders ignored it in droves. Why? Mainly because the AMR slot took the place of a standard PCI slot, and most motherboard designers and system builders rightly preferred having an extra PCI slot to having an AMR slot of dubious utility. The AMR slot also had limited functionality and no support for Plug and Play. The result was that, although some motherboards included an AMR slot, very few AMR-compatible cards were ever developed and those that were achieved only limited distribution. We've seen exactly one AMR card.
Intel's answer to the problems of AMR was to redesign the AMR slot. The CNR slot, shown in Figure 1-2, can coexist with a standard PCI slot, allowing either a CNR card or a standard PCI card to use the slot position interchangeably. CNR also adds Plug and Play support and other features of interest to system designers. AMR and CNR are incompatible, at both the physical and electrical level. Although we have seen a few CNR cards, mostly modems and sound adapters, CNR cards are not much easier to find than AMR cards.
AMR and CNR are both Intel technologies. AMD, VIA and the rest of the everyone-who-is-not-Intel camp came up with an alternative called the ACR slot, which is found on some Intel-free motherboards. The ACR slot is physically a standard PCI slot connector, which you can recognize because it's turned 90 degrees to the other PCI connectors on the motherboard. In theory, the ACR slot offers several advantages over the AMR/CNR slot, including its use of standard connectors and its additional flexibility because of the greater number of available pins. In practice, we've never seen or even heard of a card designed to fit that slot, so it is effectively a wasted connector.
Intel warns that the AMR and CNR interfaces are not rigidly defined, so it is quite possible that any given AMR or CNR card simply will not work in a particular AMR or CNR slot. If your motherboard has an AMR, CNR, or ACR slot, we suggest you pretend it's not there.