|< Day Day Up >|| |
While customized Red Hat distributions are available for such diverse platforms as the Alpha, Itanium, and S/390 CPUs, the RHCE and RHCT exams are focused on computers built to the Intel-based 32-bit architecture (or similar 32-bit CPUs such as those built by AMD and National Semiconductor/Cyrix).
The architecture of a personal computer defines the components that it uses as well as the way that they are connected. In other words, the Intel-based architecture describes much more than just the CPU. It includes standards for other hardware such as the hard drive, the network card, the keyboard, the graphics adapter, and more. All software is written for a specific computer architecture, such as the Intel-based 32-bit architecture.
Even when a manufacturer creates a device for the Intel platform, it may not work with Linux. Therefore, it's important to know the basic architecture of an Intel-based computer.
|Exam Watch|| |
While it is important to know how Linux interacts with your hardware, the RHCE and RHCT exams are not hardware exams. As of this writing, while the RH133 and RH300 courses do address hardware issues, there are no hardware components listed in the Red Hat Exam Prep guide.
Three basic channels are used to communicate in an Intel architecture PC: interrupt request (IRQ) ports, input/output (I/O) addresses, and direct memory address (DMA) channels. An IRQ allows a component such as a keyboard or printer to request service from the CPU. An I/O address is a memory storage location for communication between the CPU and different parts of a computer. A DMA channel is used when a device such as a sound card has an independent processor and can bypass the CPU.
With the plug and play features built into RHEL 3, these channels are generally not a problem, but are included because they are on the prerequisite list for the RH300 course, as described in www.redhat.com/training/rhce/courses/rh300_prereq.html.
An IRQ is a signal that is sent by a peripheral device (such as a network card, graphics adapter, mouse, modem, or serial port) to the CPU to request processing time. Each device you attach to a computer may need its own IRQ port. Normally, each device needs a dedicated IRQ (except for USB and some PCI devices). The Intel architecture is currently limited to 16 IRQs (0-15), which is often not enough for modern PCs with network cards, modems, hard drives, sound cards, printers, and more.
If you run out of IRQs, some PCI devices can share IRQs. USB devices can share IRQs. This support is available in most PCs manufactured after the year 2000.
|On The Job|| |
If you're having a problem with your USB ports or PCI cards, check your BIOS first. Many BIOS menus include options that enable PCI sharing and support USB connections.
IRQs are a precious commodity on a PC. IRQ conflicts are common when you're connecting a lot of devices. If your printer doesn't work after you've connected a second network card, it can help to know the standard IRQ for printers. You can then assign a different IRQ to that network card. If you don't have any free IRQs to assign to that network card, you may be able to sacrifice a component that uses a standard IRQ. For example, if you always connect to a server remotely, that server PC may not need a keyboard. If you can boot a computer with a CD-ROM, you may not need a floppy drive.
Some IRQs are essential to the operation of a PC and just can't be changed. These are reserved by the motherboard to control devices such as the hard disk controller and the real-time clock. Do not use these interrupts for other devices or there will be conflicts! Other IRQs are normally assigned to common devices such as a floppy disk and a printer. In Linux, you can check /proc/interrupts to see which interrupts are being used and which are free for new devices.
Every computer device requires an input/output (I/O) address. It's a place where data can wait in line for service from your CPU. I/O addresses are listed in hexadecimal notation, where the numbers are 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, and f. Some typical I/O addresses include those for the basic serial ports, known in the Microsoft world as COM1, COM2, COM3, and COM4. These ports normally use the following I/O addresses: 03f8, 02f8, 03e8, and 02e8.
You can find a list of assigned I/O addresses in your /proc/ioports file.
A direct memory address (DMA) is normally used to transfer information directly between devices, bypassing the CPU. Many components don't need a CPU. For example, many sound cards include their own processor. This allows your PC to set up a DMA channel between a hard drive and a sound card to process and play any music files that you may have stored.
While DMA channels bypass the CPU, devices that use DMA are still configured with IRQ ports. There are eight standard DMA channels (0-7); DMA 4 is reserved and cannot be used by any device.
You can find a list of assigned DMA addresses in your /proc/dma file.
Red Hat nominally requires that you install Red Hat Enterprise Linux on a computer with at least 256MB of RAM. While I've installed RHEL 3 on computers with less RAM, 256MB is the minimum that is required if you've purchased the appropriate version of RHEL 3 and want contracted tech support from Red Hat.
The maximum amount of memory your system will use is the sum of all of the memory requirements of every program that you will ever run at once. That's hard to compute. Therefore, you should buy as much memory as you can afford. Extra RAM is usually cost-effective when compared to the time you would spend trying to tune an underpowered system. Limitations are few; on Red Hat Enterprise Linux 3 Advanced Server, you can use up to 64GB of RAM.
If you're installing RHEL 3 on a computer with between 16GB and 64GB of RAM, you'll need to use the 'hugemem' kernel, which I describe in a bit more detail in Chapter 5.
|On The Job|| |
If you're setting up Linux as a server, RAM requirements increase with the number of users who may need to log in simultaneously. The same may be true if you're running a large number of programs or have memory-intensive data such as that required by a database.
Before your computer can load Linux, the BIOS has to recognize the active primary partition on the hard drive. This partition should include the Linux boot files. The BIOS can then set up and initialize that hard drive, and then load Linux boot files from that active primary partition. You should know the following about hard drives and Linux:
The standard Intel architecture PC is configured to manage up to four IDE (Integrated Drive Electronics) hard drives.
Depending on the SCSI (Small Computer Systems Interface) hardware that you have, you can attach up to 31 different SCSI hard drives.
While you can use as many IDE or SCSI drives as your hardware can handle, you need to install the Linux boot files from the /boot directory on one of the first two hard drives. If Linux is installed on a later drive, you'll need a boot floppy.
Although you can install Linux on USB (Universal Serial Bus) or IEEE 1394 (Institute of Electrical and Electronics Engineers standard 1394, also known as FireWire or iLink) hard drives, as of this writing, you can't load Linux boot files directly from these drives. However, it is possible to set up a boot floppy to start Linux from these drives.
|< Day Day Up >|| |