The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: bqt@update.uu.se (Johnny Billquist)
Subject: [TUHS] /dev/drum
Date: Thu, 3 May 2018 23:22:32 +0200	[thread overview]
Message-ID: <0ce4a7c8-9ced-4e06-46c3-f5f9816bbfcc@update.uu.se> (raw)
In-Reply-To: <20180503113956.EFE4F18C08A@mercury.lcs.mit.edu>

On 2018-05-03 13:39, Noel Chiappa wrote:
>      > That would be a pretty ugly way to look at the world.
> 
> 'Beauty is in the eye of the beholder', and all that! :-)

That is true... Still, would you consider such a view anything close to 
nice, usable or a good reflection of the hardware? :-)

>      > Not to mention that one segment silently slides over into the next one
>      > if it's more than 8K.
> 
> Again, precedent; IIRC, on the GE-645 Multics, segments were limited to 2^N-1 pages,
> precisely because otherwise incrementing an inter-segment pointer could march off
> the end of one, and into the next! (The -645 was implemented as a 'bag on the side'
> of the non-segmented -635, so things like this were somewhat inevitable.)

Right. But such a limitation does not exist on the PDP-11. You in fact 
normally do have several "chunks" concatenated, so that you have your 
linear virtual address space.

>      > wouldn't you say that the "chunks" on a PDP-11 are invisible to the
>      > user? Unless you are the kernel of course. Or run without protection.
> 
> No, in MERT 'segments' (called that) were a basic system primitive, which
> users had access to. (Very cool system! I really need to get moving on trying
> to recover that...)

But you say that MERT ran with memory protection and users not directly 
able to access the MMU? In such case then, the hardware is not really 
visible, but the OS gives you some construct which can easily be mapped 
on to the hardware.

Or else I am missing something you are saying.

The PLAS directives that were mentioned earlier, which various DEC OSes 
implemented, could be said to reflect segments. In the same way you 
could say that mmap() under Unix gives you a segment. But that is not a 
strict reflection of the hardware.

>      > *Demand* paging is definitely a separate concept from virtual memory.
> 
> Hmmm. I understand your definitions, and like breaking things up into 'virtual
> addressing' (which I prefer as the term, see below), 'non-residence' or
> 'demand loaded', and 'paging' (breaking into smallish, equal-sized chunks),
> but the problem with using "virtual memory" as a term for the first is that to
> most people, that term already has a meaning - the combination of all three.

It's actually not my definition. Demand paging is a term that have been 
used for this for the last 40 years, and is not something there is much 
contention about. I must admit that I'm rather surprised if the term 
really is unknown to you.
Locate any good text on operating system concepts, and you should find 
demand paging properly described. (Or go to Wikipedia, even though there 
is some disdain around it here, it does contain a bunch of information 
and references that are not all useless.)

Virtual memory usually have been equally uncontroversial, but there it 
has started to change in the last 10 years or so. I guess it's partly a 
result of the monoculture we now face, where you have lots of people who 
have never seen or used anything but x86 and Linux, if they have done 
anything close to the memory management. And that in addition with more 
and more people without proper CS educations fooling around in this 
area, and having a somewhat incomplete understanding of the concepts.

>      > There is no real connection between virtual memory and memory
>      > protection. One can exist with or without the other.
> 
> Virtual addressing and memory protection; yes, no connection. (Although the
> former will often give you the latter - if process A can't see, or name,
> process B's memory, it can't damage it.)

Right. Separation of memory can be seen as a form of memory protection 
as well. But that is really just a side effect of not even having the 
ability to refer to the memory, and is not explicitly any form of 
protection.
(Hello, virtual memory once more...)

>      > Might have been just some internal early attempt that never got out of DEC?
> 
> Could be; something similar seems to have happened to the 'RK11-B':
> 
>    http://gunkies.org/wiki/RK11_disk_controller

Which also begs the question - was there also a RK11-A?

>      >> I don't have any problem with several different page sizes, _if it
>      >> engineering sense to support them_.
> 
>      > So, would you then say that such machines do not have pages, but have
>      > segments?
>      > Or where do you draw the line? Is it some function of how many different
>      > sized pages there can be before you would call it segments? ;-)
> 
> No, the number doesn't make a difference (to me). I'm trying to work out what
> the key difference is; in part, it's that segments are first-class objects
> which are visible to the user; paging is almost always hidden under the
> sheets.
> 
> But not always; some OS's allow processes to share pages, or to map file pages
> into address spaces, etc. Which does make it complex to separate the two..

And the "chunks" on a PDP-11, running Unix, RSX or RSTS/E, or something 
similar is also totally invisible. You can expand memory, or even 
through mechanisms as shared memory and PLAS directives have your memory 
space mapping different "objects", but the MMU page registers details 
are totally invisible to you there.

   Johnny

-- 
Johnny Billquist                  || "I'm on a bus
                                   ||  on a psychedelic trip
email: bqt at softjar.se             ||  Reading murder books
pdp is alive!                     ||  tryin' to stay hip" - B. Idol


  reply	other threads:[~2018-05-03 21:22 UTC|newest]

Thread overview: 105+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-03 11:39 Noel Chiappa
2018-05-03 21:22 ` Johnny Billquist [this message]
     [not found] <mailman.1.1525744802.16322.tuhs@minnie.tuhs.org>
2018-05-08 22:39 ` Johnny Billquist
  -- strict thread matches above, loose matches on Subject: below --
2018-05-07 15:36 Noel Chiappa
2018-05-06 13:07 Noel Chiappa
2018-05-06 15:57 ` Johnny Billquist
2018-05-05 13:06 Noel Chiappa
2018-05-05 20:53 ` Johnny Billquist
2018-04-30 15:05 Noel Chiappa
2018-04-30 16:43 ` Paul Winalski
2018-04-30 21:41 ` Johnny Billquist
2018-05-03  2:54 ` Charles Anthony
2018-04-28 20:40 Noel Chiappa
2018-04-29 15:37 ` Johnny Billquist
2018-04-29 16:34   ` Steve Nickolas
2018-04-29 16:48     ` Warner Losh
2018-04-28  0:19 Noel Chiappa
2018-04-28 10:41 ` Johnny Billquist
2018-04-28 12:19   ` Rico Pajarola
2018-04-27 23:01 Noel Chiappa
2018-04-27 23:10 ` Johnny Billquist
2018-04-27 23:39   ` Warner Losh
     [not found] <mailman.1.1524708001.6296.tuhs@minnie.tuhs.org>
2018-04-27 22:41 ` Johnny Billquist
2018-04-26  1:53 Noel Chiappa
     [not found] <mailman.143.1524696952.3788.tuhs@minnie.tuhs.org>
2018-04-25 23:08 ` Johnny Billquist
2018-04-25 22:55 Noel Chiappa
     [not found] <mailman.139.1524690859.3788.tuhs@minnie.tuhs.org>
2018-04-25 22:54 ` Johnny Billquist
2018-04-25 22:46 Noel Chiappa
     [not found] <mailman.137.1524667148.3788.tuhs@minnie.tuhs.org>
2018-04-25 21:43 ` Johnny Billquist
2018-04-25 22:24 ` Johnny Billquist
2018-04-26  5:51   ` Tom Ivar Helbekkmo
2018-04-25 22:37 ` Johnny Billquist
2018-04-24  7:10 Rudi Blom
     [not found] <mailman.125.1524526228.3788.tuhs@minnie.tuhs.org>
2018-04-23 23:44 ` Johnny Billquist
2018-04-23 23:57   ` Steve Nickolas
2018-04-24  0:24   ` Ronald Natalie
2018-04-24  0:25   ` Warren Toomey
2018-04-24  0:31     ` Dave Horsfall
2018-04-24  1:02   ` Lyndon Nerenberg
2018-04-24  4:32   ` Grant Taylor
2018-04-24  4:49     ` Bakul Shah
2018-04-24  4:59       ` Warner Losh
2018-04-24  6:22         ` Bakul Shah
2018-04-24 14:57           ` Warner Losh
2018-04-24  6:46   ` Lars Brinkhoff
2018-04-23 22:01 Noel Chiappa
2018-04-23 22:09 ` Warner Losh
2018-04-23 18:41 Noel Chiappa
2018-04-23 19:09 ` Clem Cole
2018-04-23 23:01 ` Dave Horsfall
2018-04-23 23:49   ` Dave Horsfall
2018-04-24  0:26   ` Ronald Natalie
2018-04-22 18:06 Norman Wilson
2018-04-20 16:45 Noel Chiappa
2018-04-20 16:53 ` Charles Anthony
2018-04-20 17:16 ` William Pechter
2018-04-20 23:35   ` Dave Horsfall
2018-04-22 11:48     ` Steve Simon
2018-04-20 15:02 Tim Bradshaw
2018-04-20 15:58 ` Clem Cole
2018-04-20 16:00 ` David Collantes
2018-04-20 16:12   ` Dan Cross
2018-04-20 16:21     ` Clem Cole
2018-04-20 16:33     ` Warner Losh
2018-04-20 19:17       ` Ron Natalie
2018-04-20 20:23         ` Clem Cole
2018-04-20 22:10         ` Dave Horsfall
2018-04-22 17:01     ` Lars Brinkhoff
2018-04-22 17:37       ` Clem Cole
2018-04-22 19:14         ` Bakul Shah
2018-04-22 20:58         ` Mutiny
2018-04-22 22:37           ` Clem cole
2018-04-22 21:51         ` Dave Horsfall
2018-04-25  1:27           ` Dan Stromberg
2018-04-25 12:18             ` Ronald Natalie
2018-04-25 13:39               ` Tim Bradshaw
2018-04-25 14:02                 ` arnold
2018-04-25 14:59                   ` tfb
2018-04-25 14:33               ` Ian Zimmerman
2018-04-25 14:46                 ` Larry McVoy
2018-04-25 15:03                   ` ron minnich
2018-04-25 20:29               ` Paul Winalski
2018-04-25 20:45                 ` Larry McVoy
2018-04-25 21:14                   ` Lawrence Stewart
2018-04-25 21:30                     ` ron minnich
2018-04-25 23:01                 ` Bakul Shah
2018-04-23 16:42         ` Tim Bradshaw
2018-04-23 17:30           ` Ron Natalie
2018-04-23 17:51             ` Clem Cole
2018-04-23 18:30               ` Ron Natalie
2018-04-25 14:02                 ` Tom Ivar Helbekkmo
2018-04-25 14:38                   ` Clem Cole
2018-04-23 20:47               ` Grant Taylor
2018-04-23 21:06                 ` Clem Cole
2018-04-23 21:14                   ` Dan Mick
2018-04-23 21:27                     ` Clem Cole
2018-04-23 22:07                 ` Tim Bradshaw
2018-04-23 22:15                   ` Warner Losh
2018-04-23 23:30                     ` Grant Taylor
2018-04-24  9:37                       ` Michael Kjörling
2018-04-24  9:57                         ` Dave Horsfall
2018-04-24 13:01                           ` Nemo
2018-04-24 13:03                         ` Arthur Krewat
2018-04-23 23:45                   ` Arthur Krewat
2018-04-24  8:05                     ` tfb

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=0ce4a7c8-9ced-4e06-46c3-f5f9816bbfcc@update.uu.se \
    --to=bqt@update.uu.se \
    /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).