public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Malcolm Beattie <mbeattie@sable.ox.ac.uk>
To: "Richard B. Johnson" <root@chaos.analogic.com>
Cc: Timur Tabi <ttabi@interactivesi.com>, linux-kernel@vger.kernel.org
Subject: Re: What is the truth about Linux 2.4's RAM limitations?
Date: Tue, 10 Jul 2001 21:19:50 +0100	[thread overview]
Message-ID: <20010710211950.A70@sable.ox.ac.uk> (raw)
In-Reply-To: <3B4B3570.9090104@interactivesi.com> <Pine.LNX.3.95.1010710131403.18337A-100000@chaos.analogic.com>
In-Reply-To: <Pine.LNX.3.95.1010710131403.18337A-100000@chaos.analogic.com>; from root@chaos.analogic.com on Tue, Jul 10, 2001 at 01:35:43PM -0400

Richard B. Johnson writes:
> On Tue, 10 Jul 2001, Timur Tabi wrote:
> 
> > Chris Wedgwood wrote:
> > 
> > >How does FreeBSD do this? What about other OSs? Do they map out most
> > >of userland on syscall entry and map it in as required for their
> > >equivalents to copy_to/from_user? (Taking the performance hit in doing
> > >so?)
> > >
> > 
> > I don't know about *BSD, but in Windows NT/2000, even drivers run in 
> > virtual space.  The OS is not monolithic, so address spaces are general 
>   ^^^^^^^^^^^^^
> > not "shared" as they are in Linux.
>        ^^^^^^^
> 
> Therefore, it was most reasonable to have the kernel exist within
> each tasks address space. With modern processors, it doesn't make
> very much difference, you could have user space start at virtual
> address 0 and extend to virtual address 0xffffffff. However, this would
> not be Unix. It would also force the kernel to use additional
> CPU cycles when addressing a tasks virtual address space,
> i.e., when data are copied to/from user to kernel space.

This is rather misleading and Intel-architecture-specific rather than
Unix-specific. For example, Linux on S/390 uses a complete 2Gb address
space (31 bits; the limit of addressability on the 32-bit S/390
architecture) for the current task and a separate 2GB address space for
the kernel. The kernel is not mapped into the "current" address space
but features of the architecture which provide for separate concurrent
address spaces via special registers are used. Copies between kernel
space and user space use special instructions which reference these
address space registers automagically.

--Malcolm

-- 
Malcolm Beattie <mbeattie@sable.ox.ac.uk>   <-- This email address will break
Unix Systems Programmer                   when I quit OUCS on Jul 20th. Send
Oxford University Computing Services    private mail to mbeattie@clueful.co.uk
                                      I'll sort out my IBM email address soon.

  parent reply	other threads:[~2001-07-10 20:28 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-07-09 20:01 What is the truth about Linux 2.4's RAM limitations? Adam Shand
2001-07-09 21:15 ` Brian Gerst
2001-07-09 21:18 ` Rik van Riel
2001-07-09 22:17 ` Matti Aarnio
2001-07-10 13:49   ` Chris Wedgwood
2001-07-10 17:03     ` Timur Tabi
2001-07-10 17:35       ` Richard B. Johnson
2001-07-10 18:01         ` Timur Tabi
2001-07-10 18:08         ` Jonathan Lundell
2001-07-10 18:45           ` Richard B. Johnson
2001-07-10 19:26             ` Jonathan Lundell
2001-07-10 23:56             ` Jesse Pollard
2001-07-10 20:19         ` Malcolm Beattie [this message]
2001-07-10  3:01 ` jlnance
2001-07-10  3:29   ` Michael Bacarella
2001-07-16  8:37   ` Ingo Oeser
     [not found] <Pine.LNX.4.32.0107091250170.25061-100000@maus.spack.org.suse.lists.linux.kernel>
2001-07-09 21:03 ` Andi Kleen
  -- strict thread matches above, loose matches on Subject: below --
2001-07-09 21:29 Jesse Pollard
2001-07-10 17:01 ` Timur Tabi
2001-07-10 18:12 Jesse Pollard
2001-07-10 18:22 ` Jonathan Lundell
2001-07-10 18:28 ` Brian Gerst
2001-07-10 18:43   ` Chris Wedgwood
2001-07-10 19:35     ` Brian Gerst
2001-07-10 18:38 Jesse Pollard
2001-07-10 19:14 ` Mark H. Wood
2001-07-10 21:49 Jesse Pollard
2001-07-10 22:07 ` Jonathan Lundell
2001-07-11  4:31 alad

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=20010710211950.A70@sable.ox.ac.uk \
    --to=mbeattie@sable.ox.ac.uk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=root@chaos.analogic.com \
    --cc=ttabi@interactivesi.com \
    /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