l4-hurd
[Top][All Lists]
Advanced

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

Re: Broken dream of mine :(


From: Michal Suchanek
Subject: Re: Broken dream of mine :(
Date: Wed, 16 Sep 2009 11:18:07 +0200

2009/9/15 Bas Wijnen <address@hidden>:
> On Tue, Sep 15, 2009 at 08:19:19PM +0200, Michal Suchanek wrote:
>> 2009/9/15 Bas Wijnen <address@hidden>:
>> > I have written a toy kernel for x86 some time ago, in the spirit of
>> > discussions I had on this list with Shapiro and others.  That kernel was
>> > written in C.  It worked, and I am still quite happy about it.  If
>> > others would have joined, it might have become a serious kernel, maybe
>> > even the basis for the Hurd.
>> >
>> > However, nobody did, and I moved on as well.  Recently, I started
>> > writing a new kernel[0], for a mips-based mini-pc, mostly with the same
>> > ideas, but now in C++[1].  Of course I'm not using any libraries, so no
>> > new, virtual member functions, exceptions, or any other fancy things.
>> > But I do sort my code in classes with normal member functions and
>> > namespaces, and I do use default function arguments and a few templates
>> > (but not the STL, because it uses new).
>> >
>>
>> When you announced that you are writing this kernel you said something
>> along the lines that it will be a sort of proof-of-concept
>> implementation of some not-yet-finished ideas.
>
> It was.  That was the toy kernel I was talking about. ;-)  If one or two
> people would have really liked it and helped me improve it, it might
> have become more than a toy.

For me to like a kernel I would need some information about properties
or concepts the kernel implements that I find interesting. The posts I
read were vague at best.

>
> However, I currently prefer to focus on Iris, because with her target
> hardware, it is more likely that people will actually want to use it.  I
> don't see any way to get people to change their desktop system.  After
> all, a new system will for quite some time have problems such as missing
> drivers.

I would rather work on system that runs on x86 because it's easier to
find hardware for testing once the system can run. However, I think I
can get at some arm based access points or a SGI O2 easily (iirc you
said the target is arm and mips) so this is not that much of a
problem, especially similar access points should be easy to get
anywhere.
>
>> I was somewhat curious about the results because the kernel was
>> supposed to have a resource management which was based on ideas that I
>> could not imagine working.
>
> Well, it can run nethack. ;-)  That does mean it is almost completely
> functional.  What do you mean by "not working"?  That is doesn't run, or
> that it is extremely slow?  I didn't do any benchmarks, and obviously
> nethack isn't a heavy application, so not having performance issues
> there doesn't mean anything.  Also, as I wrote in the announcement, I
> didn't even try to make my libc fast; it was only intended to make
> nethack run so I could see (and show) that the kernel worked.

Performance is quite relative because there are many measurements that
can be applied which are relevant to different cases.

For one startup time is important for desktops and 24/7 services.

However, systems with long startup time but short resume time and
suspend support would rate better than systems with mediocre startup
time and no suspend support for this purpose.
Similarly a 24/7 service that runs on reliable system that needs very
few restarts and does not crash may rate better than service on a less
reliable system with shorter startup time.

CPU performance is important for batch processing but desktops and
many other application may be more interested in event latency - the
time it takes to process a keypress or a packet received from the
network.

So extremely slow is relative. You should be able to find an
application for which the kernel performs decently.

For the kernel to be interesting for me I would want to see something
different from the other kernels available. The resource management
was supposed to be such thing. From what I read on the list I never
get a clear idea how that is supposed to work and never saw an update
on that.

So is the resource management finished and working somehow? Is it
documented somewhere?

Or does it work without one? It's certainly possible to run a system
without one, most popular systems work like that these days.

Thanks

Michal




reply via email to

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