l4-hurd
[Top][All Lists]
Advanced

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

Re: Let's do some coding :-)


From: Jun Inoue
Subject: Re: Let's do some coding :-)
Date: Sat, 22 Oct 2005 12:51:09 -0700

On Fri, 21 Oct 2005 13:10:20 +0200
Marcus Brinkmann <address@hidden> wrote:

> At Wed, 19 Oct 2005 16:29:19 +0200,
> Bas Wijnen <address@hidden> wrote:
> > The current discussions on the list are very interesting.  I'm happy to see
> > the project getting more attention. :-)  Also, it stimulates me to start
> > writing some code for it, and I hope I'm not the only one. :-)
> >
> > First of all, given the theoretical issues being discussed, any code which 
> > is
> > written at this point will most likely be discarded when we will go for the
> > final solution.  The reason I want to write code anyway is to get a feeling
> > for what must be done.
> 
> Hi Bas,
> 
> I am really happy to hear that you are motivated and want to learn and
> help.  This is wonderful, because it can also go the other way:
> Difficult technical discussions can be tiresome and demotivating.  So,
> your spirit and attitude is really great.
> 
> If you feel you must code something to get your hands on the details
> and get some real-life experience with the things discussed, by all
> means, I don't want to discourage you.  You certainly will learn
> _something_, and that is never wrong.  However, if you want to get a
> feeling for "what must be done", I don't think that programming a
> filesystem or a device driver (this were your examples) would be high
> on my personal list of priorities.  Here is why:
> 
> I raised the issues of persistence, and the goals we can achieve by
> it.  Neal and me believe that these goals are quite important and
> worthwhile, and at the current time we are seriously considering if
> the Hurd should be persistent.  Now, _if_ we are all convinced that we
> want persistence (in whatever fashion), the _last_ thing you want to
> write is a filesystem :) You will want to write filesystems, but
> somewhere down the road, and there are some interesting technical
> problems arising from integrating external stores into a persistent
> system, and we want to explore them (it has something to do with
> becoming pregnant, ask me if you want to know more).
> 
> Device drivers are on the other side of the spectrum.  Everybody seems
> to want to write device drivers these days, and I can't find out why
> the hell?  Maybe you can help me understand it. ;) I find device
> drivers almost border-line boring from a system architecture point of
> view.  In fact, they are a burden.  Architectural wise, there are some
> interesting problems with persistence and device drivers, and it would
> be important to understand this at a deeper level, which I currently
> don't.  Maybe this is something that could interest you?  The other
> issue is that of sandboxing, which is essential, so there are some
> issues around that as well.  Anyway, from a purely pragmatic point of
> view, you _really_ don't want to write _all_ device drivers.  A couple
> of selected drivers could be rewritten, but just look at the GNU/Linux
> source base and ask yourself: Do I want to write all this shit?
> 
> [...]
>
> Again, these notes are not meant to discourage you from anything, but
> I think you will want to know as much as possible to prioritize your
> efforts, so you make them most productive.

Hi everyone, I was busy trying to catch up with all the discussions but
Bas brought me back to reality: I should be coding and learning.
Thanks, Bas.

Marcus, your suggestion seems like a nice idea, but I think I'll go
ahead anyway and (try to) do the things Bas described.  One reason is
because I'm simply too unfamiliar with the Hurd/L4 (I actually
should've kept my mouth shut during the discussions).  Another
reason is that, as a (relative) newcomer, I see a big incentive for a
toy implementation of the Hurd-on-L4, be it with or without all the
things we'd eventually like to end up with.

The major entry barrier for me has been that I couldn't see what or
where the problems were in the Hurd.  Neither did I have anything to
focus on while I read through the code, nor could I figure out why and
to where discussions were heading.  It's hard to understand something
without an idea of what to focus on.  The recent discussion has been
more insightful to me than all the discussions I've seen this summer,
because Jonathan clearly described the problem (thank you Jonathan),
and the discussions were focused on that.  I believe having something
to play with will have nearly the same effect.

Maybe that only goes for me, maybe other people can play with abstract
concepts without the help of a concrete model.  But I can only reason
about my own mind, so I'll try to build that model.

Oh, by the way, this being my first serious systems programming
experience, my code will suck pretty bad.  So don't expect anything
spectacular out of me (very probably you already don't).  Hopefully
I'll get better. :)

As for the masochism with device drivers, for me it was because drivers
were a handy thing to focus on first.  I know they exist in the system,
and I know they're interrelated with several other components.  They
looked like a good place to start bootstrapping an understanding of the
system.  YMMV.

-- 
Jun Inoue
address@hidden




reply via email to

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