»
Linux Hardware

Hubs and switches perform similar functions They both sit in the center of a star topology network and thereby link several computers together. Unless the device is marked as a hub or switch, you can't normally tell them apart from their appearance. Both are fairly nondescript boxes that contain several RJ-45 jacks and some LEDs. Figure 17.8 shows a typical hub. The smallest hubs and switches support about four computers, but higher-end models support many more. Hubs and switches differ...

Most motherboard designs place the CPU, RAM, bus slots, and other components all on one plane, which lies horizontally in a desktop case or vertically in a tower case. Because PCI and ISA cards require a certain amount of height, this design imposes a minimum height requirement on the resulting computer system. Particularly in desktop cases, however, a low-profile design has a certain appeal. A low-profile system is a desktop design that's shorter than normal for PCs. The current low-profile...

Recording music from a vinyl record poses certain unique challenges Inputs Unlike most audio components, a phonograph's outputs don't match the electrical characteristics required by a sound card's line input jack. You therefore must use an appropriate amplifier to handle the task. If you've already connected your computer to your stereo, this isn't a problem but if you want to connect the turntable directly to the computer, it is. In this case, you can buy an inexpensive amplifier to serve as...

Determining a Device's Chipset 608 Locating Drivers in the Linux Kernel 614 Tracking Down Experimental and Third-Party Drivers 617 Contributing to Driver Development 620 Locating device drivers for Linux can be a challenging task. Most hardware manufacturers don't advertise Linux support for their hardware, in part because the manufacturers themselves don't support Linux. Lack of manufacturer support for Linux doesn't mean that the hardware doesn't work in Linux, however. It does usually mean...

Three types of on off switch are common on x86 PCs Integrated into the power supply These switches, common on desktop AT-style cases, are part of the power supply. They are accessible from the outside of the case in desktop systems, on the right side of the case near the rear. Some ATX power supplies also include on off switches accessible from the back of the computer, but such switches are auxiliary to the main ATX power switch. Remote switch on power supply Most AT-style tower systems...

The Quarter-Inch Cartridge (QIC) tape format has been around for years. In fact, QIC cartridges come in two cartridge sizes, each of which hosts a large number of encoding variants. The two cartridge sizes are 4x5x0.625-inch and 3.25x2.5x0.6-inch. QIC tape model numbers begin in either DC or MC. The DC tapes use the larger form factor, whereas the MC tapes use the smaller one. The first QIC tape standard, QIC-02, used a proprietary interface card, for which Linux drivers exist in the standard...

DSL modems come in two basic varieties internal and external. For the most part, internal DSL modems are useless under Linux, because they lack drivers. I know of only one internal modem for which DSL drivers currently exist, the Diamond 1MM. A link to the driver for this board exists on Other internal DSL modems will no doubt be supported in the future, however. External DSL modems come in a variety of shapes and sizes. In general, they're somewhat larger than conventional telephone modems,...

VIA Technologies (http www.via.com.tw) is currently a very popular supplier of chipsets for x86 computers (see Table 2.4). VIA's product line is also one of the most diverse, including chipsets not just for Pentium and Pentium-II systems, but for AMD's Athlon. VIA chipsets occasionally appear under other names. For instance, AMD briefly sold the VIA VP-2 under the name AMD 640, and Soyo motherboards contain VIA chipsets sold under the ETEQ name. Among Pentium-class CPUs, the VIA Apollo MVP3...

When Apple introduced its expensive LaserWriter printer in the mid-1980s, it needed some way to network the printer so that small offices could justify the printer's high price. The result was a protocol called AppleTalk. That name originally applied to both the hardware and the software, but eventually the hardware acquired its own name LocalTalk. Nonetheless, there are still occasional references to the hardware by the name AppleTalk. By today's standards, LocalTalk is quite primitive and...

The final hard disk performance factor is the size of the built-in disk cache. As described in Chapter 3 (in the section Cache Memory), a cache is a type of memory that's smaller but faster than another type of storage. The cache holds frequently-accessed data so that the computer can access the data from the cache rather than pull it from the slower storage medium. In the case of hard disks, there are two common types of cache and one less common type Disk cache on the hard drive All modern...

In order to use the non-rewinding tape device most effectively, you must have some means of controlling the tape a way to seek past one backup set to access or create another, rewind the tape, and so on. This functionality is provided by the mt command in Linux. The basic syntax of this command is mt -f device operation count arguments where device is the device file, such as dev nst0. operation is the operation to be performed, as detailed shortly. count is an optional count of how many times...

As described in Chapter 3, Memory, there are several varieties of memory available for motherboards, such as fast page mode dynamic RAM (FPM DRAM), extended data out DRAM (EDO DRAM), and synchronous DRAM (SDRAM). Similarly, there are several varieties of RAM that have been used over the years by video cards. The subtly different timing requirements of video hardware have led to a somewhat different stable of RAM types for video cards, however. There is some overlap between motherboard RAM types...

Linux allows you to use a mouse to cut and paste text when running in text mode. To do so, Linux uses a program called gpm. This program must be run as root, and is generally run from a startup script such as etc rc.d init.d gpm. If necessary, you can edit this startup file to modify gpm's behavior. If it doesn't start automatically on your system, you can add an entry to a startup file such as etc rc.d rc.local. -t type Specifies the mouse type. type can be any of several values, such as ps2...

Unlike most computer interfaces, SCSI supports both internal and external devices. That is, you can attach a SCSI device either inside the computer's main case or outside that case. (When mounted outside, the device normally resides in its own case.) To support this operation, most SCSI host adapters have at least two connectors, one of which is accessible from outside the computer (see Figure 9.1). Some host adapters have three or even four connectors in order to support both inside and...

At its core, SCSI-2 is largely a clarification and extension of SCSI-1 protocols. The original SCSI-1 addressed the needs of hard disks but little else. Manufacturers found the SCSI bus appealing for CD-ROM drives, tape backup drives, and other devices, however, and so the manufacturers improvised, using proprietary extensions to the SCSI-1 protocol. Many of these were adopted for the SCSI-2 standard, and future devices followed the new standard. With the introduction of SCSI-2 came several...

The most important Linux utility for handling advanced hard disk features is hdparm. This utility lets you set an assortment of options relating to hard disk performance, as well as run tests to find out how your hard disk is performing. You can learn more about hdparm by typing man hdparm. I present some highlights here. You must be running as root to use most of hdparm's features. You can use the -t option to hdparm to test the read speed of a hard disk. For instance hdparm -t dev sda This...

The two commercial X servers for Linux are Accelerated-X From Xi Graphics (http www.xig.com), this server is regarded as one of the fastest X servers available for many video cards. Xi Graphics adds support for new video cards somewhat faster than does the XFree86 team. A version of Accelerated-X that supports the OpenGL 3D API is also available. One unusual characteristic of Accelerated-X is that it allows programs to run at bit depths that don't match the screen's actual setting. For...

It's vitally important that you thoroughly research any scanner model you're considering before making a purchase. There are several potential sources of information on specific scanners, including The SANE home page The SANE home page, http www.mostang.com sane , includes a listing of supported devices. Some scanners have drivers that aren't officially part of the SANE project, though, so this list is incomplete. If possible, stick with a scanner that's listed directly, because it might be...

Until PC100 and PC133 SDRAM came along, memory speed was measured in nanoseconds (ns). Indeed, even PC100 and PC133 RAM speed is measured in ns it's just that the names PC100 and PC133 are designed to make it easier to match the memory type to the motherboard. If you're using a motherboard that supports SDRAM but that doesn't specify PC100 or PC133 memory, either type is probably fine, assuming you're not expanding existing EDO DRAM. Alternatively, you can purchase SDRAM that's slower than...

Determining whether the hardware is of high quality is something that's very difficult to do. If you're considering a computer from a major manufacturer, you might be able to find some information from customer satisfaction surveys conducted by computer or consumer magazines. You might also be able to find reports from individuals by searching Deja News (http www.deja.com usenet ). Beyond checking for previous users' experiences in these ways, you can ask the vendor for certain information,...

There are two main packages available for performing software wavetable operations in Linux TiMidity and SoftOSS. The former is a user-space program, which means you're restricted to playing MIDI files from TiMidity itself. You can't normally use TiMidity to handle MIDI music from games or MIDI editors. SoftOSS, on the other hand, is a kernel module that replaces access to your sound card's normal MIDI devices with a software wavetable device. Both TiMidity and SoftOSS rely upon patch sets for...

One of the most important distinctions to understand between various microphone types is that between unidirectional and omnidirectional microphones. A unidirectional microphone picks up sounds from a narrow range of directions. Such microphones are very good for use in a noisy environment, because they won't pick up much of the noise from that environment only your own voice. Omnidirectional microphones, on the other hand, pick up sound from a wide variety of directions. You might want to use...

Both headphones and speakers can be described in terms of their frequency response characteristics. Suppose you've produced or obtained a precise recording of a series of tones, covering the entire range of normal adult human hearing (20Hz-20,000Hz). If you play this series of recordings over an average speaker, chances are you'll perceive differences in the loudness of the different tones, although they were recorded at the same level. Switch speakers, and the pattern of differences can...

Each of the major motherboard layouts described in Chapter 2 requires a different case type, although a few cases are designed to support more than one motherboard form factor. The form factors you're most likely to encounter include AT and Baby AT The AT and Baby AT form factors were the most popular in desktop and tower designs through 1995. The AT motherboard form factor is larger than the Baby AT form factor, and requires a larger case. Cases capable of holding full AT motherboards tend to...

SCSI has always been the choice for high-speed hard disk operations. Characteristics of SCSI hard disks are the complement of EIDE characteristics High cost SCSI drives are typically more expensive than EIDE drives of the same capacity. Some of this is due to the SCSI interface, some is due to economic factors, and some of it relates to drive performance. High performance SCSI hard disks have larger caches, faster rotation rates, and lower seek times, on average than EIDE drives of the same...

In the 80486 era and before, serial and parallel ports usually came on ISA cards. A typical card included two serial ports, one parallel port, and a joystick port. Some also included an IDE port and a floppy port. Today, cards that carry one or two serial ports, one or two parallel ports, or a combination of these are readily available. There are also USB port cards that enable you to add USB support to computers that lack this feature. If you have an old computer gathering dust, you might want...

Computer power supplies aren't infinite founts of power for a computer. It's possible to overload a power supply, which can lead to erratic behavior. Each power supply also has a limited number of internal power connectors, and, if you run out of these connectors, it's necessary to add more by using special power splitter cables. To understand power supply capacity, it's important to start with a fundamental relationship between three measures related to electricity volts (v), watts (W), and...

Parallel-port SCSI A few parallel-to-SCSI converters are available. These enable you to use external SCSI devices on computers that don't have their own SCSI host adapters. Unfortunately, the speed of these interfaces is quite limited, so they're not useful for anything but the slowest SCSI devices. Linux support is also limited one of the few such devices supported by Linux is the one built into parallel-port Iomega zip drives. USB SCSI As with parallel-port SCSI host adapters, some adapters...

AT and Baby AT motherboards typically came with a large 5-pin DIN connector for the keyboard. More recent motherboards use a smaller mini-DIN connector for this purpose. The two types of connectors are electrically compatible, so if you have one keyboard type and the wrong connector on the motherboard, you can obtain an inexpensive adapter. Figure 2.12 &gt depicts an older keyboard connector and an adapter with the newer mini-DIN end visible. S Keyboard handling is quite standardized, so you...

CRT displays are composed of large numbers of phosphor dots, as described earlier. These phosphors are smaller than the pixels that comprise the video display on a logical level, and just how much smaller they are is one of the important determinants of display quality. The size and spacing of phosphor dots is measured in millimeters (mm), and is referred to as dot pitch. This measure refers to the distance between the centers of phosphor dots. The smaller the dot pitch, the better. Typical...

Next to the floppy port on most modern motherboards is a pair of EIDE ports (refer to Figure 2.13). Of the ports that are standard on modern motherboards, the EIDE ports are the most variable in design, and they're the only ports that benefit from specialized Linux drivers. These ports do work with a uniform EIDE driver, but this driver was written with the IDE ports of the early 1990s in mind. The standard Linux IDE driver doesn't support direct memory access (DMA) or high-speed operation....

RDRAM is the latest form of memory to make its way onto x86 motherboards. As described earlier in this chapter, RDRAM is used exclusively on RIMMs these memory modules were designed specifically for RDRAM. RDRAM is unusual in that it incorporates its own bus. Previous memory technologies linked the RAM chips more-or-less directly to the memory bus controlled by the motherboard's chipset, which in turn linked fairly seamlessly to the CPU's memory bus. RDRAM adds another bus to the equation. This...

You access the vast majority of Linux hardware through device files special files that are typically located in the dev directory. In most cases, though, you don't access the device file for an optical drive directly instead, you pass the name of the device file to a program such as mount, which uses it to make the device accessible in some way. Locating the Appropriate Device File If you installed Linux from an optical drive, chances are it created a link to the appropriate device file under...

The number of video card chipsets produced over the years is staggering. I cannot cover all the chipset manufacturers, much less all the products from each manufacturer. I can, however, provide an overview of the products that have been popular historically and that are commonly used today. The manufacturers of these chipsets include 3dfx 3dfx (http www.3dfx.com) has gained popularity of late with its Voodoo, Velocity, and Banshee series of video card chipsets. The company makes XFree86 servers...

AMD's Web site (http www.amd.com) lists the K6-2, K6-III, and Athlon as being current CPUs in early 2000. At this time, the K6-2 is available at higher CPU clock speeds than is the K6-III, but the K6-III outperforms the K6-2 when clocked at the same speed. The K6-III therefore produces better overall performance. Both the K6-2 and the K6-III work on Socket 7 motherboards, and these CPUs produce the fastest available performance on such hardware. In fact, in early 2000, the best K6-III systems...

One method keyboards can use for registering key presses is to place an independent mechanical switch under every key. Most such switches work much like the switches on other electrical push buttons with which you're familiar, such as the buttons used to power on many computers or stereo components. A piece of metal in the movable portion of the switch completes an electrical circuit when the switch is depressed. The keyboard's circuitry detects this closed circuit and translates it into an...

Until recently, each generation of CPU (80386, 80486, and so on) has used a unique CPU motherboard interface method. These have generally come in the form of sockets, in which the CPU has a number of pins on its bottom that fit into a square connector on the O motherboard (see Figure 2.2). More recent CPUs, including most Pentium-II, Pentium-III, and H Athlon CPUs, use a slotted design more like that of plug-in cards. (Most Celeron CPUs con- B tinue to use a socketed design, but some varieties...

Because most people run Linux on x86 hardware, that's what I focus on in this book. That's not to say that this book is useless to people who use Linux on non-x86 hardware, however much of the information applies across architectures. x86 hardware is, however, both more popular and more varied than that of most other CPU architectures. Because of the importance of the x86 in the Linux community, I spend some time here to describe the development of the x86 CPU over the years. When deciding on...

As with many other devices, the SCSI interface is the interface of choice for tape backup drives. There are several reasons for this, including SCSI allows both internal and external devices, so it's possible to use one external SCSI tape backup device to back up several computers, even without using network backup A SCSI bus can support up to 7 or 15 devices, depending upon the SCSI variant, as compared to only 2 devices for EIDE. This advantage is reduced, however, when mixing Ultra2 or...

Beginning in 1996, ATX motherboards became available. Intel developed the ATX specification, and has revised it several times. The broad outlines remain constant across ATX revisions, although some details have changed. ATX was designed to address several deficiencies in the AT and Baby AT form factors, such as Altered width depth ratio Baby AT designs are deeper than they are wide, forcing placement of CPUs or other components in line with the slots. This placement can limit options for the...

The earliest CPU that deserves to be considered part of the x86 family is the 8086, although the 8086 was itself derived from still earlier designs. A low-cost variant of the 8086, the 8088, was used in the first IBM PCs. The next Intel CPU development used in PCs was the 80286, which was used in the IBM PC-AT, among other computers. Aside from some experimental and limited ports, Linux can't run on computers of this vintage the CPUs lack important features that Linux requires, such as 32-bit...

A conventional mouse, shown in Figure 15.7, is a device that's sized to fit in the palm of the hand. On its bottom is some sort of tracking mechanism usually a ball that rolls against sensors that detect this motion, but sometimes an all-optical sensor grid. (I describe these technologies later in this chapter, in Mouse Technologies.) On the top and sometimes on the sides of modern mice lie one or more buttons. Macintosh computers today ship with 1-button mice, but x86 PCs usually ship with 2-...

Through the mid- and late-1990s, dozens of audio chipsets emerged on ISA sound cards. Most of these chipsets are used by several sound card manufacturers, although some are used by just one or two. Most have support in Linux. Some of the more popular chipset manufacturers and models include AMD AMD (http www.amd.com) produced one major ISA sound chipset, the Interwave. This product included a Gravis UltraSound compatibility mode and, in fact, was used on the UltraSound PnP model, among others....

A more sophisticated method of simulating musical instruments is known as wavetable synthesis. Rather than rely upon the combination of several pure tones to simulate an instrument's sound, wavetable synthesis uses a recording of the instrument in question. The manufacturer digitally records an instrument playing a single note. A tiny snippet of that recording is then isolated, and circuitry in the sound card can play it back in a loop to reproduce the continuous note. Furthermore, the recorded...

The easiest way to load your Ethernet driver in most cases is to build it directly into the kernel. When you do this, the kernel normally detects the hardware at boot time. You can check to see if this has happened by issuing the command dmesg grep eth shortly after booting the computer. If your kernel has detected your hardware, you' ll see something like this in response eth0 Macronix 98715 PMAC rev 32 at 0xda00, 00 80 C6 F9 3B BA, IRQ 9. ethl VIA VT3043 Rhine at 0xdc00, 00 80 c8 fa 3b 0a,...

I've already mentioned some of the text-based tools you can use to create a CD. Those that I've mentioned, and some that I haven't, include mkisofs This tool, which comes with most Linux distributions, takes a set of files that you specify and creates from them a CD image file, which is a file that contains the data that will ultimately go onto the CD. The image file includes an ISO-9660 filesystem (along with Rock Ridge and Joliet, if you so specify) and all the files that you indicate. You...

A SANE scanner back end is a SANE driver for a particular scanner. You select the back end in different ways in different programs. To find out what back ends you have available on your system, type scanimage --list-devices. The result is a list of the SANE back ends, as in device 'mustek dev scanner' is a Mustek MFC-06000CZ flatbed scanner device 'pnm 0' is a Noname PNM file reader virtual device device 'pnm 1' is a Noname PNM file reader virtual device This output reveals that there are three...

Ethernet comes in several different varieties, which are summarized in Table 17.1. Each type of Ethernet has its advantages, but for most new networks, the extra speed afforded by 100BaseT makes it the variety of choice. I describe the different types of cabling later in this chapter, in Cabling Choices. The 2 and 5 in 10Base2 and 10Base5 refer to their respective maximum cable lengths in hundreds of meters. The T in 10BaseT and 100BaseT refers to twisted-pair cable. The 10 and 100 in the...

Since the appearance of the original IBM PC, keyboards have used 5-pin DIN connectors. On AT-style motherboards (described in Chapter 2, Motherboards), the motherboard contains a connector for the 5-pin DIN keyboard plug. Some designs, however, have used a smaller mini-DIN connector, and this design has become standard with ATX and related motherboards. Because it was used on the IBM PS 2 computer, the mini-DIN design is sometimes referred to as a PS 2 keyboard port. Figure 15.2 shows both an...

One meta-decision in your choice of CPU architecture is whether to use a reduced instruction set computer (RISC) CPU or a complex instruction set computer (CISC) CPU. Historically, CPUs developed prior to the early 1990s grew in complexity with each new generation. CPU designers added instructions to perform more and more complex functions with single instruc-tions hence they were CISC CPUs. This trend was great for anybody writing software in assembly language (a set of mnemonics that...

One of the primary characteristics of any desktop computer case is the number of bays it contains for drives of various types hard drives, floppy drives, CD-ROM drives, tape backup drives, zip drives, and so on. For most desktop cases, each bay can be classified into one of four categories Hidden bays are recessed into the computer's case so that the devices they hold aren't exposed to the outside. Hidden bays are therefore useful mainly for hard disks. Hidden 5.25-inch bays are rare in today's...

Linux includes support for a number of more exotic network protocols, including Cable and DSL modems Some cable and telephone companies use internal modems to link subscribers' computers to their cable and DSL networks. Linux support for these products is rare, but a handful are supported. I discuss this matter in more detail in Chapter 18. FDDI Fiber Distributed Data Interface (FDDI) is an alternative to Ethernet for highspeed local networks. It's rarely used, but Linux does support a few FDDI...

Modern CPUs run at two separate speeds the core speed and the bus speed. The core speed is the number you probably associate most strongly with the CPU, and is the speed at which most of the CPU's internal circuitry runs. A Pentium-III 700 runs at a core speed of 700MHz. The core of the CPU can run at a higher speed than the motherboard can. The bus speed is the speed of the interface between the CPU and the motherboard. An 80486 motherboard typically ran at a bus speed of only 33MHz, although...

Through 1999, Intel's competitors continued to use the Socket 7 design for CPU interface used in most Pentium CPUs. This meant that most competing CPUs used L2 caches on the motherboard rather than the CPU (the exception being AMD's K6-III), and these CPUs were limited to the 32-bit, 4GB memory address space of Pentiums. In terms of speed, though, some of these CPUs compete with CPUs through mid-range Pentium-IIIs. CPUs in this range include AMD K6 The K6 was based largely on designs developed...

The latest memory module format is the RIMM. Previous memory module types have been E largely independent of the design of the memory chips that populate the modules. RIMMs, O however, were designed specifically for one type of memory, RDRAM, which will be dis- Y RIMM modules look very much like DIMMs, although they have 184 pins and differ in details such as the placement of notches among the connecting pins. Odd as it might sound, RIMMs transfer data at a width of only 16 bits. The RDRAM...

Most motherboards include one parallel and two serial ports. Typically, you use the parallel port to attach a printer, and possibly also a Web camera, external zip drive, or scanner. The serial ports can be used for a mouse, an external modem, a digital camera, a personal digital assistant (PDA), or other devices. A few motherboards, particularly those on computers from large manufacturers such as Compaq, contain only one serial port. Modern motherboards invariably support standardized modern...

The peripheral component interconnect (PCI) bus was developed by the PCI Special Interest Group (spearheaded by Intel) to be a cleaner and faster bus than preceding x86 bus types. Where the VL-Bus was a more-or-less direct tap into the CPU's data lines, the PCI bus inserts an electronic bridge between the CPU and the bus. This design decouples the bus from the CPU, allowing it to be used with a wider array of CPUs. This design is known as a mezzanine bus. In the x86 world, the PCI bus has been...

The basic technology behind all modern hard disks is quite similar, and, in fact, a few models are available in both EIDE and SCSI variants. This practice used to be much more common than it is today. Nonetheless, EIDE disks have certain unique characteristics, or at least tendencies Low cost On average, an EIDE hard disk of a given capacity costs less than a SCSI hard disk of the same capacity. Low performance The reason for the low cost of EIDE hard disks lies, at least in part, in the fact...

The principal method of setting the mapping from key codes to terminal codes in text mode is to use the program loadkeys. This program loads the specified keyboard map file and instructs the kernel terminal driver to use it for keyboard input. Linux distributions normally include a call to loadkeys in a configuration file. For instance, in SuSE 6.3, the file etc rc.d init.d kbd contains this call. In Caldera OpenLinux 2.3, the equivalent call is made in etc rc.d init.d keytable. Other...