Critics on L4 (NOT Re: shared memory Beispiel?)
voelp at os.inf.tu-dresden.de
Wed Aug 31 13:58:15 CEST 2005
yuan Darwin-r62832 wrote:
>Hi L4Ka::Pistachio developers,
>I have read the source code of L4Ka::Pistachio-0.4. & found that some features defined in L4 eXperimental Kernel Reference Manual Version X.2 Revision 5 hasn't been implemented yet. For example, appoint redirector by SpaceControl, IO port mapping, etc.
Please understand that both Pistachio and Fiasco are research prototypes
and that the L4 eXperimental Kernel Reference Manual is indeed
EXPERIMENTAL which means that it may change unnoticed and which also
means that the prototypes may differ from the specification. The missing
features that you state are published, e.g., at
http://l4ka.org/projects/pistachio/ia32/ under the section Missing
Features / Known Bugs for the Pistachio kernel , respectively at
http://os.inf.tu-dresden.de/fiasco/status.html for Fiasco.
>I tried to checkout the newest source code from CVS, & the CVS server cvs.l4ka.org couldn't be reached.
I had no problems reaching the server. Though I cannot confirm that it
was up all the time.
>When those features are going to be implemented?
Fiasco implements IO Flexpages. Neither Redirectors nor Clans and Chiefs
are currently implemented in Fiasco and probably never will. I cannot
speak for plans regarding Pistachio.
>Now that those features are very important for implementing a flexible OS on L4 u-kernel.
Both redirectors and IO flexpages are not essential to get a system up
and running. Their purpose is to control and restrict communication
between threads respectively to prevent a thread from reading / writing
IO-ports. Feel free to implement those features if you need them.
Can you elaborate on why you thing missing these features prevents
someone building a flexible OS on L4?
>Seems that there are so many differences between L4Ka::Pistachio and Fiasco. Is there a stardard L4 specification?
There is a standard L4 Specification: L4-V2 by Jochen Liedtke. Also
there is the eXperimental specification you already found which is the
defacto standard for L4-V4 kernels. The main difference between
Pistachio and Fiasco is that the former implements L4-V4, the latter
implements L4-V2 whereby some experimental features have been
incorporated into Fiasco to better suite our user level software's
needs. As you will see Fiasco already implements some parts of the L4-V4
>I think L4Ka::Pistachio is more clean & flexible, why Fiasco put so many complicated & inflexible policies inside L4 kernel?
Which policies are you referring to? Can you elaborate on these points?
>BTW, has any OS or system been built on L4Ka::Pistachio? As I know, L4-Linux is built on Fiasco, but I don't like its design. I hope I can get a reference system based on L4Ka::Pistachio.
Lets see, there is L4 Linux which runs on both Fiasco and Pistachio, L4
Env, Drops runs on Fiasco, Kenge, Iguana and Wombat on Pistachio. Also
there is Mungi, Perseus, L4 Hurd, etc.
Have a look at l4hq.org and you may find out much more.
Why don't you like the design of L4Linux or do you mean Fiasco?
Some more final words: It is common practice on mailing lists to start a
new topic if you are referring to a totally different topic.
Department of Computer Science
Institute for System Architecture
Tel: +49 (351) 463-38350
Fax: +49 (351) 463-38284
More information about the l4-hackers