The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Jonathan Gray <>
To: Paul Ruizendaal <>
Subject: [TUHS] Re: Early multiprocessor Unix
Date: Tue, 29 Nov 2022 03:52:17 +1100	[thread overview]
Message-ID: <> (raw)
In-Reply-To: <>

On Mon, Nov 28, 2022 at 02:24:52PM +0100, Paul Ruizendaal wrote:
> The discussion about the 3B2 triggered another question in my head: what were the earliest multi-processor versions of Unix and how did they relate?
> My current understanding is that the earliest one is a dual-CPU VAX system with a modified 4BSD done at Purdue. This would have been late 1981, early 1982. I think one CPU was acting as master and had exclusive kernel access, the other CPU would only run user mode code.
> Then I understand that Keith Kelleman spent a lot of effort to make Unix run on the 3B2 in a SMP setup, essentially going through the source and finding all critical sections and surrounding those with spinlocks. This would be around 1983, and became part of SVr3. I suppose that the “spl()” calls only protected critical sections that were shared between the main thread and interrupt sequences, so that a manual review was necessary to consider each kernel data structure for parallel access issues in the case of 2 CPU’s.
> Any other notable work in this area prior to 1985?

HP-UX on FOCUS/series 500?
Jeff Lindberg
A Layered Implementation of the UNIX Kernel on the HP9000 Series 500

"The HP9000 Series 500 computers are based on a proprietary 32 bit
microprocessor chip set with stack architecture. It has user-transparent
multi-CPU support, for which they included semaphores and a very
carefully worked out scheduler.

HP-UX is based on top of an operating system called SUN (no relation to
Sun Microsystems Inc.). The SUN operating system was intended to be a
modern operating system to support HP's desktop BASIC system. As
designed, though, it turns out to be language independent, and had
several other features that made it attractive as a base upon which to
build a UNIX implementation."
Frederick W. Clegg
Hewlett-Packard’s Entry into the UNIX Community

"Several motivations prompted this somewhat unconventional
implementation of the HP-UX kernel on the HP 9000. It should be
understood that much of the low- level, machine-dependent software for
the HP 9000 was complete before a final commitment was made to offer
UNIX on this product line. Thus reinvention of device and interface
drivers, low-level memory management routines, power-up code, and
architecturally-dependent utility routines was avoided by this approach.
Additionally, this approach permitted leverage of software developed to
support graphics and database management from the BASIC environment.

Additionally, SUN has a number of features which are not present in AT&T
UNIX. These provide opportunities for HP-UX to make a contribution above
and beyond other UNIX implementations. Such features include real-time
performance in the area of interrupt response time and process
switching, support for multiple processors, and reliability in the face
of system errors."

some more details in
HP Journal, March 1984, Volume 35, Number 3

  parent reply	other threads:[~2022-11-28 16:52 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-28 13:24 [TUHS] " Paul Ruizendaal
2022-11-28 13:42 ` [TUHS] " Larry Stewart
2022-11-28 14:05 ` Clem Cole
2022-11-28 14:13   ` Clem Cole
2022-11-28 14:19     ` Warner Losh
2023-08-06 14:19     ` Warner Losh
2022-11-28 14:16   ` Warner Losh
2022-11-28 14:50     ` Clem Cole
2022-11-28 16:30   ` Paul Winalski
2022-11-28 16:49     ` Clem Cole
2023-08-06 14:12   ` Warner Losh
2022-11-28 16:52 ` Jonathan Gray [this message]
2022-11-29  9:39 ` Jonathan Gray
2022-11-29 15:54   ` [TUHS] First supercomputer UNIX: The Denelcor HEP (was Early multiprocessor Unix) Ron Natalie
2022-11-29 17:00     ` [TUHS] " Jon Steinhart
2022-11-29 20:53     ` steve jenkin
2023-08-05 23:00 ` [TUHS] Re: Early multiprocessor Unix scj
2023-08-06  0:54   ` Larry McVoy
2023-08-06  6:52   ` Paul Ruizendaal
2023-08-06  9:28   ` Ronald Natalie
2023-08-06  9:57   ` Ralph Corderoy
2022-11-30  2:55 Rudi Blom

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:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \ \ \

* 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).