9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: "Ethan Gardener" <eekee57@fastmail.fm>
To: 9fans <9fans@9fans.net>
Subject: Re: [9fans] GSoC 2021 project ideas (WAS: Re: Plan 9 Applying to GSoC 2021)
Date: Wed, 03 Feb 2021 15:07:55 +0000	[thread overview]
Message-ID: <6cdb0486-ddba-4d63-a4cd-a8927c9d5be5@www.fastmail.com> (raw)
In-Reply-To: <20210202082918.GA601@polynum.com>

On Tue, Feb 2, 2021, at 8:29 AM, tlaronde@polynum.com wrote:
> > 
> > Plan 9-related:
> > 
> > (1) Porting the Plan 9 kernel to a microkernel architecture, such as
> >     Mach.  This would give Plan 9 instant access to the whole range of
> >     hardware supported by the underlying microkernel.

Apple's Mach is not a microkernel. The first pure microkernel version of the Mach architecture was 3.0. Apple have stuck with 2.5 all these years. The ability to use drivers from some more popular OS would be nice for users if it works, but there are a host of possible integration and maintenance problems. In fact, I know there are problems I don't quite understand related to differing OS designs. The parts I do understand indicate there could be a huge performance penalty in using drivers in OSs for which they were not designed.

I specifically say "more popular" because popularity affects the number of developers available. In those terms, 9front is already in the rarified stratosphere of well-developed hobby OSs. I'd put only 2 or 3 other OSs as its equal. In the next level up, (orbital space? ;) and not counting the BSDs, Haiku is the only one I can think of off the top of my head (but I have just woken up). We might yet see other OSs implementing 9p so they can use our drivers. :) 

> No. One should re-read the initial papers about Plan9. When Plan9 was
> designed, microkernels were "fashionable". If one reads carefully the
> paper, it's clear that there is a pun intended against microkernels that
> didn't achieve what they were supposed to do---disastrous efficiency
> leading to the rewrite of the microkernels as assembly---a very low
> signal/noise ratio. And a hint: "micro" kernels are usually _huge_, a
> clear sign that something went wrong.

Uh... these arguments are kind-of obsolete. Plan 9 is a hybrid on the macro-micro kernel scale. So are mainstream OSs, having arrived at that point by various routes from whatever their origin was. Microkernel QNX is tiny and, if I understand right, makes service development easier than Plan 9 does. I suggest the huge "microkernels" are really hybrids, but I'll omit reasoning on why.

> As drivers are concerned, there was once a kit supposed to give a wide
> range of kernels, drivers code---I don't know where it is now; I suppose
> it has vanished. And now probably UEFI drivers is a "better than nothing"
> solution.

Uh... UEFI boot services are typically available, but UEFI run-time services are a different thing. A long-time OS dev I know does not expect UEFI runtime services to ever be available on commercial-grade hardware. He is a terrible cynic and I can't remember quite how that debate ended, but in general, it looks like UEFI isn't significantly better than the old PC BIOS for compatibility. As they say on osdev.net, "Writing a bootloader which works on one computer is easy. Writing a bootloader which works on many computers is hard." Note this statement is only about features necessary for booting an OS, whether BIOS or UEFI. If those are bad, features not necessary for booting will be worse. And performance of the kind needed at run-time is hardly a consideration when booting. (I appologise for my poor sentence construction. I've just woken up.)

> My 2 cents,

Ain't the Internet wonderful? You get 2 cents back with a lot of interest! XD

Much of what I've posted here is condensed from osdev.net, especialy the forums. I'd suggest lurking there if you're interested in the difficulties (or otherwise) of driver development. It's not perfect by a long shot, but it is a better place for it than this list.

------------------------------------------
9fans: 9fans
Permalink: https://9fans.topicbox.com/groups/9fans/T1c300cdbd9941edb-M1b3c27671fcffae2e5ffa604
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

  reply	other threads:[~2021-02-03 15:08 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-29 19:23 [9fans] Plan 9 Applying to GSoC 2021 Anthony Sorace
2021-02-01  0:31 ` ~vidak
2021-02-01  9:35   ` sirjofri
2021-02-01 11:07     ` svaderaa
2021-02-01 11:26   ` Bakul Shah
2021-02-02  1:15     ` raingloom
2021-02-01  7:16 ` [9fans] GSoC 2021 project ideas (WAS: Re: Plan 9 Applying to GSoC 2021) cigar562hfsp952fans
2021-02-01 20:46   ` Steve Simon
2021-02-03 14:14     ` Ethan Gardener
2021-02-01 21:47   ` [9fans] GSoC 2021 project ideas sirjofri
2021-02-03 14:07     ` Ethan Gardener
2021-08-06 16:25     ` Jack Johnson
2021-08-19 21:06       ` unobe
2021-09-20  4:52       ` [9fans] " cigar562hfsp952fans
2021-09-20  5:08         ` Conor Williams
2021-09-20  5:11         ` vidak
2021-09-20 15:02           ` ori
2021-09-20  5:43       ` [9fans] " Dave Eckhardt
2021-09-20  7:51         ` Ethan Gardener
2021-09-20  8:23           ` hiro
2021-09-20  8:37             ` Conor Williams
2021-09-20  8:39               ` Conor Williams
2021-09-20  8:45                 ` Conor Williams
2021-09-20  8:52                   ` Conor Williams
2021-09-20  8:58                     ` Conor Williams
2021-09-20 11:06                       ` Conor Williams
2021-09-21  9:01             ` Ethan Gardener
2021-09-20 11:05           ` sirjofri
2021-09-20 11:08             ` Conor Williams
2021-09-20 14:01               ` sirjofri
2021-09-21  9:25             ` Ethan Gardener
2021-02-02  8:29   ` [9fans] GSoC 2021 project ideas (WAS: Re: Plan 9 Applying to GSoC 2021) tlaronde
2021-02-03 15:07     ` Ethan Gardener [this message]
2021-01-19 11:08       ` pouya+lists.9fans
2021-02-03 18:58         ` Ethan Gardener
2021-02-06  2:17     ` David Arroyo
2021-02-03 18:26   ` ori
2021-02-03 23:31   ` Skip Tavakkolian
2021-02-05 16:42   ` Ethan Gardener
2021-02-07 22:59     ` [9fans] Re: GSoC 2021 project ideas cigar562hfsp952fans
2021-02-09  0:26       ` Steve Simon
2021-02-09  1:59         ` [9fans] " Jeff Sickel
2021-02-09  0:34       ` [9fans] " Ethan Gardener
2021-02-02  5:30 ` [9fans] Plan 9 Applying to GSoC 2021 ori
2021-02-02 10:40 ` [9fans] Project idea (was: Plan 9 Applying to GSoC 2021) sirjofri
2021-02-02 16:07 ` [9fans] Re: Plan 9 Applying to GSoC 2021 Jeff Sickel

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=6cdb0486-ddba-4d63-a4cd-a8927c9d5be5@www.fastmail.com \
    --to=eekee57@fastmail.fm \
    --cc=9fans@9fans.net \
    /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).