The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Clem Cole <clemc@ccc.com>
To: Mary Ann Horton <mah@mhorton.net>
Cc: TUHS main list <tuhs@minnie.tuhs.org>
Subject: Re: [TUHS] screen editors / machine load
Date: Fri, 10 Jan 2020 10:48:09 -0500	[thread overview]
Message-ID: <CAC20D2N_=tt4_eyEZ+N1BghditKKEh4LVOeuTi-Cr7rcnyAaug@mail.gmail.com> (raw)
In-Reply-To: <81cf0f73-2141-10c9-7352-51c0aac76959@mhorton.net>

[-- Attachment #1: Type: text/plain, Size: 3191 bytes --]

On Fri, Jan 10, 2020 at 10:00 AM Mary Ann Horton <mah@mhorton.net> wrote:

> Yes, it was a real concern. Physical memory on the shared PDP-11 was
> limited, and if everyone had a separate copy of vi running the machine
> would swap itself silly.
>
> This only mattered if everyone had their own separate copy of vi
> installed. The fix was to put vi in a single system directory, such as
> /usr/ucb or /exptools. The instruction part of its memory would be
> shared among all the users, resulting in much less swapping.
>
Actually it was much worse than that...

What Mary Ann points out was mostly true of your PDP-11 had DH11's
installed; which had deeper hardware buffering and 16 character DMA on
output.   But these were expensive from DEC and also took up a 'full system
unit' in the CPU for 16 lines.   Until Able (much later) released the
DMAX-11 (*a.k.a.* DH/DM) product of a DH11 clone on a single board, many
university sites did not use them; but used multiple DL-11/KL-11's instead.

If your system was configured with DL/KL11s or similar (CMU had it's own
called 'ASLIs' - a synchronous line interfaces) each character took one
interrupt for each either input or output.  Moreover, the UARTS that DEC
used which were made by Western Digital had 2 >>or less<< characters of
input buffering, so they could drop chars[1].  The ASLI's used a later chip
with a slightly better buffer IIRC but I admit I've forgotten the details
(Jim Tetter probably remembers them).

So if you had a single line, the interrupt load was huge on a PDP-11.  For
this reason, a lot of sites limited glass TTYs to speeds like 2400 or 4800
baud, not the full 9600.

DEC later released the DZ-11 which worked on units of 8 ports per board.
Unfortunately, it was not DMA and the buffering was still pretty shallow.
 Joy did a lot of work on 4.1BSD in the DZ driver to cut down the
interrupts because 9600 baud DZ lines could swamp a vax and when running
the BerkNet between systems (before UCB had ethernet), 9600 baud serial
lines were standard.


[1]  Two things
 A) The original WD UART chip had very limited buffering.   The timing was
such that as high rates it could not empty accept a second character
without the first being overwritten.  This was a long-standing issue for
many UARTs long in the 1990s.  The original chip NS built and IBM used on
the PC (the NS8250) was notorious for the same problem.  By the time of
Motorola's 6881, it had 8 characters of buffering IIRC.

B) As I understand the history, Gordon developed the original idea of the
UART at DEC for the PDP-1. But I'm not sure of the patent details. He does
not list the UART patent on his web site although he does mention inventing
it.   I have been under the impression CMU was somehow mixed up in the
patent and licensing of it, *i.e.* WD got the license from CMU to make them
not DEC; which was part of why we had the ASLI's.  Again, IIRC, we got the
UART chips from WD at cost and could make the ALSI's locally much cheaper
than DL-11s.  >>I think<< the story was that one of Gordon's student's
designed a chip, which WD fabbed and licensed.  Before that DEC had built
UARTs on boards from transistors and later logic gates.

[-- Attachment #2: Type: text/html, Size: 5009 bytes --]

  reply	other threads:[~2020-01-10 15:49 UTC|newest]

Thread overview: 84+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-08  7:39 [TUHS] screen editors Thomas Paulsen
2020-01-08 15:58 ` Steve Nickolas
2020-01-08 23:41   ` Dave Horsfall
2020-01-09  1:43     ` Nemo Nusquam
2020-01-08 21:49 ` Dave Horsfall
2020-01-08 22:01   ` Clem Cole
2020-01-17 23:38     ` Dave Horsfall
2020-01-18  0:07       ` Ryan Casalino
2020-01-18 23:02       ` greg travis
2020-01-10  8:13   ` markus schnalke
2020-01-10  8:17     ` U'll Be King of the Stars
2020-01-11 19:58       ` markus schnalke
2020-01-11 20:54         ` Derek Fawcus
2020-01-11 21:27         ` Henry Bent
2020-02-04  8:40         ` Sijmen J. Mulder
2020-02-04 20:14           ` [TUHS] pronouncing *nix formulas (was: screen editors) G. Branden Robinson
2020-02-04 21:05             ` Dave Horsfall
2020-02-04 21:52               ` Derek Fawcus
2020-02-04 23:27                 ` Rob Pike
2020-02-05  3:34                   ` Warner Losh
2020-02-05  9:49                   ` Angelo Papenhoff
2020-02-05 11:40                     ` Rob Pike
2020-02-05 11:43                       ` Brantley Coile
2020-02-05 10:58                   ` Ralph Corderoy
2020-02-05 11:45                     ` Rob Pike
2020-02-05  8:45             ` arnold
2020-02-05 13:35               ` Clem cole
2020-02-05 16:11                 ` [TUHS] pronouncing *nix formulas Arthur Krewat
2020-02-05 16:16                   ` Clem Cole
2020-02-05 17:05                     ` Jon Steinhart
2020-02-05 17:09                       ` Clem Cole
2020-02-08  3:31                         ` Ronald Natalie
2020-02-08  4:19                           ` Rob Pike
2020-02-11  1:16                             ` George Michaelson
2020-02-11  6:38                               ` Rob Pike
2020-02-05 20:26                       ` David Arnold
2020-02-05 19:37                 ` [TUHS] pronouncing *nix formulas (was: screen editors) Dave Horsfall
2020-02-05 19:57                   ` Clem Cole
2020-02-05 20:50                 ` Rob Pike
2020-02-05 21:43                   ` Clem Cole
2020-02-05 21:59                   ` Steve Nickolas
2020-02-05 22:22                   ` Ed Carp
2020-02-06  2:43                     ` Dan Cross
2020-02-06  3:00                       ` Larry McVoy
2020-02-06  5:20                         ` Vincenzo Nicosia
2020-02-06 14:54                           ` Richard Salz
2020-02-06 15:10                             ` [TUHS] pronouncing *nix formulas Lars Brinkhoff
2020-02-06 20:14                               ` Dave Horsfall
2020-02-06 20:20                                 ` Warner Losh
2020-02-06 19:55                       ` [TUHS] pronouncing *nix formulas (was: screen editors) Dave Horsfall
2020-02-06 21:48                         ` Michael Parson
2020-02-06 23:56                           ` Michael Parson
2020-02-06 22:17                         ` Clem Cole
2020-02-07  0:21                         ` [TUHS] finger usage (was: pronouncing *nix formulas (was: screen editors)) Greg 'groggy' Lehey
2020-02-07  0:27                           ` Steve Nickolas
2020-02-07  0:54                             ` [TUHS] finger usage (was: pronouncing *nix formulas Arthur Krewat
2020-02-07  1:00                               ` Richard Salz
2020-02-07  5:26                               ` Peter Jeremy
2020-02-07  4:31                             ` [TUHS] finger usage (was: pronouncing *nix formulas (was: screen editors)) Dave Horsfall
2020-02-07  5:07                               ` Greg 'groggy' Lehey
2020-02-07  5:39                                 ` Steve Nickolas
2020-02-07 21:39                                   ` Dave Horsfall
2020-02-07 16:14                                 ` Arthur Krewat
2020-02-07 22:37                                 ` Dave Horsfall
2020-02-07  4:23                           ` Dave Horsfall
2020-02-06  2:23                   ` [TUHS] pronouncing *nix formulas (was: screen editors) Dan Cross
2020-02-06  2:31                     ` Dave Horsfall
2020-02-05 19:08               ` Dave Horsfall
2020-02-05 21:01                 ` Nemo
2020-02-05 22:06                   ` Dave Horsfall
2020-01-10 13:41     ` [TUHS] screen editors / machine load Mike Markowski
2020-01-10 13:56       ` Otto Moerbeek
2020-01-10 15:00       ` Mary Ann Horton
2020-01-10 15:48         ` Clem Cole [this message]
2020-01-10 22:18           ` Adam Thornton
2020-01-11  0:30             ` Christopher Browne
2020-01-10 15:31     ` [TUHS] screen editors Nemo Nusquam
2020-01-10 16:04       ` Clem Cole
2020-01-10 17:10       ` Dan Cross
2020-01-10 17:18         ` Steve Nickolas
2020-01-18  1:55           ` Michael Parson
2020-01-10 15:58     ` Theodore Y. Ts'o
2020-01-10 14:35 [TUHS] screen editors / machine load Noel Chiappa
2020-01-10 15:35 Noel Chiappa

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='CAC20D2N_=tt4_eyEZ+N1BghditKKEh4LVOeuTi-Cr7rcnyAaug@mail.gmail.com' \
    --to=clemc@ccc.com \
    --cc=mah@mhorton.net \
    --cc=tuhs@minnie.tuhs.org \
    /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).