I mentioned LinuxPMI (formerly OpenMOSIX) yesterday, and thought it
might be of interest to somebody if I wrote a few more lines on it.
My understanding is that MOSIX was originally a Linux (or possibly some
other unix) fork written by (students of) Moshe Barr. It was
open-sourced in the early 00s, but has since been abandoned since he
decided that supercomputer-style clustering (MPI, OpenMPI etc.) made it
redundant.
OpenMOSIX comprised patches to the Linux 2.4.x kernel which allowed the
main code of an application program to be moved between machines while
it was running, with a stub left on the original system to handle kernel
interaction. It worked at the process (not thread) level, and would
decline to handle a program that it detected was using something
unmappable like shared memory.
It did not attempt to implement a single system image spread over all
available processors, and within limits each collaborating system could
have a different kernel build. Irrespective of that the result was
extraordinarily flexible, with long-runtime processes being moved
between systems depending on resource availability and with a system
being purged on (controlled) shutdown.
As a particular example, it was trivial to start a kernel build on one
system and then to watch it spread over others as they were added to the
pool. Quite frankly, this was one of the most impressive things I've
seen during my time in the industry.
Unfortunately, it never made the transition to kernel 2.6 or to non-x86
processors. I still think this was a mistake on the part of the owner,
since while build farms are good at distributing work at the makefile
level and things like OpenMPI work well for specially-written programs,
OenMOSIX did a particularly good job with arbitrary unmodified code.
There's been an attempt to migrate the kernel patches to Linux 2.6 as
LinuxPMI (Process Migration Infrastructure), but they will only apply to
a very limited version range and are untested. What's more, the 2.6
kernel will only compile on a limited number of mainstream distreaux,
(from memory) I was able to find a small overlap between viable kernel
versions and Debian "Lenny" but that's about as far as I got.
So basically, that's it. Moshe Barr has moved on (he occasionally
appears in some of the IBM mainframe groups on Yahoo!, and this sort of
thing really is a mainframe capability), there's few if any active
programmers in the open source community who understand how it worked,
and I for one am far too low on the kernel and C learning curves to be
much use by myself... not to mention having far too much on my plate as
it is.
http://linuxpmi.org/trac/ plus a FreeNode channel.
--
Mark Morgan Lloyd
markMLl .AT. telemetry.co .DOT. uk
[Opinions above are the author's, not those of his employers or colleagues]
_______________________________________________
fpc-other maillist - fpc-other@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-other