Interrupt, without apology!
by Alan Zisman
(c) 1998. First
published in Canadian Computer Wholesaler, February 1998
Oh where, oh where have your Interrupts gone?
I don?t mean the kids who butt in whenever you try to
have a conversation
with your spouse. Instead, take a look at the interrupts in your
computer
system.
Sort of like your kids (or mine), whenever any of the
devices attached
to the computer need to get some attention from the CPU, they have to
interrupt
it. Unlike our kids, they can only do that if they have an Interrupt
Request
(IRQ) number? sort of like a ticket giving them the ability to butt in
on the CPU?s time.
Part of the appeal of the PC-style computer is its
upgradeablity?sealed
box, non-upgradeable versions have been released from time to time,
(and
are under discussion yet again as one way to lower corporate
computing?s
Total Cost of Operation (TCO)), but have never attained mass market
acceptance.
But in order to be able to easily add hardware to a
PC, there need to
be free IRQs? otherwise, the new devices can yell for attention all
they
want, but the CPU will never hear them. In other words, they won?t
work.
The original IBM PC and XT offered a mere 8
interrupts, most of which
were already spoken for, by the keyboard, the floppy disk drive, and so
forth. In 1984, IBM doubled the number to 16 with its AT model. And
that?s
were it?s stayed ever since?14 years, during which processor speeds
have
gone from 6 MHz to 333 MHz, and hard drives have grown from the AT?s
original
10 Megs to nearly 10 Gigs (a thousand-fold increase).
It used to be that a typical new PC had somewhere
between 3 to 5 free
interrupts, but those numbers have been slowly whittled down as systems
come more fully equipped. You may be shipping (or buying) systems with
empty slots (particularly as more and more functions come integrated
right
onto the motherboards), but unless you have free IRQs, these slots are
unusable. And some of today?s fancy adapters require two interrupts
each!
Let?s take a look at one of my PCs? a relatively
modest 1996-model Pentium
166. Here?s what?s reported by the Win95 Device Manager, sorted by IRQ
number:
IRQ 0 System Timer
IRQ 1 Keyboard
IRQ 2 Programmable Interrupt Controller/Floppy disk controller
IRQ 3 Com 2
IRQ 4 Com 1
IRQ 5 Sound card
IRQ 7 LPT 1
IRQ 8 Real Time Clock
IRQ 11 network card/PCI steering
IRQ 13 Numeric Processor
IRQ 14 Hard disk controller 1
IRQ 15 Hard disk controller 2
So I?ve (maybe) got a few IRQs (6, 9 ,10, and 12)
free. Microsoft?s
MSD DOS utility claims the floppy disk controller is really using IRQ
6.
IRQ 9 is iffy, being the so-called bridge between the XT?s original
eight
and the AT additions. A PS/2 mouse port would have taken IRQ 12. Add a
SCSI card, and I?d lose another. Add that second network card I?m
thinking
of, and suddenly, we?re about full up.
Ironically, while the Macintosh started life as the
proverbial sealed
box, lacking expansion ports, the adoption of built-in SCSI in 1986?s
Mac-Plus
has proven a wise choice. SCSI allows relatively easy addition of up to
six devices, and when implemented on a PC, these devices all share a
single
interrupt. But aside from a few areas such as high-end network servers,
SCSI has never really caught on as a PC solution, where the added cost
and complexity of SCSI hampered its adoption.
There have been other recent proposals to get around
IRQ rationing.
Like Universal Serial Bus, allowing connection of up to 256 devices (!)
sharing a single external USB bus. Presumably, we could be seeing
keyboards,
mice, sound cards, scanners, and more, all using a single interrupt.
But USB still hasn?t caught on, though most modern
motherboards are
shipping with at least the possibility of adding a USB port. We?ll see
if the upcoming release of Windows 98, with built-in USB support,
provides
this technology its long-needed jump-start.
The villain in this scenario is the AT?s now
antiquated ISA bus. Even
when you?re not using any ISA cards, on today?s motherboards the
keyboard,
the parallel and serial ports, hard drive and floppy controllers
are all connected to the ISA bus, along with other functions built into
the motherboard. Ironically, lower-priced machines typically are
shipping
with more free resources than their pricier, more feature-packed
competition.
Last year, when Microsoft released its PC-98
specifications, it boldly
called for the demise of the ISA bus. Not on January 1st 1998, but over
the upcoming year, by computer manufacturers wanting the right to
include
a ?Designed for Microsoft Windows? logo.
But even mighty Microsoft has lacked the power to
impose its will on
the chaotic PC industry. There?s not a chance that the legacy ISA bus
will
be dead in 1998.
Now it?s a year later?the seventh annual WinHEC
(Hardware Engineering
Conference) was held March 24-27, with Microsoft again attempting to
set
standards, this time presenting a trial version of recommendations for
PC99, realistically aimed for implementation in Year 2000 models. In
the
meantime, implementation of the PC98 proposals for finally seeing an
end
to the ISA bus and the shortage of IRQs have been postponed, yet again.
PC99 proposals look at a minimum 300 MHz P-II with at
32 Megs of RAM
(64 Megs recommended). CD-ROMs will be replaced with DVD, and (yet
again),
no ISA bus. On-Now power management is expected to be implemented,
permitting
instant startup.
In the meantime, take a good look at the systems
you?re buying, selling,
or distributing. Use the Win95 Device Manager (or even the old DOS MSD
utility), and check how many IRQs are in use, how many are free for new
devices. Be prepared?it?s a question that your more aware customers may
very well be asking you.
But who among us has the courage to be the first to
release a PC without
a 1984 legacy ISA bus?