L4Linux and L4Re communication

Irvanda Kurniadi irvanda.k at gmail.com
Fri Apr 25 10:27:45 CEST 2014

On Fri, Apr 25, 2014 at 4:24 PM, Björn Döbel <doebel at os.inf.tu-dresden.de>wrote:

> Hash: SHA1
> Hi,
> > In term of running hello world in L4Linux, I can run it by passing
> > -m32 -static in the compilation process. But, now I'm having a
> > problem in running the mpi-based application on L4Linux which this
> > apps needs the mpi library to be able to run. I have ported the mpi
> > library and run the apps over L4Re by using Ned. So, based on the
> > explanation above, I don't understand how to run the mpi-based
> > program on top L4Linux in which the L4Linux definitely doesn't have
> > mpi-library because the mpi-library is existed in L4Re. Is it like
> > this, the l4linux kernel needs the device driver to communicate
> > with external L4 apps (in my case mpi-base apps), then to trigger
> > the communication we should make the kernel module (linux program
> > to talk to the l4linux kernel). Am I right? Can you point one
> > example, which is similar with my case, that can be followed by
> > me?
> I see two different scenarios here:
> 1. Your MPI application is supposed to run as a Linux application in
> L4Linux
> - -> In this case all you need is an MPI library installed in the Linux
>    distribution that you boot L4Linux into. E.g., if you are using
>    some custom ramdisk, simply add a (Linux) MPI library to this disk
>    and your program will then use it. No L4 magic necessary at all.
> 2. Your MPI application is supposed to run directly on L4Re
> - -> In this case you don't need any Linux or L4Linux in the setup.
>    You build your L4Re program and link it with your ported MPI
>    library and then it should run.
> Does that answer your question or am I missing your point?

Yes it does. In my case I think I only need to run my application on
L4linux, but since the beginning I misunderstood that I have to port the
library on L4. I have wasted so much time in doing scenario 2.

What is the differences between running application over L4linux and
running application as a task in L4Re? Can I say that both of them are
Operating System that run over virtualization? Then, let's say Task A run
mpi-based application over L4Linux, and Task B run mpi-based application
directly form L4re. if I run 2 VMs which each VM contains task A (scenario
A), and then after that I run 2 VMs which each VM contains task B (scenario
B), which each VM use the same number of cpu cores, then do both of
scenarios perform the same virtualization?

> Regarding MPI and L4Re: We had a student port MPICH to L4Re last year.
> His thesis is at http://os.inf.tu-dresden.de/papers_ps/jahn-beleg.pdf
> but I'm not sure if his code ever made it to a public repository (aka:
> i don't have it ;) ).

 It's OK Bjoern, I had contacted the author of that thesis and got the code.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://os.inf.tu-dresden.de/pipermail/l4-hackers/attachments/20140425/f96cb7e4/attachment.html>

More information about the l4-hackers mailing list