[TUHS] Is there a good, even definitive, list of reimplementations of the Unix kernel? What would good cut-off criteria be?

Clem Cole via TUHS tuhs at tuhs.org
Mon Apr 20 05:06:45 AEST 2026


The order was: a.out came from Research on the PDP-11 systems of the
1970s.  It had a lot of issues, particularly when dealing with different
architectures.  Many different vendors made changes in their own ways.  By
the time of the first System V releases in 1983, USG had created COFF.
BTW: one of the stranger things AT&T originally did was try to tie it to IP
licenses associated with their tools, althought I'm not sure if they
eventually just relaxed those claims or gave up on them.; as Microsoft
picked it up and extended it to their ECOFF format. Also, GNU wrote their
original objcopy tool to use their words, "cure COFF."  But by 1985, CMU's
macho was an attempt to have something that could work across
architectures, but didn't depend on COFF. And as Paul points out, it tended
to be an improvement.    But there were still issues, and one of the good
parts of Sun and AT&T working on SVR4 was the creation of ELF.  The GNU folks
picked it up, so their compilers could generate code for SVR4 and in
particular the latest Solaris systems.   Once it was in the GNU tool
stream, Linux picked it up, as did FreeBSD, NetBSD and friends.

On Sun, Apr 19, 2026 at 10:19 AM Paul Winalski via TUHS <tuhs at tuhs.org>
wrote:

> On Sun, Apr 19, 2026 at 1:56 AM Peter Yardley via TUHS <tuhs at tuhs.org>
> wrote:
>
> >
> > OSX uses a microkernel, Mach. Thing is more and more code got moved from
> > user space into the kernel to speed it up. First OSF1 moved more code
> into
> > kernel space, then NeXT, then Apple. But the kernel definitely started
> out
> > as the Mach micro kernel.
> >
> > macOS (aka OS X) indeed uses the Mach microkernel, though a you say over
> time code has been moved from user space to the kernel for performance
> reasons.
>
> macOS still uses Mach-O, the Mach object file and executable format.  When
> Mach-O was first designed it was a big step up in flexibility and
> functionality from a.out and COFF.  But compared to ELF, Mach-O is
> functionally deficient and hard to use (from the perspective of compilers,
> assemblers, and linkers).  I'm afraid that in terms of object and
> executable formats, the world has moved on and left macOS (and Windows,
> which uses a form of COFF) behind.
>
> Linux uses ELF.  What are recent versions of Unix using?
>
> -Paul W.
>
> -Paul W.
>


More information about the TUHS mailing list