Skip to main content

I/O Resource Usage Reduction

Updated: July 6, 2004

File name: IO-rsc.doc
132 KB
Microsoft Word file
Get Office File Viewers

About This Download

This paper provides information about how Microsoft has implemented support to help reduce the dependence that PCI, PCI-X, and PCI Express devices have on the usage of input/output (I/O) space that is accessed by the I/O Base Address Registers (BARs).

It provides guidelines for device manufacturers, driver developers, firmware engineers, and system manufacturers to disable unused I/O BARs and to reduce or eliminate the amount of I/O space used in a PC.

The number of I/O resources used on a PC has continued to increase over the years. This I/O resource usage on PCI, PCI-X, and PCI Express buses are increasingly becoming a cause of resource contention problems. These problems are expected to become even worse for systems using PCI Express buses, compared to PCI and PCI-X, due to the number of virtual PCI-to-PCI bridges that are used in both client and server systems.

A need exists to transition hardware designs away from reliance on I/O resources. Instead, memory resources, which are much more plentiful, should be used.

This paper assumes that the reader has a good understanding of PCI, PCI-X, and PCI Express buses and knowledge of the I/O space usage scenarios for these buses. It also assumes the reader has kernel mode driver development knowledge.

This information applies for the following operating systems:
Microsoft Windows Server 2003 SP1
Microsoft Windows Vista

Included in this white paper:

  • Implementing I/O Reduction in Device Drivers

  • Turning Off I/O Space Decode on Devices

  • Turning Off I/O Windows in PCI-to-PCI Bridges

  • References

  • Glossary

Rate: