Critics on L4 (NOT Re: shared memory Beispiel?)

yuan Darwin-r62832 darwin.yuan at
Fri Sep 2 06:51:05 CEST 2005

	Please see my comments below.

-----Original Message-----
From: l4-hackers-bounces at [mailto:l4-hackers-bounces at] On Behalf Of Adam Lackorzynski
Sent: Friday, September 02, 2005 7:14 AM
To: l4-hackers at
Subject: Re: Critics on L4 (NOT Re: shared memory Beispiel?)

> Hi,

> first, please use a proper quoting style. Your style is very unusual and irritating.

    First of all, I'd like to say that I won't use your "proper" quoting style, because that's just one of the styles which are used widely. In my mail system, the style which I used is set automatically. & more than 20,000 employees of our company around world are using this. If you don't like it, you don't have to read it.

    However, because this mail is a reply for you. To make you feel comfortable, I made the style as you want by HAND.

    Again, as I said before, I'm a junior of L4. However, I have been working in OS fields for many years. So, don't tell me any stupid knowledge & ask any stupid quesiton.

On Wed Aug 31, 2005 at 21:00:16 +0800, yuan Darwin-r62832 wrote:
> > > >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.
> >[Darwin Yuan] I didn't read the source code of Fiasco. However, from 
> >the documents I got from its website, I found that Clans & Chiefs was 
> >implemented in its kernel ( It might be removed now). But I don't

> C&C were never implemented, and will never be, in any kernel.

As I said, I didn't the source code of Fiasco, & will never be. Now that the documents declare that, I believed that. Thanks anyway for your telling me this. 

> think it's a good design that this policy was involved in L4 kernel, 
> now that L4 claims it's a real microkernel. However, I think those 
> kind of policies could be implemented outside kernel. Therefore, I 
> think Redirector is a good mechanism to achieve those kind of 
> policies. That's why I think redirector is very important for 
> implementing a flexible system on L4.

> So what we have now are inflexible systems?

If there isn't any inflexible system, why do we need microkernels?

> > >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.
> >
> > [Darwin Yuan] Yes, That's true. However, a real system should makes 
> > peripheral equipment work. IO Fpage is very essential for implementing 
> > hardware driver.

>Not having IO protection doesn't mean you cannot use drivers! Not having IO protection means that everyone 
>can whack your system because everyone runs with IO privileges, that's it. And you need to do this because 
>you cannot have drivers otherwise. We lived with that for some time but now we have proper IO protection so everything in fine in this regard.

Of course I know we can use drivers by opening IO priviledges for all users. However, providing protection is a very essential responsibility for any secure OS. I'd pleased that you have achieved this.

> > >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?
> > 
> >[Darwin Yuan] For example, Clans & Chiefs.   Also, I think "Task" is a

>That's not the fault of Fiasco, C&C is in the V2 spec. These are different things. And as already mentioned C&C where never implemented 
>as some clever guys noticed before that there are some problems.

Everything I know about Fiasco is from V2 spec & other documents from Fiasco website. Frankly speaking, I don't like that spec. If that spec is the first L4 spec I read, I will definitely lost the interests in researching L4. Fortunately, X2 is the one.

> >redundant abstract/concept, "Address Space" is a much better one. By

>What's the difference between Task and AS?

Task & AS are basically identical. However, when we talk about genenel OS concept, we will say that a Task has its own AS. & may owns some of threads. Even it's hard to figure out the difference, but that's the difference. L4 X2 spec use the AS concept instead of Task, will provide more flexible mechanism. For example, L4 X2 spec allows a non-interrupt thread migrated to another AS. If we use the concept "Task", this mechanism will cause confusion. Because from the point of general OS concept view, a thread transfers between Tasks is a little strange. That's why I think using the term "AS" is a better choice than using "Task".
> >"Thread" & "Address Space", L4Ka::Pistachio makes the abstract very 
> >refined, and allows to construct very flexible system. All together, 
> >the APIs of X.2 is much better than X.0.

>X.2 is the successor of V2/X0 so this is no real surprise. But in which way does the API decide how one's building flexible or inflexible systems?

API is the interface provided by OS/kernel to outside. It's the reflection of OS/kernel mechanism. If a OS/kernel don't have a good support for build flexible system, can you easily do it?  Another example, if hardware didn't provide MMU, can you easily implement VM?

> >Why don't you like the design of L4Linux or do you mean Fiasco?
> >
> >[Darwin Yuan] Actually, I don't like the APIs & mechanism of Fiasco. 
> >Now that L4Linux is based on those APIs & mechanism, I don't like this 
> >version of L4Linux.

> Cool. So what would I need to do to make it please you?

Actually, you don't need anything. Because L4 x.2 & L4Ka::Pistachio are there. Thanks anyway.

Adam                 adam at

l4-hackers mailing list
l4-hackers at

More information about the l4-hackers mailing list