Each time the system starts, new plug-and-play devices are detected and added to
the Device Manager tree. Use the Control Panel Add/Remove Hardware Wizard to
install devices that are not automatically detected. The wizard allows the
addition of devices manually or it will scan for both legacy and plug-and-plan
devices.

Drivers

Windows comes with over 50 MB of drivers stored
in %SystemRoot%\Driver Cache\i386\driver.cab.

Legacy devices can have their power managed
and resources allocated but they cannot be automatically detected dynamically.
Some legacy drivers work but without power management nor plug-and-play support.

Troubleshooting

If a device fails to respond, start Device
Manager and check the device. Use the View menu to Show hidden devices
for legacy devices.

Resources

Device hardware and device driver software communicate with each other with
mechanisms that are referred to as resources in Device Manager. It is
important that devices do not conflict with the resource usage and the automatic
plug and play mechanism will avoid conflicts. Device resource assignments can be
view in Device Manager as shown below. The resources are

IRQ - Interrupt Requests

Input/Output IO Ports

Memory - Addresses reference memory on the
device

DMA Direct Memory Access by the device for
transfers to main memory without processor involvement

The different types of resources provide different ways to communicate and transfer data
between the hardware device and the software device driver. DMA is used to transfer blocks of data
as in the case of a disk controller transferring a disk read into working memory. This is in
contrast to IRQs which are only used to interrupt the processor. Devices may conflict over resource usage. If a
device is not working, try disabling the device that is causing the conflict and
then rescan for new devices. Work through each device, one at a time.

Driver Signing

Because drivers run in kernel mode, a bad driver
can cause your system to crash with a stop error, i.e. the blue screen of death.
Microsoft digitally signs drivers that have passed the WHQL Windows Hardware
Quality Lab test. Through System properties you can configure your system to
allow or disallow the installation of unsigned drivers as shown in the following
dialog. The last dialog shows how this can be done with a system policy.

Phantom

When a device is physically
removed from a machine, the driver becomes a phantom and is no longer
visible in Device Manager. Normally this is desirable, but can be a
problem if you wish to remove the device driver. If the phantom device driver is
not visible, the option to remove it is also not available. Making phantoms
visible is not obvious, but the steps are as follows.

Selecting the option Show hidden devices is
required but not sufficient.

In addition, you must have an environment variable
set. To see phantom devices you must
SET DEVMGR_SHOW_NONPRESENT_DEVICES=1.
Remember that environment variables can be set by using the System applet in the
Control Panel.

Keyboard
Exercise

Start Device Manager and try the different
views.

Use the Control Panel System icon to set the
environment variable DEVMGR_SHOW_NONPRESENT_DEVICES=1 and then start Device
Manager and check for hidden phatom devices. Remember that you need to Show
hidden devices.