l4-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: IDL4 and flexible bindings


From: Espen Skoglund
Subject: Re: IDL4 and flexible bindings
Date: Thu, 3 Jul 2003 12:19:45 +0200

[Ludovic Courtès]
> Hi,
> Those of you who will attend the Libre Software Meeting next week
> will have the opportunity to hear about a component-based OS
> framework called THINK [1].  One of its potential advantages over
> the multi-server approach is that components are not necessarily
> servers: bindings between components are very flexible and can be
> implemented by a function call, a system call or an RPC.  The type
> of a binding between two components can even be changed dynamically
> IIRC.  This gives the ability to interpose on bindings and
> dynamically change the implementation of a given service.

> Looking at the `weaver' example that comes with IDL4 1.0.0, it seems
> that IDL4 could be used pretty much like an open compiler.  For
> example, it could be used to develop the same kind of flexible
> bindings as the one used in THINK. :) An interface for controlling
> bindings could be created for each binding and it would, for
> instance, allow to load a monitor (e.g. in the form of a dynamic
> library) which would be automatically notified of any call to a
> function defined in the interface.  This would make interposition
> and dynamic reconfiguration easy to implement, and with relatively
> low overhead compared to stacked servers.

> Has there been any thoughts on this?

The L4Ka team has, as you might know, been involved in componentized
systems.  A multi-server system where every single component resides
within each own protection domain is only the extreme case of such a
system.  We are very well aware of the possibility of having multiple
components within a single protection domain---either as separate
threads (e.g., for synchronization reasons), or as function calls.
Indeed, the various degrees of connectivity between components is
something that we envision as a parameter set during system
configuration/build time.  An IDL compiler is then crucial if the
component developers are to have a component-connectivity-agnostic
view on the development process.  However, in order to support the
various degrees of connectivity we are currently occupied with
investigating the most extreme case of component connectivity, i.e.,
multi-server systems.

        eSk





reply via email to

[Prev in Thread] Current Thread [Next in Thread]