INF: Sharing IRQs with the Windows 3.0 Communications Driver

ID Number: Q72637

3.00

WINDOWS

Summary:

The communications driver shipped with version 3.0 of the Microsoft

Windows graphical environment runs in enhanced mode, it can share

serial communication IRQ between COM ports if the hardware is

compliant. This can occur on equipment with the Industry Standard

Architecture (ISA), the Extended Industry Standard Architecture

(EISA), or the Micro-Channel Architecture (MCA).

More Information:

The communications driver supplied with Windows 3.0, COMM.DRV, can

share IRQs between two serial communication boards when Windows runs

in enhanced mode. However, this ability is very dependent on the

hardware and may not work in all cases.

In the default configuration, COM1 and COM3 are placed on IRQ 4; COM2

and COM4 are placed on IRQ 3. To use COM2 and COM4 at the same time,

for example, the two ports must successfully share IRQ 3. To

accomplish this, when the COMM.DRV receives an interrupt, it checks

each COM port that is currently open on the IRQ to determine if the

port requires service. After COMM.DRV services the interrupt for one

port, it checks any other ports connected to that IRQ until it

determines that no ports require service. Then COMM.DRV executes an

EOI instruction and an IRET instruction.

IRQ sharing works correctly only if the COM adapters cooperate with

each other. Some adapters mask the interrupt request such that other

adapters on the same IRQ line cannot send an interrupt request to the

interrupt controller. By default, the COMM.DRV supports IRQ sharing on

an EISA or an MCA machine because the COM ports probably share an IRQ

with each other or with another device in the system. On an ISA

machine, where the chances of IRQ sharing are much lower, the user can

enable IRQ sharing by setting the ComIRQSharing flag in the [386Enh]

section of the SYSTEM.INI initialization file. For more information,

see the documentation for the ComIRQSharing flag in the SYSINI2.TXT

file that the Windows setup program places in the Windows directory

(by default, C:\WINDOWS).

Note that all the extra processing required to share IRQs creates

overhead. On a system where a the COM ports do not share an IRQ with

any other device, disabling IRQ sharing with the ComIRQSharing switch

provides a minor performance improvement.

Additional reference words: 3.00 DDKVCD