Henry Bent <henry.r.bent(a)gmail.com> wrote:
Apple loves to move quickly and
abandon compatibility, and in that respect it's an interesting
counterpoint to Linux or a *BSD where you can have decades old
binaries that still run.
Nothing in the open-source (OS) world churns and moves around and grows
and wiggles as much as Linux. The rate of change of the kernel is
simply incomprehensibly staggering. Linux userland isn't much better
off.
In the commercial (OS) world Microsoft might be churning at a similar
rate. Apple on the other hand is relatively stable by comparison -- too
stable at times and not always regularly picking up fixes from
third-party projects they make use of. Apple is guilty of extreme churn
in their GUI though -- at least from a user's perspective (perhaps their
APIs are a bit more stable, but somehow from observing them from afar I
highly doubt it). Apple's ABIs seem relatively stable -- I still run a
few binary apps (albeit quite simple ones) I installed over a decade ago
and haven't updated since.
At Mon, 8 Feb 2021 22:05:57 -0900, Michael Huff <mphuff(a)gmail.com> wrote:
Subject: Re: [TUHS] Macs and future unix derivatives
I don't think there's any change on NetBSD, no idea about OpenBSD but
I assume they're the same.
Indeed, NetBSD/i386 is still a "tier 1" port as of the 9.1 release last
fall:
http://wiki.NetBSD.org/ports/
Note there is a caveat with regard to true 80386: "Any i486 or better
CPU should work - genuine Intel or a compatible such as Cyrix, AMD, or
NexGen."
Also NetBSD comes with a good group of compatability and emulation
modules for its kernel ABI, including support for both all of its own
older releases, as well as for port-specific third-party ABI emulations,
such as Linux and SCO Unix.
See for example:
https://wiki.NetBSD.org/guide/linux/
I've only once ever needed to run a Linux binary, and quite a long time
ago, so I'm not so up to date on these things, but it may well be that
NetBSD/i386 can run old 32-bit Linux i386 binaries better than any
current release of Linux.
Personally I work in a world where there's source code for every
application I use, which means I generally only need backward
compatability for the earliest release I might be running at any given
time -- I.e. just enough to keep things running after an upgrade while I
get it all re-compiled and tested.
In all honest, I don't think that backwards
compatibility has ever
been that great on Linux -at least not for the last twenty or so
years, in my (limited) experience.
Really good backward compatability for older kernel and library ABIs is
a cornerstone of NetBSD release engineering. It is very well designed
and implemented and it is pretty much guaranteed to work or get fixed.
Unlike Linux it doesn't rely on shared libraries to work, and also the
system shared libraries have very good backward compatability support as
well. I.e. NetBSD backward compatability is far more complete and
reliable at all levels (including ABIs and their APIs)
--
Greg A. Woods <gwoods(a)acm.org>
Kelowna, BC +1 250 762-7675 RoboHack <woods(a)robohack.ca>
Planix, Inc. <woods(a)planix.com> Avoncote Farms <woods(a)avoncote.ca>