On Thu, Aug 8, 2019, 7:47 PM Grant Taylor via TUHS <tuhs(a)minnie.tuhs.org>
wrote:
On 8/7/19 7:04 AM, Clem Cole wrote:
FWIW: V7 had /stand which was a funky UNIX-like
standalone system that
some applications could be compiled.
I've seen /stand on a few systems (I think SCO OpenServer and / or
UnixWare) but never really knew what it was for. I think I had naively
assumed it was associated with the kernel and / or booting.
Now I'm somewhat more curious what it was. Was it a simplified version
of the OS with minimal utilities with fewer dependencies so that the
system could boot and load more features.
Yes. There was a library that implemented much of the unix API in a
simplified way that ran on bare metal.
I thought that Linux's initramfs / initrd had the usual suspect files /
utilities copied from /. So the idea that a utility
in /stand would be
different from the same utility in / seems strange to me.
They are because there was no kernel for them to run under. They were
similar, but if you go look at the sources, they are different.
The problem was that it was a little different so you
would end up
seeing #ifdef STAND in code for things like fsck,
fsdb, even cat.
At Masscomp we ended up with three target environments for a couple of
the system maintenance utilities: the OS, /stand and the boot ROMS.
This was expensive/a PITA to maintain and keep straight, and in the
case of the boot ROM, space was a huge problem.
Ya. I can see how that would be a PITA to maintain.
FreeBSD, NetBSD and OpenBSD all implement some version of this. FreeBSD has
it in src/stand in honor of V7 stand. I did that when I integrate / rewrote
the GSoC project to bring Lua scripting to the boot loader. The other BSDs
have it split between sys/boot and lib/libs. FreeBSD uses it to implement
the rich boot loader which knows how to load off a lot of different file
systems and BIOS interfaces. Net/OpenBSD use it more modestly in their boot
loaders, but have a few standalone programs for things like bootstrapping
VAXen.
Warner
The RAMFS idea was created to get rid of at least
/stand and IIRC we
were able to drop a number of utilities out of
the boot ROM. I'm not
sure how far they took it. I left for Stellar and it was always the
way Stellix booted.
ACK
--
Grant. . . .
unix || die