[TUHS] the first busybox
Brad Spencer via TUHS
tuhs at tuhs.org
Fri Oct 23 02:29:42 AEST 2026
ron minnich via TUHS <tuhs at tuhs.org> writes:
> defining busybox is interesting because there have been so many types.
>
> There was the SunView approach you mentioned. My memory was that it was all
> based on linker scripts, hence non-intrusive one source.
>
> at LANL, Erik Hendriks created a busybox using linker scripts, to combine 4
> daemons into one, primarily for space. So that's the linker approach. It
> was non-intrusive.
>
> The common C busybox asks people to write programs in a special manner, so
> they can be compiled together. The Rust coreutils takes this approach too.
> It's intrusive.
>
> The u-root busybox uses the go AST package to write standalone commands
> into one binary, each command becoming a Go package, so that's a
> non-intrusive source-based approach.
>
> I got to wondering how far back this idea went in the Unix world. I just
> can't remember.
>
>
> On Wed, Oct 21, 2026 at 10:53 PM Warner Losh <imp at bsdimp.com> wrote:
NetBSD does the "build all of the C files into one" sort of thing for
/rescue. Everything there is a single static position independent
binary. There are something like 154 commands there currently. There
is some infrastructure in the build system that more or less lets any C
command be included in /rescue with very little needing to be dealt with
in any sort of special manor. That is, nothing specific is needed in
the coding standard to make this all work. The argv[0] trick is used to
distinguish between the commands.
--
Brad Spencer - brad at anduin.eldar.org
More information about the TUHS
mailing list