9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: geoff@collyer.net
To: 9fans@cse.psu.edu
Subject: Re: [9fans] Virtual memory & paging
Date: Sun,  3 Feb 2002 15:08:39 -0800	[thread overview]
Message-ID: <20020203231258.8ED7B199E8@mail.cse.psu.edu> (raw)

Even if your physical memory were as large as your virtual address
space, an obvious advantage to mapping addresses is to permit programs
linked to start at a fixed address (usually the second page of the
address space) to be run without first running a loading pass to
relocate all the addresses in the entire program.

In addition, memory management units normally provide varying forms of
protection for pages (e.g., instructions are usually made read- or
execute-only) and checking for out-of-bounds (unmapped) addresses.  On
many machines, notably the PC, a read from an address with no
corresponding memory (i.e., out-of-bounds) yields garbage; with memory
management on, many such references can be caught.  The MMU can thus
be used to ensure that a program doesn't access data in other programs
(including the kernel) without their consent.

Another potential use of mapping is to avoid copying data by remapping
pages.

I would turn the question around: when would you want a one-to-one
mapping of virtual to physical addresses?  There are a few such cases:
if memory serves, the old VAX 750 Plan 9 file server ran with the MMU
off because it runs no user-mode processes and it was found that
running with the MMU off made the machine run much faster.



             reply	other threads:[~2002-02-03 23:08 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-03 23:08 geoff [this message]
2002-02-03 20:26 ` Andrew Simmons
2002-02-04 16:15   ` Ronald G Minnich
2002-02-04  6:21 ` Richard Uhtenwoldt
  -- strict thread matches above, loose matches on Subject: below --
2002-02-15 14:32 Richard Uhtenwoldt
2002-02-16 21:56 ` Ronald G Minnich
2002-02-05 10:57 geoff
2002-02-05 11:37 ` Boyd Roberts
2002-02-05 14:01 ` david presotto
2002-02-04 11:03 Fco.J.Ballesteros
2002-02-04 10:59 forsyth
2002-02-04 10:38 geoff
2002-02-04 11:16 ` Boyd Roberts
2002-02-04 11:45 ` Boyd Roberts
2002-02-04 17:10   ` Andrew Simmons
2002-02-05 11:17     ` Boyd Roberts
2002-03-30  4:26   ` Richard Maxwell Underwood
2002-02-05  9:53 ` Thomas Bushnell, BSG
2002-02-05 16:06   ` Ronald G Minnich
2002-02-04 10:30 forsyth
2002-02-03 21:53 presotto
2002-02-03 22:36 ` Andrew Simmons
2002-02-03 21:21 rob pike
2002-02-04 21:46 ` skipt
2002-02-04 22:11   ` Ronald G Minnich
     [not found]   ` <Pine.LNX.4.33.0202041510540.4327-100000@snaresland.acl.lan l.gov>
2002-02-05  1:30     ` skipt
2002-02-05 15:32       ` Ronald G Minnich
2002-02-03 21:12 andrey mirtchovski
2002-02-03 21:01 Andrew Simmons

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=20020203231258.8ED7B199E8@mail.cse.psu.edu \
    --to=geoff@collyer.net \
    --cc=9fans@cse.psu.edu \
    /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).