[TUHS] Porting the SysIII kernel: boot, config & device drivers

Dan Cross crossd at gmail.com
Sun Jan 1 00:59:59 AEST 2023


On Fri, Dec 30, 2022 at 1:26 PM Paul Ruizendaal <pnr at planet.nl> wrote:
>[snip]
> It would seem that the next step for Unix in the area of boot, config and device drivers came with Sun’s OpenBoot in 1988 or so. This also appears to be the first appearance of device trees to describe the hardware to the bios and the kernel. Moreover, it would seem to me that OpenBoot is a spiritual ancestor of the modern Risc-V SBI specification. Maybe by 1988 the IO hardware had become sufficiently complex and/or diverse to warrant a break from tradition?
>
> Was there any other notable Unix work on better organising the boot process and the device drivers prior to OpenBoot?

I think that BSD supported autoconfiguration on the VAX well before
OpenBoot; the OpenBSD man page says it dates from 4.1 (1981) and was
revamped in 4.4.

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.

In general, the idea of a BIOS isn't terrible: provide an interface
that decouples the OS and hardware. 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.

        - Dan C.


More information about the TUHS mailing list