From: Bakul Shah <bakul@iitbombay.org>
To: "Theodore Y. Ts'o" <tytso@mit.edu>
Cc: The Eunuchs Hysterical Society <tuhs@tuhs.org>
Subject: Re: [TUHS] 386BSD released
Date: Thu, 15 Jul 2021 22:51:11 -0700 [thread overview]
Message-ID: <A75B5962-43CC-4BFA-B20F-DD66913DB72D@iitbombay.org> (raw)
In-Reply-To: <YPEKScdjJCE+KMjj@mit.edu>
On Jul 15, 2021, at 9:25 PM, Theodore Y. Ts'o <tytso@mit.edu> wrote:
>
> I remember a friendly rivalry that I had with Bruce D. Evans in
> Australia, who was working on the serial driver for FreeBSD, where we
> would exchange tips and techniques for making the serial driver on our
> respective OS's more CPU efficient. (The metric was to see who could
> most reduce the system overhead of the serial interrupt and tty layers
> when running a C-Kermit file transfer over a pair of RS-232 ports
> connected via a loopback cable.) It was a lot of fun, and we both
> gained a lot from the exchange of ideas, but finally, I came up with
> an idea (flip buffers) that really reduced Linux's serial/tty
> overhead, but which Bruce couldn't match in FreeBSD, because the
> FreeBSD core team thought that clists were handed down from Mount
> Olympus by the Gods of BSD, and making that kind of change in the tty
> layer was tantamount to heresy. Heh.
Dave Yost wrote the serial driver for our 4 port serial card @ Fortune
(1981-82). Later chips like NS16550 had 16 char on chip buffers but we
back then we used a Moto SIO chip that had only one char buffer. IIRC,
he used two tricks. One was "partially evaluated" xmit/recv handlers so
that each port got its own xmit/recv functions, with hand-crafted
instructions (in hex, no less!) just right for a given port and all the
interry t handler . The do was transfer a char from/to the buffer it
(lready knew about. The other was he increased the cblock size from 8 to 128
(what a clist points to). He says he described this design to dmr who said
why not?! With this design Yost's code was able to handle 4 full-duplex
9600 baud streams at full-speed. Not bad for a 5.6Mhz clock machine!
next prev parent reply other threads:[~2021-07-16 5:51 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-13 22:28 Dave Horsfall
2021-07-14 7:54 ` Michael Kjörling
2021-07-14 8:19 ` Angus Robinson
2021-07-14 8:32 ` Michael Kjörling
2021-07-14 9:07 ` Lars Brinkhoff
2021-07-14 14:09 ` Larry McVoy
2021-07-14 14:54 ` Warner Losh
2021-07-14 15:06 ` Richard Salz
2021-07-14 15:37 ` Steve Nickolas
2021-07-14 10:09 ` Tom Ivar Helbekkmo via TUHS
2021-07-14 10:39 ` arnold
2021-07-14 17:21 ` Lyndon Nerenberg (VE7TFX/VE6BBM)
2021-07-14 17:32 ` Richard Salz
2021-07-14 15:01 ` Clem Cole
2021-07-14 17:40 ` [TUHS] [COFF] " Theodore Y. Ts'o
2021-07-14 17:50 ` Larry McVoy
2021-07-14 18:28 ` Clem Cole
2021-07-14 11:49 ` [TUHS] " Andy Kosela
2021-07-14 15:48 ` Theodore Y. Ts'o
2021-07-16 1:35 ` Dave Horsfall
2021-07-16 2:33 ` risner
2021-07-16 4:25 ` Theodore Y. Ts'o
2021-07-16 5:51 ` Bakul Shah [this message]
2021-07-16 13:00 ` Theodore Y. Ts'o
2021-07-16 13:56 ` Larry McVoy
2021-07-16 14:40 ` Clem Cole
2021-07-16 15:44 ` Theodore Y. Ts'o
2021-07-16 16:11 ` Bakul Shah
2021-07-16 19:07 ` Kevin Bowling
2021-07-16 20:17 ` Clem Cole
2021-07-16 20:24 ` Richard Salz
2021-07-18 13:13 ` arnold
2021-07-18 13:23 ` Richard Salz
2021-07-18 13:43 ` [TUHS] MtXinu calendar (was Re: 386BSD released) Al Kossow
2021-07-18 13:51 ` Al Kossow
2021-07-18 16:44 ` Al Kossow
2021-07-18 17:38 ` John Cowan
2021-07-18 18:35 ` Bakul Shah
2021-07-19 3:06 ` Dan Stromberg
2021-07-18 19:00 ` arnold
2021-07-18 21:48 ` Deborah Scherrer
2021-07-18 20:06 ` Lyle Bickley
2021-07-14 21:37 ` [TUHS] 386BSD released Bakul Shah
2021-07-16 21:22 ` Dave Horsfall
2021-07-15 2:21 Douglas McIlroy
2021-07-15 2:41 ` Adam Thornton
2021-07-15 15:07 ` Clem Cole
2021-07-16 17:30 Nelson H. F. Beebe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=A75B5962-43CC-4BFA-B20F-DD66913DB72D@iitbombay.org \
--to=bakul@iitbombay.org \
--cc=tuhs@tuhs.org \
--cc=tytso@mit.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).