*BSD News Article 53060


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!yarrina.connect.com.au!classic.iinet.com.au!swing.iinet.net.au!news.uoregon.edu!gatech!howland.reston.ans.net!newsfeed.internetmci.com!info.ucla.edu!library.ucla.edu!news.ucdavis.edu!not-for-mail
From: obrien@cs.ucdavis.edu (David E. O'Brien)
Newsgroups: comp.unix.bsd.freebsd.misc
Subject: Re: Will FreeBSD ever support ELF?
Date: 15 Oct 1995 18:56:44 GMT
Organization: University of California, Davis
Lines: 54
Message-ID: <45rlhc$c3i@mark.ucdavis.edu>
References: <oenwlx9v8.fsf@vapor.Franz.COM> <45hbnd$9ln@uriah.heep.sax.de> <45lu9a$408@news.rrz.uni-koeln.de> <45pktl$7c9@news.bridge.net>
NNTP-Posting-Host: toadflax.cs.ucdavis.edu
X-Newsreader: TIN [UNIX 1.3 950824BETA PL0]

Rey Bango (rba@bridge.net) wrote:
: Stefan,
: 
: Could you point me to an FAQ that adequately explains what a.out & ELF 
: are?  I'm new to the UNIX game and I'm trying to understand the many 
: concepts of this rich OS.  I've also installed Slackware Linux and will 
: be installing FreeBSD very soon, so that I can have the hands on 
: experience.  If they're aren't any FAQs, perhaps you could explain it to 
: me.
: 


I asked J"org the same question via email and this is what he said:

--- begin encluded messge ---
From: J Wunsch <j@uriah.heep.sax.de>
Reply-To: joerg_wunsch@uriah.heep.sax.de (Joerg Wunsch)

As David E. O'Brien wrote:
> 
> You seem to be knowledgable about this so...
> 
> What is this ELF stuff?  I've SA'ed SunOS, Solaris (sparc), and FreeBSD, so
> I know nothing about it.  (Solaris doesn't have it with its roots of SysVr4
> does it?)

ELF is the SVR4 object format, the predecessor of COFF.  COFF has been
a rather general object format (Common Object File Format), but was
unaware of shared library models, it's the object format of SVR3 (and
most likely earlier SVR's).

ELF knows about shared lib conceptions and has some other adavantages.
It's a rather well-thought object format.  (a.out has a lot of
restrictions, e.g. you can only have one text and one data section.
It's sometimes desirable to allow for more of them, e.g. for kernels.)

> Do you have a pointer to docs that explain what all the fuss is?  SunOS and
> FreeBSD certainly have shared libraries, so why is Linix people clamoring
> like they've invented sliced bread?

ELF is documented in the SVR4 documentation (and header files and
elf_*() library functions).

Linux previously did already have a shared lib implementation, but
preparing the shared libs was sorta "hand-crafted" and a nightmare for
the programmer (but they were very fast).  So now everybody is able to
create a shlib with ELF.

-- 
cheers, J"org

joerg_wunsch@uriah.heep.sax.de -- http://www.sax.de/~joerg/ -- NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)
--- end encluded message --