On Tue, Aug 6, 2024 at 3:05 PM segaloco via TUHS <tuhs(a)tuhs.org> wrote:
"Unix was selected as the basis for a standard system interface partly
because it was "manufacturer-neutral"."
BS ... the cart is before the horse here.
The minicomputer and workstation manufacturers had already picked "UNIX'
and we had a term for it already: "Open Systems" - because the sources for
the interfaces were open and the core UNIX technology (*i.e.*, the AT&T and
BSD sources) were >>freely available<< to vendors, ISVs and even users (but
they might have to >>pay<< for a license -- *i.e.*, it was "open"
(free as
in "libre" but not "free" as in beer).
It was not neutral at all. What seems to be forgotten/misunderstood in
today's world, the core problem being solved was getting >>ISV<< codes
to
your system.
Thus, the ABI *vs.* API argument. In many ways, the ISVs like the ABIs
over the API as it cuts down their tests/number of versions needed -- but
if we could create an API that everyone could agree to, that would be
neutral - as then the difference for an ISV would be packaging and
testing. The concept was "just recompile." ISTR Heinz was one of the
people who reminded us on the committee early on that without a real ABI,
we would never have as many applications as either the mainframes or the
PCs. But no vendor would give up control. AT&T tried to create an ABI and
did define one for their System V (I think R2 originally), but as they were
so backward /behind in the OS features due to NIH and frankly heavy-handed
in licenses and business issues, few vendors trusted them. By the time of
SVR4, that was a lost cause.
Funny, even Linux never got there, contrary to what it says. This is why
Intel has to develop the Cluster Ready Program. I know of one HPC ISV
that had a test matrix of 144 different Linux cluster configurations they
had tested their code - when you counted, N versions of Red Hat, Ubuntu,
SUSE, and then manufacturers: IBM vs HP vs Cray, and everyone had different
interconnects. What a nightmare!!!
ᐧ