PnP Concepts

When you add a hardware card to your personal computer (PC), you must reserve some system resources — such as input/output address spaces, interrupts, Direct Memory Access channels or memory spaces

for the card. You must also make sure that there is no hardware conflict, that is, the resources reserved by one card are not used by another card in the same system.

Before Plug and Play (PnP) was introduced, you can reserve system resources only by manually changing the settings of some dip switches or jumpers on a legacy (non-PnP) card. This can be quite difficult since you have to understand how the hardware settings correspond to the system resources that your card requires. It can also be very tedious since you may need to change the dip switch or jumper settings several times before your card can be configured without any hardware conflict.

With the emergence of Plug and Play (PnP), a revolutionary design philosophy and a new PC architecture specification finalized recently, the PC, hardware cards, drivers and the operating system can now work together without such “user intervention”.

You no longer need to change any hardware settings on your card before it can work properly in a PC. Instead, a PnP BIOS or software would find out the types of resources each card needs and allocate the resources accordingly.

Generally, a PnP card requires one of the following to work:PnP System BIOSPnP Operating SystemPnP Configuration Drivers and Utilities

The PnP BIOS specification went through several revisions. The version 1.0a specification was finalized in May 1994, with further clarifications documented in October 1994. As a result, older PnP systems shipped are not fully compliant with this specification. So, there are some compatibility problems. For more details, please read the section “PnP in DOS/Windows 3.1x” on page 14.

12