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

Reply via email to