[Top][All Lists]

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

Re: Hurd Sommer of Code infos

From: Carl Fredrik Hammar
Subject: Re: Hurd Sommer of Code infos
Date: Tue, 18 Sep 2007 20:59:15 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1 (gnu/linux)

Arne Babenhauserheide <arne_bab@web.de> writes:
> Hi, 

Hi Arne!

Sorry for the late reply, your mail slipped under my radar for a

> Can you post information about the summer of code projects for the HURD? 

I was the student that was involved in the only Hurd project in GSoC
this year, with Richard Braun as my mentor.  I'm not aware if there
have been any projects in previous years of GSoC.

My project was to design and implement `libchannel', which were
intended to be a framework for clean and efficient implementation of
translators that correspond to character device drivers.  That is
device files for stuff like, input devices, sound and network.

There are many cases where one wishes to stack such translators.  Take
networking as an example, you may wish to have a pseudo network device
that balance traffic over two real devices.

The problem with stacking translators this way is that it's
inefficient, for every RPC to the balancer a RPC is made to each of
the real devices.  Now a RPC isn't *that* expensive, but in a more
complex example with more layers the overhead of these RPCs makes
such a stacking infeasible.

This is were libchannel comes in.  By using libchannel a translator
can provide a description of what it does (data and which code it
uses), which a translator layered untop can fetch and use directly.
Now only those RPCs that are strictly required needs to be sent.

There are also some other benefits to libchannel, but they are minor
and I don't want to bore you with the details.  ;-)

> How did they work out? 
> Best wishes, 
> Arne

Well it ended up mostly completed, there are some small things I
haven't gotten to yet and it needs more testing.  It was passed by
Richard, so officially it's a success.

However, while I managed to deliver something matching the
specifications.  I do now, after much discussion with Olaf, believe
that it's both too inflexible to make use of in many specific cases
and that a more general solution is desired.  While the discussion
isn't over yet, it seems libchannel will be broken up into several
pieces that, one or more general parts and specialized parts, like
`libaudio' and `libnetwork' or similar.  So work on libchannel will

I hope I answered your questions, your questions weren't very
specific.  I would be happy to answer any follow up questions!


reply via email to

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