From: Matthew Dillon <dillon@apollo.backplane.com>
To: Rik van Riel <riel@conectiva.com.br>
Cc: Chris Wedgwood <cw@f00f.org>,
linux-mm@kvack.org, linux-kernel@vger.rutgers.edu,
Linus Torvalds <torvalds@transmeta.com>
Subject: Re: RFC: design for new VM
Date: Fri, 4 Aug 2000 08:41:28 -0700 (PDT) [thread overview]
Message-ID: <200008041541.IAA88364@apollo.backplane.com> (raw)
In-Reply-To: <Pine.LNX.4.21.0008031243070.24022-100000@duckman.distro.conectiva>
Three or four times in the last year I've gotten emails from
people looking for 'VM documentation' or 'books they could read'.
I couldn't find a blessed thing! Oh, sure, there are papers strewn
about, but most are very focused on single aspects of a VM design.
I have yet to find anything that covers the whole thing. I've written
up an occassional 'summary piece' for FreeBSD, e.g. the Jan 2000 Daemon
News article, but that really isn't adequate.
The new Linux VM design looks exciting! I will be paying close
attention to your progress with an eye towards reworking some of
FreeBSD's code. Except for one or two eyesores (1) the FreeBSD code is
algorithmically sound, but pieces of the implementation are rather
messy from years of patching. When I first started working on it
the existing crew had a big bent towards patching rather then
rewriting and I had to really push to get some of my rewrites
through. The patching had reached the limits of the original
code-base's flexibility.
note(1) - the one that came up just last week was the O(N) nature
of the FreeBSD VM maps (linux uses an AVL tree here). These work
fine for 95% of the apps out there but turn into a sludgepile for
things like malloc debuggers and distributed shared memory systems
which want to mprotect() on a page-by-page basis. The second eyesore
is the lack of physically shared page table segments for 'standard'
processes. At the moment, it's an all (rfork/RFMEM/clone) or nothing
(fork) deal. Physical segment sharing outside of clone is something
Linux could use to, I don't think it does it either. It's not easy to
do right.
-Matt
Matthew Dillon
<dillon@backplane.com>
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux.eu.org/Linux-MM/
next prev parent reply other threads:[~2000-08-04 15:41 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-08-02 22:08 Rik van Riel
2000-08-03 7:19 ` Chris Wedgwood
2000-08-03 16:01 ` Rik van Riel
2000-08-04 15:41 ` Matthew Dillon [this message]
2000-08-04 17:49 ` Linus Torvalds
2000-08-04 23:51 ` Matthew Dillon
2000-08-05 0:03 ` Linus Torvalds
2000-08-05 1:52 ` Matthew Dillon
2000-08-05 1:09 ` Matthew Wilcox
2000-08-05 2:05 ` Linus Torvalds
2000-08-05 2:17 ` Alexander Viro
2000-08-07 17:55 ` Matthew Dillon
2000-08-05 22:48 ` Theodore Y. Ts'o
2000-08-03 18:27 ` lamont
2000-08-03 18:34 ` Linus Torvalds
2000-08-03 19:11 ` Chris Wedgwood
2000-08-03 21:04 ` Benjamin C.R. LaHaise
2000-08-03 19:32 ` Rik van Riel
2000-08-03 18:05 ` Linus Torvalds
2000-08-03 18:50 ` Rik van Riel
2000-08-03 20:22 ` Linus Torvalds
2000-08-03 22:05 ` Rik van Riel
2000-08-03 22:19 ` Linus Torvalds
2000-08-03 19:00 ` Richard B. Johnson
2000-08-03 19:29 ` Rik van Riel
2000-08-03 20:23 ` Linus Torvalds
2000-08-03 19:37 ` Ingo Oeser
2000-08-03 20:40 ` Linus Torvalds
2000-08-03 21:56 ` Ingo Oeser
2000-08-03 22:12 ` Linus Torvalds
2000-08-04 2:33 ` David Gould
2000-08-16 15:10 ` Stephen C. Tweedie
2000-08-03 19:26 ` Roger Larsson
2000-08-03 21:50 ` Rik van Riel
2000-08-03 22:28 ` Roger Larsson
2000-08-04 13:52 Mark_H_Johnson
[not found] <8725692F.0079E22B.00@d53mta03h.boulder.ibm.com>
2000-08-07 17:40 ` Gerrit.Huizenga
2000-08-07 18:37 ` Matthew Wilcox
2000-08-07 20:55 ` Chuck Lever
2000-08-07 21:59 ` Rik van Riel
2000-08-08 3:26 ` David Gould
2000-08-08 5:54 ` Kanoj Sarcar
2000-08-08 7:15 ` David Gould
[not found] <87256934.0072FA16.00@d53mta04h.boulder.ibm.com>
2000-08-08 0:36 ` Gerrit.Huizenga
[not found] <87256934.0078DADB.00@d53mta03h.boulder.ibm.com>
2000-08-08 0:48 ` Gerrit.Huizenga
2000-08-08 15:21 ` Rik van Riel
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=200008041541.IAA88364@apollo.backplane.com \
--to=dillon@apollo.backplane.com \
--cc=cw@f00f.org \
--cc=linux-kernel@vger.rutgers.edu \
--cc=linux-mm@kvack.org \
--cc=riel@conectiva.com.br \
--cc=torvalds@transmeta.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