9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: David Leimbach <leimy2k@gmail.com>
To: Fans of the OS Plan 9 from Bell Labs <9fans@cse.psu.edu>
Subject: Re: [9fans] GNU binutils: you can't make this shit up
Date: Thu, 19 Jan 2006 08:05:34 -0800	[thread overview]
Message-ID: <3e1162e60601190805h73e4526m38cfbd0cb35e47ba@mail.gmail.com> (raw)
In-Reply-To: <20060119082946.19064.qmail@web32707.mail.mud.yahoo.com>

[-- Attachment #1: Type: text/plain, Size: 3372 bytes --]

On 1/19/06, Eirik Johnson <falmarian@yahoo.com> wrote:
>
> There is something to be said for microkernels
> they allow for a lot less headaches with kernel
> development, and it could drastically improve plan 9's
> portability, a key feature.



Disagree, to some extent.  Microkernels tie you down to a particular set of
abstractions for writing OS code.  I think a lot of time is spent trying to
figure out how to morph the primitives that are exposed by the microkernel
API into what you're trying to express in your kernel.

EROS, for example, multiplexed a single system call to create all the OS
primitives for the system.
L4 really only has 7 system calls, but also has several APIs available that
combine things in different, and hopefully not pessimistic ways to make
things easier.  It's a layer of abstractions on another layer of
abstractions.



> Also, the multi-server approach taken by the GNU/Hurd
> is innovative and well suited to SMP and distributed
> environments.  However, the FSF has a role and the GNU
> project is (and should be) a side project for them.
> The real problem with it, though, is that C (like plan
> 9) was designed with portability as a major feature,
> and the GNU extensions in GCC aren't helping
> portability.  It's kinda like microsoft's C#, they may
> be wonderful features, but you missed the whole point.


True, and this may have caused very serious problems with development.  For
a long time, possibly even still today you were limited to 2GB partitions.
Also there was no pppd driver.  I have a hunch that their multi-server
design stuck them into a place where these things became hard to do
correctly.  I have seen 2 different patches floating around for Hurd to add
>2GB partitions as well as pppd [borrowed from FreeBSD in fact] but neither
seemed to make it into into the main source tree because, it just wasn't
quite correct.

At some point, HURD developers became so frustrated with Mach, they switched
to L4.  I followed a lot of this development as a lurker... and I'd have to
say that it doesn't look good again for progress and people inside FSF are
questioning the design *again*.

Now those examples aside, I know for a fact you can write useful OSes with a
microkernel.  I've seen and used a few of them.  Someone even took the Io
programming language and ported it to L4 to make what appears to be
something on the lines of a ROM BASIC for an OS :).  This might be really
good in certain embedded applications, who knows.

Also the HoP/House project, which takes the GHC Haskell runtime and turns it
into an OS via a special Monad for hardware abstractions, looks like it may
also get ported to L4.

There's no magic wand for OS development.

> --- alexandr babic <alexandr@babi.cz> wrote:
>
> > i think 9fans should write plan9 native programs not
> > trying other waste
> > to import.
> >
> > alexandr.
> >
> >
> > Bruce Ellis pí¹e v Èt 19. 01. 2006 v 00:45 +1100:
> > > anyone who is serious trying anything starting
> > with "g" with
> > > kenc (apart from "grep") is barking up the wrong
> > > mountain ave.
> > >
> > > brucee
> > >
> >
> >
> >
>
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
>

[-- Attachment #2: Type: text/html, Size: 4252 bytes --]

  parent reply	other threads:[~2006-01-19 16:05 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-01-16  1:50 Ronald G Minnich
2006-01-16  2:00 ` Andy Newman
2006-01-16  3:10   ` Ronald G Minnich
2006-01-16  3:19     ` erik quanstrom
2006-01-16  3:47       ` David Leimbach
2006-01-18 12:55         ` Eirik Johnson
2006-01-18 13:45           ` Bruce Ellis
2006-01-18 14:00             ` alexandr babic
2006-01-18 15:45               ` Ronald G Minnich
2006-01-18 16:45                 ` Bruce Ellis
2006-01-18 17:00                   ` alexandr babic
2006-01-18 17:04                     ` Bruce Ellis
2006-01-18 17:00                 ` David Leimbach
2006-01-18 17:14                   ` Ronald G Minnich
2006-01-19  8:29               ` Eirik Johnson
2006-01-19 10:34                 ` Charles Forsyth
2006-01-19 10:43                   ` Bruce Ellis
2006-01-19 10:46                 ` erik quanstrom
2006-01-19 10:52                   ` Bruce Ellis
2006-01-19 15:41                 ` Ronald G Minnich
2006-01-19 16:05                 ` David Leimbach [this message]
2006-01-19 16:15                   ` [9fans] GNU binutils: you can't make this stuff up Brantley Coile
2006-01-19 17:16                     ` Bruce Ellis
2006-01-19 22:24                     ` erik quanstrom
2006-01-16 17:43       ` [9fans] GNU binutils: you can't make this shit up Ronald G Minnich
2006-01-16  3:46     ` David Leimbach
2006-01-16 17:44       ` Ronald G Minnich
2006-01-16 19:09         ` Bruce Ellis
2006-01-16  7:48     ` Andy Newman
2006-01-16  9:08       ` Bruce Ellis
2006-01-16 12:06       ` erik quanstrom
2006-01-16 13:23         ` Bruce Ellis
2006-01-16 19:17 jmk
2006-01-16 19:26 ` Bruce Ellis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3e1162e60601190805h73e4526m38cfbd0cb35e47ba@mail.gmail.com \
    --to=leimy2k@gmail.com \
    --cc=9fans@cse.psu.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).