On Mon, Mar 13, 2023 at 9:13 AM Paul Ruizendaal via TUHS <tuhs(a)tuhs.org>
wrote:
Thinking a bit more about terminal multiplexing was a
major use case for
early X, I recalled using Linux virtual consoles in the late 90’s for this
purpose.
According to Wikipedia, virtual consoles originated with Xenix and before
that with concurrent CP/M.
Perusing the documentation of those on Bitsavers, I can see that virtual
consoles have a prominent mention in the manual for concurrent CP/M (1983),
but not those of its forerunners MP/M II and MP/M (1979). I cannot find a
mention of virtual consoles in Xenix documentation as late as 1988.
Venix/86R 1.0 Boston Softwre Works Edition had virtual consoles. It was
released in 1986.
https://groups.google.com/g/mod.newprod/c/iYLc3cdnyms/m/Him5XgqwT70J is a
reference. However, it was inspired by Xenix and Microport System V/AT
according to the author. The stock version of Venix/86R 1.0 didn't have
them, nor did the PC version that we have some sources for. Here's the
relevant bits from the blurb:
Virtual consoles, as found in VENIX on IBM-compatible machines, and also in
XENIX and Microport System V/AT.
But also interesting was:
Support for simultaneous use of a monochrome display (for terminal/console
use) and a color graphics display (for graphics).
which I thought interesting at the time, but was pretty old-school Unix
Workstation by then.
No such thing as a virtual (as distinct from pseudo) tty on 16-bit Unix or
early 32-bit, as far as I know; one could argue it
does not make much sense
with physical terminals. Wikipedia says no such thing existed on SunOS
either.
I think virtual consoles where present in Linux from a very early point.
Ditto for the 386BSD BSD/386 line of code. I think they were added in the
patch-kit phase, not the original Jolitz code phase. FreeBSD 1.0 Beta had
them in 1993 for sure, as did NetBSD of the time.
I have a memory of them on 0.98pl13 on Linux as well, but that version
sticks in my head as a proxy for anything between 0.96 (the first one I
tried) and 0.99 (the last before 1.x Linux). This would be approximately
1992 or 1993.
I've not done the deep-dive into the ancient code bases to see if I can
suss out when they arrived.
So, as far as I can tell virtual consoles were
invented for concurrent
CP/M around 1983, made their way to Xenix in the late 80’s and became part
of Linux in the early 90’s.
Have I missed other prior art?
Maybe a little. Good information about Microport System V is kinda hard to
come by these days...
Warner