On 02/07/2021, Larry McVoy <lm(a)mcvoy.com> wrote:
As I started reading it I found plenty to disagree
with in the first few
paragraphs but they completely lost me at "After all, moving from System
V init scripts to systemd has arguably improvedthe Linux boot sequence."
Um, no, just, no.
I'm definitely not a fan of systemd, but I think legacy init systems
leave a lot to be desired as well. UX/RT, the OS I'm writing, will
have an init system that uses declarative unit files for daemons and
manages them statefully, but unlike systemd will be designed to be
highly extensible.
Basically all policy, including startup and shutdown, will be in
scripts. Startup and shutdown will mostly be implemented with one
script per phase (like on some older SysV and Linux systems). It will
also be possible to add support for new options to unit files by
adding hook scripts.
In addition, instead of having a single daemon managing all unit
types, there will be separate delegated restarters for all unit types
other than one-shots and unconditional daemons (it will be kind of
like SMF minus the databases and XML).
I'm also probably going to write my own shell at some point. Most
likely it will be Bourne-like with some object-oriented features,
including support for piping objects (unlike PowerShell this will work
with external commands and will be implemented by serializing objects
to text-based formats using hook functions). All UI-related features
like history, editing, and completion will be implemented in a
separate listener process that functions as a pseudo-terminal driver.