On Jan 8, 2010, at 1:43 PM, Tim Newsham wrote:

>> I might be having a hard time with the Japanese, but my impression is that
>> the plan 9 processes are now also L4 userspace servers.  This makes me think
>> they're not running a paravirtualized Plan 9 on L4, but put L4 INTO Plan 9.
> 
> The paper I found online said they're currently implementing plan9
> as a single server and eventually plan to split it off into multiple
> servers.  Either way, the plan 9 services sit on top of L4. I still
> dont understand why they necessarily have to be built with the same
> toolchain that builds the L4 kernel itself.  Even if its embedded
> into the kernel as a root server, shouldn't it be possible to compile
> it separately and embed the resulting binary?
> 
> fwiw I haven't peekd at the code.

Of course it all depends on what base of L4 they are working with, but you'd 
need to generate Plan 9 native versions of the L4 IPCs and IPC mechanisms 
(which in many ways is the crux of the L4 microkernel).  L4 tends to be super 
optimized so its likely there are all sorts of hairy GCC-isms in the way the 
structure components of the IPCs are constructed as well as architecture 
specific aspects of IPC.  Given the relative complexity and trickery at work 
within L4, porting Plan 9 to GCC is likely much more straightforward as the 
code base you are starting with is easier to understand.

Of course, IMHO the more interesting thing beyond creating a "Plan 9 
personality" for L4 is to look at using the L4 microkernel as a mux for 9P 
messages and building a system based on that (versus the standard L4 IPC 
protocol).

     -eric


Reply via email to