The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Bakul Shah <bakul@iitbombay.org>
To: Rob Pike <robpike@gmail.com>
Cc: The Eunuchs Hysterical Society <tuhs@tuhs.org>
Subject: [TUHS] Re: UNIX on (not quite bare) System/370
Date: Mon, 19 Dec 2022 18:52:47 -0800	[thread overview]
Message-ID: <94155806-907F-40EE-AB00-F3B345509442@iitbombay.org> (raw)
In-Reply-To: <CAKzdPgzCaQcAoMrLUNwWDE7-324655ytSNfcRedWJ8hjkkPnuA@mail.gmail.com>

On Dec 19, 2022, at 1:19 PM, Rob Pike <robpike@gmail.com> wrote:
> 
> Reiser and London's Unix, which I greatly admired, died on the vine
> for a variety of political reasons, as well as because it had
> slightly different semantics in some important cases, and because
> of a broad antipathy to virtual memory across the company due to
> various people having used VM on inadequate hardware, and of course 
> then there was Multics. Sandy Fraser was very nervous about
> Research adopting the BSD kernel because of his experience with
> Atlas. But let it be said: Reiser's VM system was seriously
> impressive, cleanly integrated, structurally central, and
> wonderfully fast. And Sandy relented but the general warmth of 1127
> towards Berkeley led to Research adopting Berkeley Unix as its VAX
> VM platform, despite some, including myself, feeling that was 
> inferior choice.

Is there a publicly available description of Reiser's VM system?
I found "A Unix operating system for the DEC VAX 11/780 Computer"
by London & Reiser which includes a long paragraph on VM (included
below) but that is about it.

And it would be interesting to hear why and what you found in
Reiser's VM system that was better than Berkeley's VM system.

Thanks!

From the London&Reiser paper:
    The virtual address space of a process running on the
VAX-11/780 consists of 2**32 8-bit bytes.  The two high-order
bits of a 32-bit address determine one of four segments. Two
of these segments are system segments common to the address
space of all processes. One of the system segments is
reserved for future use. The other two segments are
separately defined for each process and are automatically
managed by the context switching instructions. One of the
per-process segments is designed for a stack which grows
towards lower-numbered memory addresses. Segments are divided
into pages of 512 bytes. Memory mapping hardware translates
virtual addresses into physical addresses using page tables.
A page table contains one four-byte entry for each page
mapped; the entry contains a valid bit, a four-bit field
which encodes access privileges, a modify bit, and the
physical page-frame number where the page is mapped. (There
is no reference bit which is maintained by hardware!) A base
register and a limit register describe the page table of each
segment. The base register of a per-process segment contains
a virtual address within the system segment; the base
register for the system segment contains a physical memory
address. The VAX11/780 central processor contains a virtual
address translation buffer holding 128 virtual address-page
frame number pairs which eliminates the need for extra memory
references during address translation for (typically) 9896 of
all memory references. The memory is implemented using MOS
semiconductor RAMs with an error correcting code which
corrects all single-bit errors and detects all double-bit
errors and 70% of all greater-than-double bit errors. A
memory controller can handle 8 memory boards; using 4K chips
each board can hold 128K bytes. There can be two memory
controllers, thus the maximum amount of physical memory is
currently 2 megabytes. When 16K chips are used (forecasted
for late 1978), each board will hold 512K, and physical
memory can be 8 megabytes. There is a battery backup option
for maintaining data in the event of a power failure. Each
optional battery will maintain l megabyte for 10 minutes.

  parent reply	other threads:[~2022-12-20  2:54 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-19 17:38 [TUHS] " Phil Budne
2022-12-19 18:53 ` [TUHS] " segaloco via TUHS
2022-12-19 21:01   ` Clem Cole
2022-12-19 21:19     ` Rob Pike
2022-12-19 22:15       ` segaloco via TUHS
2022-12-20  0:02         ` Brad Spencer
2022-12-20  1:04           ` Adam Thornton
2022-12-20  2:35             ` segaloco via TUHS
2022-12-20 14:25           ` Andrew Hume
2022-12-19 23:02       ` Clem Cole
2022-12-20  1:20         ` Larry Stewart
2022-12-20  1:33           ` Larry McVoy
2022-12-20  1:57             ` George Michaelson
2022-12-20  2:06               ` Dan Cross
2022-12-20 15:04                 ` Chet Ramey
2022-12-20  2:12               ` Adam Thornton
2022-12-20 15:29                 ` Andy Kosela
2022-12-20 15:35                   ` Adam Thornton
2022-12-21  2:43                     ` Luther Johnson
2022-12-20 23:18                 ` David Arnold
2022-12-20  2:52       ` Bakul Shah [this message]
2022-12-20  3:09         ` Larry McVoy
2022-12-20  3:27           ` Bakul Shah
2022-12-20  3:48           ` Warner Losh
2022-12-20  4:21           ` Jonathan Gray
2022-12-19 21:36 ` Marc Donner
2022-12-19 22:52   ` Charles H Sauer (he/him)
     [not found]   ` <01428a75-3507-7b8a-fd35-cef74c8c0bd2@ucsb.edu>
2022-12-20  1:49     ` [TUHS] Re: pre-1991 USENIX proceedings Marc Donner
2022-12-20  3:11 ` [TUHS] Re: UNIX on (not quite bare) System/370 Warner Losh
2022-12-20  8:56 ` arnold
2022-12-20  9:31   ` segaloco via TUHS
2022-12-20  9:39     ` arnold
2022-12-20  9:55       ` Jonathan Gray
2022-12-20 14:27     ` Clem Cole
2022-12-23  1:53       ` Rob Gingell
2022-12-22 19:00 ` Andrew Hume
2022-12-20 22:25 Noel Chiappa
2022-12-20 23:18 ` Bakul Shah
2022-12-22 17:26 Noel Chiappa
2022-12-22 17:33 ` Dan Cross
2022-12-22 20:25 ` Warner Losh
2022-12-22 23:06   ` Warner Losh

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=94155806-907F-40EE-AB00-F3B345509442@iitbombay.org \
    --to=bakul@iitbombay.org \
    --cc=robpike@gmail.com \
    --cc=tuhs@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).