|
|
|
|
|
by yellow_and_gray
4227 days ago
|
|
What I haven't understood about Plan 9 is if it does process migration. If you run a multi-threaded, computation-intensive process will Plan 9 automatically distribute the computation to all CPU servers and gather up the results? EDIT: It turns out the article does talk about process migration, but still doesn't answer the distributed computation question. "Process migration is also deliberately absent from Plan 9. Although Plan 9 makes it easy to instantiate processes where they can most effectively run, it does nothing explicit to make this happen. The compiler, for instance, does not arrange that it run on the CPU server. We prefer to do coarse-grained allocation of computing resources simply by running each new command interpreter on a lightly-loaded CPU server. Reasonable management of computing resources renders process migration unnecessary." EDIT2: Ah, there's no automatic thread distribution. But you can fake it but forking multiple processes on multiple CPU servers and sharing their address spaces. Does this mean you have to write your own CPU server allocator? "Plan 9 does not implement lightweight processes explicitly. We are uneasy about deciding where on the continuum from fine-grained hardware-supported parallelism to the usual timesharing notion of a process we should provide support for user multiprocessing. Existing definitions of threads and lightweight processes seem arbitrary and raise more questions than they resolve. We prefer to have a single kind of process and to permit multiple processes to share their address space. With the ability to share local memory and with efficient process creation and switching, both of which are in Plan 9, we can match the functionality of threads without taking a stand on how users should multiprocess." |
|
Vmware and other virtualization vendors as well as the various cluster computing solutions are capable of live process migration, checkpointing and a ton of other nice features that Plan-9 simply doesn't have because at the time it was to be an improvement on Unix and 'Beowulf' was still just the name of a character in a story, Amazon was a figment of Jeff Bezos' imagination and the Google guys were still playing with their Lego.
To really revive Plan-9 would imply diverting resource from a lot of projects that have progressed far beyond where Plan-9 has been stuck for well over a decade. So as much as I love the whole idea behind Plan-9 and the way they've made a better unix I fear that they will never be able to get the kind of push they need to gain parity. Pity, really.
Plan-9 could have been where Linux is now if they had caught the wind at the right time. Community is the single most important factor in whether or not a technology will succeed in the longer term or not. Linus Torvalds beat all of the incumbents by doing one simple thing: opening up the source right from day #1 when the barrier to entry was sufficiently low that he got buy-in from a lot of capable people.