L4Re: C++ or DICE for IPC
Valery V. Sedletski
_valerius at mail.ru
Thu Feb 24 02:49:09 CET 2011
thanks for answering my question so quickly
On Tue, 22 Feb 2011 11:52:11 +0100, Bj rn D bel wrote:
>> 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
Yes, of course, I knew of such a possibility. I can manually call IPC syscall of L4,
but here is so much handwork and so it is not desirable.
>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.
I just prefer using C+IDL than C++ because I believe that OOP must be a property of an OS but not a
single language, like an approach in IBM's SOM/DSOM. In SOM, applications can be written on
any language with IDL bindings, and class hierarchy can use a cross-language inheritance (classes
are encapsulated, so you doesn't have to have a class source for using it, and you can use a C++ class
from a a C program and inherit a C-written class from a
I think, hiding the IPC under C++ iostreams is an interesting approach, but with my point of view,
not good because it ties a programmer to a single language. (But maybe, someone will make the bindings
for C somehow?)
More information about the l4-hackers