Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 Nov 1995 13:42:25 -0700 (MST)
From:      Terry Lambert <terry@lambert.org>
To:        grog@lemis.de
Cc:        terry@lambert.org, hackers@FreeBSD.ORG
Subject:   Re: elm problem - "solved"
Message-ID:  <199511202042.NAA01944@phaeton.artisoft.com>
In-Reply-To: <199511201707.SAA22662@allegro.lemis.de> from "Greg Lehey" at Nov 20, 95 06:07:24 pm

next in thread | previous in thread | raw e-mail | index | archive | help
> > > It's not voodoo, it's grotesque.  Every time you change crt0.o, you
> > > need to change your object file recognition routines?  What do you do
> > > if you're playing with crt0.o?
> > 
> > Well, if you are smart, you aren't in this position in the first place
> > because you picked a different magic number when you changed the ABI
> > that the binaries use.
> > 
> > If you're not smart, then you become grotesque as a damage control
> > mechanism.
> 
> If I understand you, to be "smart" you need to have control over the
> development of both systems.  In that case, you could be smarter and
> not perpetrate this kind of thing at all.
> 
> I thought you were lucky at one point, since the FreeBSD format is
> different from the BSD/386 format, but then BSDI didn't change their
> format between 1.1 and 2.0, so we have the rather amusing fact that
> BSD/OS 2.0 will run the FreeBSD version of elm and not the BSD/386 1.1
> version.  I don't know how FreeBSD can distinguish between the 1.1
> version, which needs the emulator, and the 2.0 version, which doesn't.
> You can't even rely on the crt0.o to have changed.

BSDI wasn't smart going from 1.1 to 2.0 because they didn't change
the magic number.

FreeBSD wasn't smart similarly.

NetBSD is smart, but their approach is not widely used, probably because
they try to do byte order magic that they shouldn't (well, maybe they
should for MIPS and PPC, both of which are programmable byte order).

To be "smart" for a particular ABI, it nedds a particular magic number.
Since you can't make someone else (BSDI?) be smart for you, you have to
trade you being grotesque for them being smart.

Yes, I agree that it's inconvenient when people aren't smart.  The problems
that this cause *can* be worked around.  Look at real mode memory managers
under DOS because IBM and Microsoft weren't smart.  How many people are
running DOS 1.0 and 2.0 programs on new hardware today?  Practically
none.  And those who are are running old code which means they aren't
buying new code which means you aren't making money by making them happy
at the expense of everyone else.


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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199511202042.NAA01944>