[TUHS] the first busybox

Charles Anthony via TUHS tuhs at tuhs.org
Fri Oct 23 11:17:07 AEST 2026


Busybox in the sense of an executable doing different things depending on
the command used dates back to Multics.

In Multics, a segment could have "alias" names assigned to it; similar to
soft links but part of the segment metadata rather than a directory entry.
An executable segment includes a symbol table listing defined entry points,
and the binder (linker) would add alias names to the segment corresponding
to those entry points.  When one of the alias names was used as a shell
command, execution would be started at that entry point.

Thus writing something like the tiny Linux busyboxes that combined several
shell commands into a single executable was straightforward -- write a
binder command file that pulled in all of the compiled command segments and
whatever support routines needed and list the wanted entry points. Invoke
the binder and it creates a segment with all of the code and aliases to the
entry points.

-- Charles


On Thu, Oct 22, 2026 at 4:09 PM Mary Ann Horton via TUHS <tuhs at tuhs.org>
wrote:

> That's interesting. My recollection must be fuzzy.
>
> I see vedit in SVR4 vi (it turns on "novice", "showmode", "report=1",
> and turns off "magic", and doesn't touch "open") but not 4BSD. I must
> have added it after going to Bell Labs in 1981. vi was added to USG UNIX
> 4.2 in 1983, IIRC.
>
> I thought I sent ex/vi updates back to Berkeley until 1983. Apparently not.
>
> Thanks,
>
> /Mary Ann Horton/ (she/her/ma'am)
>        Keynote Speaker on Inclusion and Innovation
>        Award Winning Author
> maryannhorton.com <https://maryannhorton.com>
>
>
>
> On 10/22/26 14:31, Mychaela Falconia wrote:
> > Mary Ann Horton wrote:
> >
> >> I added the 'd' for 'edit' or 'vedit' in
> >> 78, arranging that novice users could invoke it that way to help protect
> >> them from common mistakes (like confusion about whether you were in
> >> input or command mode).
> > What is 'vedit' mode?  At least in the version that made it into
> > 4.3BSD, 'edit' turns on 'noopen' mode that disables 'open' and
> > 'visual' - so what does it mean to have a "novice" mode that is also
> > visual?
> >
> > M~



-- 
X-Clacks-Overhead: GNU Terry Pratchett


More information about the TUHS mailing list