From: Itai Nahshon <nahshon@actcom.co.il>
To: Alan Cox <alan@lxorguk.ukuu.org.uk>,
hch@infradead.org (Christoph Hellwig)
Cc: Martin.Bligh@us.ibm.com (Martin J. Bligh),
andrea@suse.de (Andrea Arcangeli),
hugh@veritas.com (Hugh Dickins),
riel@conectiva.com.br (Rik van Riel),
dmccr@us.ibm.com (Dave McCracken),
linux-kernel@vger.kernel.org (linux-kernel)
Subject: Re: Creating a per-task kernel space for kmap, user pagetables, et al
Date: Thu, 21 Mar 2002 06:21:45 +0200 [thread overview]
Message-ID: <200203210421.g2L4Lwx22756@lmail.actcom.co.il> (raw)
In-Reply-To: <E16npfo-0003gA-00@the-village.bc.nu>
On Thursday 21 March 2002 01:39 am, Alan Cox wrote:
> > That has been implemented in Caldera OpenUnix in the last years.
>
> V7 unix had it. Thats where the "uarea" aka u. comes in. Its one of the
> killer problems with Linux 8086 - on the 11 they could put the kernel stack
> file handles and other process local crap into a swappable segment that
> could also be swapped from the kernel address space. On the 8086 thats
> trickier
Some 20 years ago I knew almost everything about BSD-4.x on a VAX.
The user area was just above the user stack. Actually it was part of the
user space, accessible RO from user mode and RW for the kernel.
It was always mapped at a fixed address that was just below the 2G
marker.
The process table contained whatever was needed to swap-in
and access the user area, some scheduling parameters and
signal mask/pending bits (I'm sure I missed something).
This arrangement might save some physical memory because
this area was swapped with the process (actually that was the last
thing to swap out/first to swap in because the page table for the
rest of the process was in there).
I think this arrangement made stuff as shared memory (and libs),
ptrace and other IPC more complicated. Then memory management
stuff... Remember that the system base architecture knew how
to swap in/out only whole processes. Paging was implemented
above it with a global clock (LRU like) algorithm.
Truely I thought that putting everything in "current" in Linux was
more of a design decision and not something that's derived from
the '86 architecture.
-- Itai
next prev parent reply other threads:[~2002-03-21 4:23 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-03-20 19:09 Martin J. Bligh
2002-03-20 19:36 ` Rik van Riel
2002-03-20 20:26 ` Andrea Arcangeli
2002-03-20 19:45 ` Christoph Hellwig
2002-03-20 23:39 ` Alan Cox
2002-03-21 4:21 ` Itai Nahshon [this message]
2002-03-21 13:34 ` Alan Cox
2002-03-21 14:34 ` Martin J. Bligh
2002-03-21 15:38 ` Itai Nahshon
2002-03-20 19:56 ` Hugh Dickins
2002-03-20 20:23 ` Andrea Arcangeli
2002-03-20 20:35 ` Christoph Hellwig
2002-03-20 21:17 ` Hugh Dickins
2002-03-20 21:38 ` Andrea Arcangeli
2002-03-20 21:34 ` Andrea Arcangeli
2002-03-20 21:46 ` Christoph Hellwig
2002-03-20 22:00 ` Andrea Arcangeli
2002-03-21 19:54 ` Greg KH
2002-03-21 23:29 ` Andrea Arcangeli
2002-03-21 23:49 ` William Lee Irwin III
2002-03-22 1:20 ` Andrea Arcangeli
2002-03-20 22:10 ` Martin J. Bligh
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=200203210421.g2L4Lwx22756@lmail.actcom.co.il \
--to=nahshon@actcom.co.il \
--cc=Martin.Bligh@us.ibm.com \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=andrea@suse.de \
--cc=dmccr@us.ibm.com \
--cc=hch@infradead.org \
--cc=hugh@veritas.com \
--cc=linux-kernel@vger.kernel.org \
--cc=riel@conectiva.com.br \
/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
all inboxes | Powered by JetHome®