*BSD News Article 3418


Return to BSD News archive

Path: sserve!manuel!munnari.oz.au!mips!mips!darwin.sura.net!wupost!usc!elroy.jpl.nasa.gov!ames!agate!agate!usenet
From: cgd@agate.berkeley.edu (Chris G. Demetriou)
Newsgroups: comp.unix.bsd
Subject: new com.c available on agate...
Date: 10 Aug 1992 00:40:55 -0700
Organization: Kernel Hackers 'r' Us
Lines: 30
Distribution: world
Message-ID: <1656i7INNm7q@agate.berkeley.edu>
NNTP-Posting-Host: agate.berkeley.edu
Summary: i did some speed hacking...
Keywords: serial, speed, lossage

I did some speed hacking on the serial driver, and the new
version is available in:
agate.berkeley.edu:pub/386BSD/386bsd-0.1/unofficial/com.cgd

It has options so that you can completely disable the FIFO-checking
code (if you don't have a 16550 UART...) and so that you can
turn on some "nifty" buffering code that i wrote...

read the README for some more details, and read the code for
even more... as usual, the default behavior is to act like
the original 0.1 com driver...

the code is really ugly, but on my system (a 386-20 with a NS16450
UART), it *RARELY* drops chars at 2400 baud (where it used to drop a
good number), and it doesn't drop too many at 9600...
The buffering algorithm also attempts to guarantee progress, so
you tend to lose characters only when the buffer is full (rather than
sporadically, as with the old one).

since the diffs were bigger than the original com.c, i didn't post
diffs... (and i added a copyright... 8-)

enjoy,

Chris
-- 
Chris G. Demetriou                                 cgd@agate.berkeley.edu

"Sometimes it is better to have twenty million instructions by
        Friday than twenty million instructions per second." -- Wes Clark