|
Article:
Plug and Play Resource Allocation by: Stephen Bucaro Your computer has many devices connected to it. Your key board is a device. Your mouse is a device. Your modem is a device. Even a port, like a USB port, is a device. You can add a device to your computer by installing it into an expansion connector on the the motherboard of the computer. In order to operate, resources need to be allocated to the device. One of the most important resources a device needs is an Interrupt Request (IRQ) line. An IRQ signals the processor that the device needs attention. For example, each time you press a key on your keyboard, an IRQ is sent to let the processor know that the keyboard needs attention. A device also needs to be allocated a set of memory addresses where commands can be sent to it and it can send responses. Many devices need to be allocated an area of memory to store data and/or a Direct Memory Access (DMA) channel. A DMA channel allows a device to create a data stream directly between it and the computers memory without passing through the processor. One of the most important structures in a computer is the system bus located on the motherbord. The processor, chipset, memory, and expansion slot devices communicate over the bus. Early PCs used a bus called Industry Standard Architecture (ISA). When you installed an expansion card into the ISA bus, you had to set IRQs and other resources with jumpers and/or DIP switches on the card. ISA devices cannot share resources, each ISA device must have its own IRQ. - You can have more than one ISA device configured for the same IRQ, as long as only one of the device drivers is loaded at any one time; otherwise, you'll get an IRQ conflict. Since a computer has only a limited amount of resources, the number of devices that a computer could support is limited. One of the most limited resources is IRQ lines. A PC has only 16 IRQs. Common devices such as the keyboard, mouse, floppy drive, and hard drive use a standard set of resources. Standard IRQ aassignments IRQ DEVICE 0 System Timer 1 Keyboard 2 IRQ Controller 2 3 COM2 4 COM1 5 LPT2 6 Floppy Drive 7 LPT1 8 Real-Time Clock 9 ACPI 10 unallocated 11 IRQ Holder 12 Mouse 13 Math Coprocessor 14 Primary IDE 15 Secondary IDE In '1993
|