Date: Sun, 10 Nov 2002 18:22:48 +0000 (GMT) From: Daniel Flickinger <attila@hun.org> To: Terry Lambert <tlambert2@mindspring.com> Cc: Doug Rabson <dfr@nlsystems.com>, Daniel Eischen <eischen@pcnet1.pcnet.com>, M.Warner Losh <imp@bsdimp.com>, ataraxia@cox.net, current@FreeBSD.ORG Subject: Re: [PATCH] note the __sF change in src/UPDATING Message-ID: <20021110182248.3yf58829@hun.org> In-Reply-To: <3DCD878F.1669D78B@mindspring.com> References: <Pine.GSO.4.10.10211091114160.15854-100000@pcnet1.pcnet.com> <200211091738.33940.dfr@nlsystems.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Having lived through the first *nix "implosion" of the
80s, I _emphatically_ agree with Terry.
I wrote a 300,000+ line application which was endemic to
Fed regulatory agencies and spooks. Every time there was
a system bid, as many as 100 different hardware
implementations would appear out of the woodwork
demanding to be ported to compete, always including a
horde of 286-Xenix implementations (rejected, triggering
more than one lawsuit). Zilog Zeus was a perfect
example: shift-left-24 did not work.... --but Zilog was
the best supported. Most everyone else changed ABIs and
binary compatibilities on their own hardware at least
once a month.
In defense, I built "levels" of libraries:
Type 1 included read, write, and _all_ system calls.
Type 2 included all the string functions
That brought the volatile code down to two libraries and
ZEUS was an #ifdef.
Terry's example works, too: Build it _and_ roadmap it.
in Utah, everyone was once on the grid: you only had
names for Main _and_ Center _or_ Tabernacle. Now
everyone is getting cute with street names --that means
the address is somewhere on a 20 mile line since they
no longer enforce Brigham's grid.
I found it significantly less painful to flush my
_entire_ application list after the 15 Aug and early Oct
changes in 5.0. Flushed 300+ and literally rebuilt the
system as if it was a virgin pair of disks. Only
restored 60+, 10+ of which were XFree4 --lot of dead
wood but I had _zero_ legacy aps, libraries, includes,
and whatever, having tracked CURRENT since. 1.x.
Since the npx reset patch and rebuilding everything, I
have not had a single crash, panic, or lockup --not even
Mozilla. Personally, I think 5.0 should require new
binaries; BUT, tell that to third party vendors and they
will write off FreeBSD, particularly those that only
ship binaries.
As to .so.x numbers being equal in lib and lib/compat,
perhaps ld-elf.so.1/rtld can be made smart enough to
decide whether or not the file is a compat linked file?
Sent: Sat, 09 Nov 2002 14:09:19 -0800 by Terry Lambert:
+ Doug Rabson wrote:
+ > The kernel ABI is hopeless. It changes almost daily :-(. At one time, I
+ > thought I could change this but these days, I don't think anyone except
+ > me cares about having a stable ABI in the kernel.
+
+ I care. It's almost the most important thing to be able to
+ build anything of value.
+
+ But a stable API is required for a stable ABI. It does
+ absolutely no good to build a cathedral, if, by the time you
+ are done, the roads have moved so that there is no road
+ which leads to it.
+
+ The next most important thing is to document it, so that
+ people can use it. "All coordinates are expressed in
+ logitude and lattitute. North is that way. No cows are
+ permitted in the city limits. All cats and dogs which are
+ uncollared and tagged will be captured and spayed and
+ neutered".
+
+ If you can't agree on a coordinate system ("OLDCARD?
+ NEWCARD? REDCARD? BLUECARD?"), then at least agree to get
+ rid of data interfaces; today, people are adding to them
+ with sysctl exposured of structs, as if it's not going to be
+ a problem. It's a problem. It's one thing to say "The
+ cathedral is a about a mile yonder of of Johnson's barn,
+ just down the road a piece from Smithy, which is about a
+ league yonder, and then follow the creek for a spell", and
+ something else entirely to say "The cathedral is at 117 East
+ 32st street; this is 12421 West 1st street".
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021110182248.3yf58829>
