Newsgroups: comp.unix.sysv386 Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!ispd-newsserver!ism.isc.com!ico!rcd From: rcd@ico.isc.com (Dick Dunn) Subject: Re: Son of FAS? Message-ID: <1991Apr25.173627.2642@ico.isc.com> Summary: polling would reduce overhead, but it's tricky Organization: Interactive Systems Corporation, Boulder, CO References: <1991Apr25.010758.1522@pegasus.com> Date: Thu, 25 Apr 1991 17:36:27 GMT richard@pegasus.com (Richard Foulk) writes: > I recall hearing that Equinox (or someone like that) equips their > smart serial card with a driver that doesn't use interrupts. They > do some kind of polling from within one of the kernels inner loops. Hmmm...the most often you're guaranteed to get into the kernel is once per clock tick, or 10 ms, which isn't often enough to poll a serial device. Once you get into the device code on an interrupt, you can hang around and pick up any additional characters that arrive while you're processing the first one...but I think most serial drivers nowadays do that anyway. > Doing away with the interrupt overhead supposedly results in a marked > performance gain. (Seems reasonable.) Quite likely--the interrupt overhead really is most of the time you spend processing an incoming character on a serial port. The only catch is that you've got to be careful not to hang around polling the device for very long, or you'll miss other interrupts. (This is a DOSism that just won't work in UNIXland.) -- Dick Dunn rcd@ico.isc.com -or- ico!rcd Boulder, CO (303)449-2870 ...While you were reading this, Motif grew by another kilobyte.