On Tue, Aug 6, 2024 at 3:05 PM segaloco via TUHS <tuhs@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!!!