The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Dan Cross <>
To: Clem Cole <>
Cc: Paul Ruizendaal <>,
	The Eunuchs Hysterical Society <>
Subject: [TUHS] Re: Porting the SysIII kernel: boot, config & device drivers
Date: Sat, 31 Dec 2022 16:10:47 -0500	[thread overview]
Message-ID: <> (raw)
In-Reply-To: <>

On Sat, Dec 31, 2022 at 2:08 PM Clem Cole <> wrote:
> On Sat, Dec 31, 2022 at 10:02 AM Dan Cross <> wrote:
>> [snip]
>> SBI was/is an attempt to define a common interface to different
>> devices using RISC-V CPUs, but it's growing wildly and tending more
>> towards UEFI+ACPI than something like OpenBoot, which was much
>> simpler.
> UEFI+ACPI got/gets a bad rep because of the original IBM BIOS implementations.

I'm going to push back on this slightly: UEFI+ACPI get a bad rap
because, well, they're really pretty bad. Oh sure, some things are
reasonable: the ACPI table formats aren't awful. But I've been inside
a couple of these now and phew golly, they stink pretty badly. The
code is poor quality, and encourages running blobs of really dubious
provenance. See below....

>> In general, the idea of a BIOS isn't terrible: provide an interface
>> that decouples the OS and hardware.
> Exactly - the idea is actually a good one.  But the problem was the BIOS designed/implemented by HW people, but OS folks.  Things like concurrency minimum use of the CPU was not in the higher order bits.
>> But in practice, no one has come
>> up with a particularly good set of interfaces yet. Ironically,
>> BSD-style autoconfig might have been the best yet.
> ??Maybe because it was OS types who knew what the OS needed to discover/report/deliver back from the HW.

Perhaps this is what it is, but I think taking a step back and looking
at the problem more generally, it's because they're mutated into
solving the wrong problem. Consider AML: isn't this something that
ought to be handled in, I don't know, a device driver? Yes, that
driver may need access to some platform-specific firmware to abstract
the details, but an entire virtual machine running random code to
provide abstractions for the firmware writers who are running,
basically, a parallel operating systems is a bit on the nose. This
goes way beyond OpenBoot's forth modules on option ROMs (which were
kind of a nifty idea for device discovery and such things).

Mothy Roscoe gave a really interesting keynote at OSDI'21:

I love how he describes the interfaces we have now as having
"congealed." But in some ways, UEFI+ACPI are the antithesis of what
the OS should be doing.

        - Dan C.

  reply	other threads:[~2022-12-31 21:13 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-12-30 18:25 [TUHS] " Paul Ruizendaal
2022-12-30 18:56 ` [TUHS] " Steve Nickolas
2022-12-31 14:59 ` Dan Cross
2022-12-31 19:08   ` Clem Cole
2022-12-31 21:10     ` Dan Cross [this message]
2022-12-31 21:39       ` Clem Cole
2022-12-31 21:52         ` Dan Cross
2022-12-31 23:25         ` Dave Horsfall
2023-01-01  1:02           ` Rob Pike
2023-01-01  1:16             ` George Michaelson
2023-01-01  1:40               ` Larry McVoy
2023-01-01  2:29                 ` Warner Losh
2023-01-01  1:24             ` Larry McVoy
2022-12-31 22:38       ` Theodore Ts'o
2022-12-31 22:55         ` Marc Donner
2023-01-01  3:55         ` Dan Cross
2023-01-01 20:29         ` Paul Ruizendaal
2023-01-01 21:26           ` G. Branden Robinson
2023-01-01 21:31             ` Rob Pike
2022-12-31 21:11     ` Paul Ruizendaal
2022-12-31 20:02   ` Paul Ruizendaal
2022-12-31 21:04     ` Warner Losh
2022-12-31 21:41     ` Dan Cross
2023-01-01  3:08     ` Warner Losh
2023-01-01  4:40       ` Dan Cross
2023-01-01  8:05     ` Jonathan Gray

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:

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

  git send-email \ \ \ \ \ \

* 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).