Learn about the technologies behind the Internet with The TCP/IP Guide!|
NOTE: Using robot software to mass-download the site degrades the server and is prohibited. See here for more.
Find The PC Guide helpful? Please consider a donation to The PC Guide Tip Jar. Visa/MC/Paypal accepted.
|View over 750 of my fine art photos any time for free at DesktopScenes.com!|
I/O Addresses, Multiple Devices and Conflicts
I/O addresses, like other system resources, are normally used only by single devices. Having multiple devices try to use the same address would cause information to get mixed up and overwritten, sort of like having two people share a mailbox (where none of the envelopes had anything printed on them. :^) )
There are some unusual exceptions to this however, mostly for historical reasons. They are discussed in the next section where individual addresses are reviewed. One of the problems with I/O addresses and conflicts is simply keeping track of them all. They can be quite confusing to keep straight, particularly since different devices use different sized address spaces.
I/O addresses suffer from the same problem that IRQs and DMA channels do: many conflicts occur not because there aren't enough I/O addresses to go around, but because they aren't allocated or spaced out in an organized way. Too many devices attempt to use the same addresses, or have too few different configuration options to allow them all to find a place to use without getting in each others' way. This is largely due to historical reasons.
One additional note about parallel ports. The I/O addresses used for the different parallel ports (LPT1, LPT2, LPT3) are not universal. Originally IBM defined different defaults for monochrome-based PCs and for color PCs. Of course, all new systems have been color for many years, but even some new systems still default LPT1 to 3BCh. Here is how the two different labeling schemes typically work. See the section on logical devices for more details: