public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Willibald Krenn <Willibald.Krenn@gmx.at>
To: linux-kernel@vger.kernel.org
Subject: VMM:  syscall for reordering pages in vm
Date: Mon, 08 Nov 2004 11:51:03 +0100	[thread overview]
Message-ID: <418F4F97.5000805@gmx.at> (raw)

Quick Summary:

(Good or Bad?) Idea of implementing a syscall that allows
for virtual memory page exchange by modifying the physical<->virtual
page mapping. Intended usage: Moving pages in virtual memory without
the need to copy them. Feedback welcome!



Longer Version:

I need some advice from the Linux VMM-gurus on following idea: Suppose
a user-land program wants to re-order memory it has allocated and
suppose further that this program has done allocations in a way that the
reordering can be done by exchanging whole pages in virtual memory, as
indicated below.

Page5  Program.. (part 2)
Page4  swappedout/"free"
Page3  Program.. (part 3)
Page2  Program.. (part 4)
Page1  swappedout/"free"
Page0  Program.. (part 1)

How about implementing a system call that allows the user-program to
exchange pages? In the example above e.g. Page 5/Page 1 and
Page 3/Page 2.
As far as I understand, the system call would 'just' have to change the
physical<->virtual mapping of these pages and the exchange would be done
without having to copy -in the example above- 4*PageSize bytes in 
userland. (Of course there are some additional benefits in the given 
example, as there is no need to swap in a page as a buffer for the 
copy-operation...)


However, before investigating this idea any further, I figured it would 
be best to ask for comments from the experts here.. (I've barely any 
knowledge about the Linux-VMM and therefore my idea might be complete 
and utter nonsense.)
Any kind of feedback is greatly appreciated!


Thanks for all your time,
  Willibald Krenn


             reply	other threads:[~2004-11-08 11:29 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-11-08 10:51 Willibald Krenn [this message]
2004-11-08 12:04 ` VMM: syscall for reordering pages in vm Arjan van de Ven
2004-11-08 12:27   ` Willibald Krenn
2004-11-09  3:05     ` William Lee Irwin III

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=418F4F97.5000805@gmx.at \
    --to=willibald.krenn@gmx.at \
    --cc=linux-kernel@vger.kernel.org \
    /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