*BSD News Article 66012


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!news.mira.net.au!news.vbc.net!samba.rahul.net!rahul.net!a2i!bug.rahul.net!rahul.net!a2i!genmagic!sgigate.sgi.com!news.msfc.nasa.gov!newsfeed.internetmci.com!in2.uu.net!news.artisoft.com!usenet
From: Terry Lambert <terry@lambert.org>
Newsgroups: comp.os.linux.development.system,comp.unix.bsd.386bsd.misc,comp.unix.bsd.bsdi.misc,comp.unix.bsd.netbsd.misc,comp.unix.bsd.freebsd.misc,comp.os.linux.advocacy
Subject: Re: Historic Opportunity facing Free Unix (was Re: The Lai/Baker paper, benchmarks, and the world of free UNIX)
Date: Mon, 15 Apr 1996 23:42:40 -0700
Organization: Me
Lines: 117
Message-ID: <31734160.1332595A@lambert.org>
References: <NELSON.96Apr15010553@ns.crynwr.com> <yfgbuktfn1w.fsf@time.cdrom.com> <3172AF35.15A9D29E@wolfenet.com>
NNTP-Posting-Host: hecate.artisoft.com
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Mailer: Mozilla 2.01 (X11; I; Linux 1.1.76 i486)
Xref: euryale.cc.adfa.oz.au comp.os.linux.development.system:21414 comp.unix.bsd.386bsd.misc:601 comp.unix.bsd.bsdi.misc:3213 comp.unix.bsd.netbsd.misc:3026 comp.unix.bsd.freebsd.misc:17385 comp.os.linux.advocacy:45576

Mark Hamstra wrote:
] I'll agree that healthy competition between the FreeBSD and
] Linux developers is a good thing.  I'll also stipulate that
] both sides would dearly love to see the use of Unix increase,
] perhaps dramatically.  Unfortunately I also have to grant you
] that infighting amongst the various Unix advocates has cut
] short much of Unix's past promise.

Typical UNIX "infighting":

1)	Adopt a proprietary standard.  Hope your competitors
	can't afford the buy-in.

2)	Adopt a non-proprietary standard.  Define "extensions",
	and make it necessary to use them so that products
	compiled for your platform won't run on someone elses,
	but products compiled for someone elses will run on yours.

3)	Adopt a non-proprietary standard.  Make the certification
	process proprietary.  Hope your competitors can't afford
	the buy-in (ie: "Linux is certified POSIX compliant").

4)	Adopt a standard.  Include expensive baggage.  Hope
	the baggage is an impediment to compliance (ie: hope
	your competitors can't afford the buy-in).  Spec1170,
	UNIX95.

5)	Adopt a competing standard.  Hope your standard wins
	(ie: SVID vs. DEC Ultrix and SCO Xenix).


6)	Adopt a standard that you are architecturally better
	suited for than your competitor (aka the Oracle SQL
	extension standard), and hpe they can't compete when
	they toe the arbitrary division line you've set.


] It seems the real question is not whether FreeBSD or Linux
] should be THE free PC Unix, but rather: How can FreeBSD and
] Linux continue to pressure each other to continued success
] without un-necessarily fragmenting the growing support for
] free operating systems and software?  To my knowledge, binary
] compatibility standards are the best way to prevent this
] fragmentation, and I applaud the FreeBSD community's
] efforts in this regard.

The largest occurances of UNIX market fracturing have occured
as the result of standards.  I have less hope for positive
effects without a lot of effort that won't necessarily be
to the benefit of the camp that would have to do the work.

] What is the exact status of binary compatibility between
] FreeBSD and Linux at present and near future?  What can
] Linux developers do to ensure compatibility?  Are there
] other cross-community links that we should be aware
] of?

Telling questions.

The best answer is that ABI emulation is a disadvantage in the
race to get native ABI products.

If FreeBSD supports the Linux ABI, what is the incentive to
make a native FreeBSD port?

If there is not an ABI ceritification process and developement
tools to insure conformance, then the vendors will not
subsequently offer support for the product when it is run in
the emulation environment.

This has already caused there to be no FreeBSD "Netscape" release,
since it can run both the "Linux" and "BSDI" versions, Netscape
sees no reason to provide a native port.

The Linux ABI version is unsupported anyway, but the BSDI version
is preferentially unsupported when running in the BSDI ABI
environment because the certification process caused the binary
to be ceritified to run under BSDI, not under the BSDI ABI.


One big win would be a written ABI specification, a *publically
available* test suite to make sure a system implements the ABI
from revision to revision, and a mode switch for each compliant
system to place it in "ABI ONLY mode" to determine application
conformance to the ABI.

The system vendors would have to encourage the use of this mode
when running testing on commercial products by offering both
self-ceritification (branding: "Free UNIX Friendly"?) and by
only guaranteeing the interfaces exported by the ABI from
revision to revision.  If a commercial vendor wants to avoid
another port for the next OS release, they need to certify.


I would suggest the EABI (Motorolla version), a publically
available ABI specification, only the Linux ELF is already
non-compliant with it (several fixes needed), and the standards
compliance body is already self-selected -- they have a test
suite, it isn't *publically available*, and certification and
trademarking already exist.

Otherwise, it's perfect, in that sufficient momentum could
unify the already fragmented i386 commercial UNIXes as well.


I wonder what it would take to get the suite released and
for the vendors -- SCO, Novell, Sun -- to implement an "ABI
only" mode to prohibit some of the infighting techniques
outlines above?


					Regards,
                                        Terry Lambert
                                        terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.