*BSD News Article 1838


Return to BSD News archive

Newsgroups: comp.unix.bsd
Path: sserve!manuel!munnari.oz.au!uniwa!cujo!marsh!cproto
From: cproto@marsh.cs.curtin.edu.au (Computer Protocol)
Subject: COM driver and X11
Message-ID: <cproto.710554678@marsh>
Summary: COM driver looses characters (silo overflow)
Keywords: COM X11 
Sender: news@cujo.curtin.edu.au (News Manager)
Organization: Curtin University of Technology
Date: Wed, 8 Jul 1992 00:17:58 GMT


I'm running 386BSD (17/03/92) and experience silo overflows when
running a kermit filetransfer (2400 b/s) in background and anything
(even just a ls) in foreground. I get the silo overflows both with
the released com driver as well as with the latest post which is
supposedly fixing this problem. My COM port is implemented with a
NS16450 so I can't use the 16 byte FIFO supported in the latest
driver. But even with a NS16550 with the FIFO I doubt whether the
driver would keep up due to the TTY stuff it has to go through for
every received character (at 9600 b/s or higher).

BTW I also experience the problem running X and moving the serial
mouse while just launching some X application.

I have a fast machine but not too much memory:
486DX / 33 Mhz
4 Mbyte memory
64 Kbyte secondary cache
210 Mbyte IDE HD

I think the driver should be really split into two parts. A lower 
level driver which is handling the receive interrupts at a high
priority and a very short execution path. This part should write
received characters plus status into a circular buffer and then
cause some software interrupt to invoke the higher level driver
to do all the fancy TTY bits.

Before I start on this please let me know what you guys think ?!?

Regards - Tibor Sashegyi (cproto@abel.cs.curtin.edu.au)