The industry standard architecture (ISA) bus is the oldest in common use on x86 computers. The basic design of the ISA bus dates all the way back to the original IBM PC, although there °

have been some modifications to the design since that time. In the original PC, the ISA bus E

was an 8-bit design that ran at 4.77MHz—the same speed as the computer's CPU. Subsequent O

expansions allowed the bus to run at up to 8.33MHz, and boosted the width of the bus to 16 R

bits. These expansions were done in a backward-compatible way, so that older 8-bit ISA cards S

could fit into 16-bit ISA slots. Figure 2.4 shows ISA (and several other) slots in a modern motherboard. ISA slots are larger than other modern slot types, and their motherboard connectors are generally black in color, as compared to white for PCI or brown for AGP.

In theory, the ISA bus can transfer data at up to 8MB/s, which by today's standards is pretty slow—modern hard drives usually exceed this speed, for instance, as do many Ethernet adapters. The ISA bus is therefore of limited utility in today's systems, and, in fact, is on the way out. You can still buy motherboards that contain ISA slots, but the number of ISA slots on modern motherboards has been shrinking for several years, and many of the latest models have none.

Just as motherboards include fewer and fewer ISA slots, there's less and less need for them. There are still many ISA cards on the market, but there are almost always PCI alternatives. Sample applications for ISA cards include

• SCSI adapters Very low-end adapters, such as those that come with internal Iomega Zip drives, are generally ISA models. PCI SCSI host adapters are plentiful, however, and some models are quite inexpensive. I don't recommend buying a new ISA SCSI host adapter except under unusual circumstances.

• I/O cards Older 80486 and earlier computers used ISA cards for serial, parallel, floppy, and IDE ports. Such cards are still available today, and it's conceivable you'll want one if you want two parallel ports or more than two serial ports. PCI cards to fill these functions are also available. With the exception of modern EIDE hard disks, the ISA bus is adequate to handle the speed of these I/O devices, so if you do need an extra port and if you've got an ISA slot free on your motherboard, an ISA board is a good choice.

Part i

Figure 2.4

Each bus type uses unique size and positioning of connectors to prevent accidental use of one type of card in the wrong slot.

Figure 2.4

Each bus type uses unique size and positioning of connectors to prevent accidental use of one type of card in the wrong slot.

• Ethernet adapters If you need an Ethernet adapter to run at 10Mbps or slower, the ISA bus is adequate to the task, although an ISA card is likely to consume more CPU time than a PCI card. 100Mbps networking benefits from the PCI bus, so I recommend buying most new Ethernet adapters in PCI form.

• Sound cards Basic audio functionality doesn't require massive bandwidth, and so the ISA bus is adequate for this task. In fact, until 1998, PCI sound cards were poorly supported in Linux, and so ISA cards remained the best choice for sound. Today, however, Linux includes good support for a number of PCI sound cards, so you can use either bus type. The most advanced sound cards require additional bandwidth for advanced audio

Chapter 2

functionality, and so can benefit from the PCI bus. These functions are generally not implemented in Linux.

• Specialized applications Some rare cards, such as certain scientific data acquisition cards, remain available only in ISA form. If you need to use such a card, you may be tied to the ISA bus. Given the decreasing prevalence of ISA in the marketplace, you would do well to shop for an alternative card if you're building a new system. This is especially true if the card is expensive and you intend to use it for several years. At some point in the future, ISA motherboards may become unavailable, so repairing a computer with a damaged motherboard may cause you serious problems if that computer contains 2 a critical and expensive ISA component. -

The computer industry would like to see the ISA bus vanish because supporting it requires cir- o cuitry on the motherboard that, if eliminated, would simplify motherboard designs. ISA cards ER

are also more difficult to configure than are more modern cards. Older ISA cards typically g

required jumpers to configure properly. Newer models are generally Plug and Play (PnP), RD

meaning that the motherboard's BIOS or utilities in the OS do the configuration.

In Linux through the 2.2.x kernel series, PnP configuration is done through the isapnp package, which comes with most Linux distributions. To configure your cards, follow these steps:

1. Run pnpdump, which scans the system for PnP devices and returns information on those devices. It's best if you redirect the output of pnpdump to an appropriate text file, as in pnpdump > pnpinfo.txt.

2. Edit the text file produced in step 1. The file contains a number of multiple-choice configurations for settings, such as interrupt request (IRQ) and direct memory access (DMA). You must uncomment one option for each setting by removing the pound sign (#) at the start of each line. For instance, you might see a line that reads # (INT 0 (IRQ 5 (MODE +E))). Remove the leading # to activate the board using IRQ 5. For each device you want to use, you must also uncomment a line that reads # (ACT Y); this is the activation line for that board. Some boards include more than one device. For instance, a sound board might include separate configurations for digital audio, wavetable sound, and a joystick port.

3. Move the text file you've edited to a convenient location. Traditionally, /etc/isapnp.conf is used. Be sure not to overwrite an existing file, or back up the existing file, in case it already contains configuration information for some other device.

4. Run the isapnp utility, and tell it to use the configuration file. If isapnp is in the /sbin directory, you could do this by typing /sbin/isapnp/etc/isapnp.conf. Normally, you'll configure your system to perform this step whenever it books, by placing the command in your /etc/rc.d/rc.local file, or in some other initialization script, depending upon your distribution. Some distributions include a command that performs this step automatically.

Part i

If your configuration changes don't cause any conflicts, you'll then be able to load appropriate drivers and use the ISA card. You do, however, have to load driver modules or load them into the Linux kernel; PnP configuration isn't sufficient to use the hardware under Linux.

The format of the isapnp.conf file is a bit intimidating to somebody who's never edited the file before, largely because it includes a large number of options, the vast majority of them commented out. Scan through the file once or twice, paying careful attention to the comments that begin Card n (where n is the card number) and to the NAME options, which identify the device. Once you've browsed through the file once or twice, you should have some idea of what the options are, and you can begin setting them. If your computer dual-boots between Linux and another OS such as Windows, you may be able to determine what resources to assign to the card by looking up the resources used in the other OS.

The Linux 2.4 kernel will include PnP support directly, which will change the way ISA PnP devices are configured in Linux. With 2.4.x kernels, there will be no need for an isapnp.conf file; drivers for ISA devices will auto-detect and configure PnP devices. In the event of conflicts, you may need to adjust settings in the /etc/conf.modules file or by passing parameters to the Linux kernel, as much as is possible today with PCI cards.

Was this article helpful?

0 0
The Ultimate Computer Repair Guide

The Ultimate Computer Repair Guide

Read how to maintain and repair any desktop and laptop computer. This Ebook has articles with photos and videos that show detailed step by step pc repair and maintenance procedures. There are many links to online videos that explain how you can build, maintain, speed up, clean, and repair your computer yourself. Put the money that you were going to pay the PC Tech in your own pocket.

Get My Free Ebook

Post a comment