public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Werner Almesberger <wa@almesberger.net>
To: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Rik van Riel <riel@conectiva.com.br>,
	Anomalous Force <anomalous_force@yahoo.com>,
	ebiederm@xmission.com,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: holy grail
Date: Sun, 29 Dec 2002 22:32:47 -0300	[thread overview]
Message-ID: <20021229223247.C1363@almesberger.net> (raw)
In-Reply-To: <1041210304.1172.16.camel@irongate.swansea.linux.org.uk>; from alan@lxorguk.ukuu.org.uk on Mon, Dec 30, 2002 at 01:05:04AM +0000

Alan Cox wrote:
> If you care about uptime to the point of live kernel updates

Yes, but there are more applications than improving overall uptime.
E.g. during development or other testing, it would be convenient to
be able to switch back and forth between distinct kernels, without
necessarily taking down the entire machine. Likewise for trivial
hardware changes.

Also, I don't think the instrumentation required would be all that
horrible: things can be done incrementally, and I'd expect a lot
of the functionality to be useful for other purposes, too.

I see a certain trend towards mechanisms that can be useful for
process migration. E.g. the address space manipulations discussed
for UML seem to allow almost perfect reconstruction of processes.
PIDs, signals, anything with externally visible changes in kernel
state that aren't immediately seen by the application (networking,
tty editing, etc.), and such, would need extra instrumentation, of
course.

With this in place, we'd need a set of mechanisms that allow to
find out what the process state actually is like, e.g. determining
what hangs off a certain fd, and what its state is. A lot of this
is already available via /proc, so that may be a starting point.
Programs that talk directly to hardware (e.g. X11) would need a
bit more work.

Then add a bit of synchronization, and we can migrate individual
processes. Add more synchronization, and we can migrate full user
space. Add some really fast disks, and this will be quick enough
for "on the fly" kernel swapping. Add a means for preserving user
memory and swap, and you may not even need fast disks.

Uh, sounds almost too easy ;-)

Of course, as a first step, it would make sense to have a good
look at what projects like (open)Mosix have already done in this
area. After all, they've already solved most aspects of process
migration.

- Werner

-- 
  _________________________________________________________________________
 / Werner Almesberger, Buenos Aires, Argentina         wa@almesberger.net /
/_http://www.almesberger.net/____________________________________________/

  reply	other threads:[~2002-12-30  1:25 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-12-27  0:51 holy grail Anomalous Force
2002-12-27  4:03 ` Werner Almesberger
2002-12-27  7:21   ` Anomalous Force
2002-12-27  7:37     ` Ingo Oeser
2002-12-27 11:30     ` Werner Almesberger
2002-12-28 16:35       ` Anomalous Force
2002-12-28 20:43         ` Rik van Riel
2002-12-29 15:56           ` Anomalous Force
2002-12-29 16:44             ` John Bradford
2002-12-30  1:05           ` Alan Cox
2002-12-30  1:32             ` Werner Almesberger [this message]
2002-12-30  2:45               ` Jeff Dike
2002-12-30  3:55                 ` David Lang
2002-12-30  4:39                   ` Anomalous Force
2002-12-30 17:57                     ` Eric W. Biederman
2002-12-30 13:30               ` Alan Cox
2002-12-29 23:53         ` Werner Almesberger
2002-12-27 13:24     ` Pavel Machek
  -- strict thread matches above, loose matches on Subject: below --
2002-12-30  5:00 Anomalous Force
2002-12-30  6:46 ` Ed Sweetman

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=20021229223247.C1363@almesberger.net \
    --to=wa@almesberger.net \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=anomalous_force@yahoo.com \
    --cc=ebiederm@xmission.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