The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Dan Cross <crossd@gmail.com>
To: "Theodore Ts'o" <tytso@mit.edu>
Cc: The Unix Heritage Society <tuhs@tuhs.org>
Subject: [TUHS] Re: Question about BSD disklabel history
Date: Wed, 3 Jan 2024 09:39:06 -0500	[thread overview]
Message-ID: <CAEoi9W6XSLxp9mOZtxujFLvhQBjXPQFQgj4uZyux3rotp097+g@mail.gmail.com> (raw)
In-Reply-To: <20240103033345.GA108362@mit.edu>

On Tue, Jan 2, 2024 at 10:33 PM Theodore Ts'o <tytso@mit.edu> wrote:
> On Tue, Jan 02, 2024 at 03:48:28PM -0500, Dan Cross wrote:
> > On Sun, Dec 31, 2023 at 6:25 PM Larry McVoy <lm@mcvoy.com> wrote:
> >
> > Ironically, the UEFI people have done something _similar_ to OF in the
> > form of AML (ACPI Machine Language), which is a byte-code
> > serialization ASL (ACPI Source Language); presumably that's system
> > independent. The idea of a p-code representation is about where the
> > similarity ends, though: AML exposes a mechanism to talk to the UEFI
> > OS for a whole slew of stuff, which is rather unlike what OF did
>
> [Ted's excellent history of ACPI/UEFI elided for brevity.]
>
> Normally, once the OS has gotten to a certain point in its OS
> initialization, the OS can "terminate UEFI services".  At that point,
> the OS can no longer call into the UEFI functions --- but it also
> doesn't have to worry about the UEFI code servicing an interrupt take
> taking control of the CPU away from the OS.

Warner corrected this: UEFI remains resident and callable.

> However, the OS can still execute various ACPI functions, assuming the
> OS has its own AML interpreter.  (Of course, the UEFI BIOS has its own
> AML interpreter --- and scheduler --- and everything else that a
> simple OS might have.)  Ron Minnich has a number of really good
> presentations about the "joys" of working with UEFI.  See the YouTube
> video, "Replace your Expoit-ridden Firmware with Linux"[1] and prepare to
> be horrified about what horrors lurks in the heart of UEFI....
>
> [1] https://www.youtube.com/watch?v=iffTJ1vPCSo

I'm well aware.  :-)  But I'll see your LinuxBoot and raise you this:
https://www.osfc.io/2022/talks/i-have-come-to-bury-the-bios-not-to-open-it-the-need-for-holistic-systems/

Of course, we at Oxide have the luxury of controlling the hardware in
addition to the software that runs [directly] on it, so we can get
away with doing our own thing. It's not so easy in the larger world,
where integrating components from disparate vendors demands _some_
kind of interface. It's just unfortunate that UEFI is the interface
that we got; see also Mothy Roscoe's OSDI'21 keynote about
rediscovering hardware.

> So you can very much be *not* using UEFI, and still be using ACPI ---
> either if you are using a pre-2004 computer, or if you are using a
> more modern platform which uses LinuxBoot.

Indeed; caveat the details that have already been mentioned about
coreboot/oreboot/holistic boot vs LinuxBoot (which replaces the UEFI
DXE layer). However, note that the ACPI spec has fallen under the
auspices of the UEFI forum for the last ten years or so, which is what
I meant (e.g., that one finds the ACPI spec on uefi.org). It's true,
though, that I was being unacceptably imprecise by not mentioning the
history at all and that ACPI came before UEFI.

        - Dan C.

  parent reply	other threads:[~2024-01-03 14:40 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-31 17:30 [TUHS] " Grant Taylor via TUHS
2023-12-31 17:38 ` [TUHS] " arnold
2023-12-31 20:07   ` Warner Losh
2024-01-01  0:13     ` Bakul Shah
2023-12-31 20:27   ` Phil Budne
2023-12-31 21:02     ` Warner Losh
2024-01-01  0:26   ` Grant Taylor via TUHS
2024-01-01  2:22     ` Warner Losh
2024-01-01  3:24       ` Grant Taylor via TUHS
2023-12-31 21:31 ` Clem Cole
2023-12-31 22:07   ` Warner Losh
2024-01-01 16:00     ` Clem Cole
2024-01-02 18:49       ` Warner Losh
2024-01-02 19:30         ` Chet Ramey
2024-01-02 20:07           ` Clem Cole
2024-01-02 19:50         ` Dan Cross
2024-01-02 19:55           ` Jim Capp
2024-01-02 20:11             ` Dan Cross
2024-01-02 20:30           ` Dan Cross
2024-01-02 20:50             ` Clem Cole
2024-01-02 21:04               ` Dan Cross
2023-12-31 22:46   ` G. Branden Robinson
2023-12-31 23:06     ` Larry McVoy
2023-12-31 23:37       ` Al Kossow
2023-12-31 23:41       ` Alec Muffett
2024-01-02 20:48       ` Dan Cross
2024-01-02 21:17         ` John Cowan
2024-01-03  3:33         ` Theodore Ts'o
2024-01-03  3:57           ` Warner Losh
2024-01-03  4:03             ` Warner Losh
2024-01-03  4:30             ` Theodore Ts'o
2024-01-03  5:10               ` Warner Losh
2024-01-03 15:56                 ` Dan Cross
2024-01-03 16:37                   ` Theodore Ts'o
2024-01-03 16:41                     ` Dan Cross
2024-01-04  8:42                     ` arnold
2024-01-04 18:26                       ` Kevin Bowling
2024-01-03 14:39           ` Dan Cross [this message]
2023-12-31 23:08     ` Phil Budne
2023-12-31 23:37       ` G. Branden Robinson
2023-12-31 23:59         ` Warner Losh
2023-12-31 23:50     ` G. Branden Robinson
2024-01-01  0:09       ` Al Kossow
2023-12-31 21:55 Norman Wilson

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=CAEoi9W6XSLxp9mOZtxujFLvhQBjXPQFQgj4uZyux3rotp097+g@mail.gmail.com \
    --to=crossd@gmail.com \
    --cc=tuhs@tuhs.org \
    --cc=tytso@mit.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).