L4Re: C++ or DICE for IPC

Björn Döbel doebel at os.inf.tu-dresden.de
Tue Feb 22 11:52:11 CET 2011

On 22.02.2011 10:17, Valery V. Sedletski wrote:
> Hi, all.
> I checked out a new L4Re userland and a new Fiasco.OC microkernel. I noticed that it seems, no IDL compiler is used for IPC anymore, but 
> found that, like in l4\pkg\examples\clntsrv\ example, IPC is encapsulated in C++ classes. That's nice, C++ is a feature-rich object oriented 
> language. But what can I do if I want to write a program on other languages, like plain C, Ada etc.? I think, such possibility must exist too, and 
> IDL is a means of implementing such a language neutrality. 
> Is DICE discontinued? And how can I do something with communication code if not using IDL?

Yes, Dice has been discontinued and is no longer supported in L4Re.

For the moment, you can use the C++ IPC streams provided by L4Re for
communication. You can also directly use the C system call bindings for
IPC, which requires you to write the marshalling/unmarshalling code
manually, though.

For other programming languages it would for now be necessary to provide
some kind of bindings to the C or C++ interfaces. Difficulty varies
depending on the language. We're using Lua for configuration purposes
and it's easy to call C functions from Lua code.

There may be support for something IDL-like in the future, but there's
nothing specific to say about it so far.

Dipl.-Inf. Bjoern Doebel    Mail:  doebel at tudos.org
TU Dresden, OS Chair        Phone: +49 351 463 38 799
Noethnitzer Str. 46         Fax:   +49 351 463 38 284
01187 Dresden, Germany      WWW:   http://www.tudos.org/~doebel

More information about the l4-hackers mailing list