Charles Stack on Thu, 22 Jul 1999 15:41:50 -0400 (EDT)


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: CORRECTION Re: [Plug] US Robotics Modems etc, and a question..


Alas...I can't keep quiet.

Winmodems, do, though code, expose themselves to the operating system as
hardware ports.  They hook into the interrupt service routines and often
provided the hardware equivalent of an add-on comm port.  Communication to
these devices, however is either through an IO port or through a memory
mapped port.  The drivers implement the code necessary for the OS to
"virtualize" and  interact with the port.  This means that about 90% of the
"firm-ware" is run by the hosting machine's CPU with occassional calls made
back into the modem card via callbacks (for hardware control, mainly).

In a later post, someone said they thought that this process wouldn't have a
significant affect on CPU performance.  Unfortunately, everytime Windows
handles the interrupt call, I believe it has to switch to real mode and then
back again.  This is very time consuming and does produce a noticable effect
when there is considerable modem traffic on a slower machine.  Most of the
problem with the interrupts can be blamed on Intel who, in their lack of
insite, determined that no one would need more than two comm ports (i.e 8088
days).  They even offloaded the detection of the interrupts to, I believe,
an 8051 interrupt controller chip.   Regardless, of the off-CPU interrupt
handler, they still didn't fix the underlying problem of a lack of
interrupts.

Microchannel attempted to overcome this problem by allowing multiple devices
to share the same interrupts through chaining.  It kind of worked.  Other
card vendors build smart io ports that funneled the interrupt traffic into a
single interrupt.  So, these cards could handle multiple lines, they still,
ultimately, had the bottleneck of the CPU having to read and process their
buffers.



Charles

-----Original Message-----
From: Kyle Burton <mortis@voicenet.com>
To: plug@lists.nothinbut.net <plug@lists.nothinbut.net>
Date: Thursday, July 22, 1999 3:21 PM
Subject: Re: CORRECTION Re: [Plug] US Robotics Modems etc, and a question..


>I guess you could make a Linmodem -- as far as I know, Winmodems don't
actually
>present the operating system with a com port -- you have to have a peice of
>software that talks to the 'winmodem' as a device on the bus, and provide
>the abstraction for it.
>
>I think :|
>
>
>k
>
>---------------------------------------------------------------------------
---
>It should be illegal to yell "Y2K" in a crowded economy. :-)
>    -- Larry Wall
>mortis@voicenet.com
http://www.voicenet.com/~mortis
>---------------------------------------------------------------------------
---
>
>On Thu, 22 Jul 1999 Vale_Kenny@vanguard.com wrote:
>
>> noncurrent = no current
>>
>>
>>
>> _______________________________________________
>> Plug maillist  -  Plug@lists.nothinbut.net
>> http://lists.nothinbut.net/mail/listinfo/plug
>>
>
>
>_______________________________________________
>Plug maillist  -  Plug@lists.nothinbut.net
>http://lists.nothinbut.net/mail/listinfo/plug
>


_______________________________________________
Plug maillist  -  Plug@lists.nothinbut.net
http://lists.nothinbut.net/mail/listinfo/plug