*BSD News Article 17455


Return to BSD News archive

Path: sserve!newshost.anu.edu.au!munnari.oz.au!uniwa!DIALix!zeus!zeus!not-for-mail
From: peter@zeus.DIALix.oz.au (Peter Wemm)
Newsgroups: comp.os.386bsd.bugs
Subject: Re: Catching References to address 0
Date: 24 Jun 1993 12:53:52 +0800
Organization: Karam Pty. Ltd., Perth, Western Australia.
Lines: 41
Message-ID: <20bc10$sj7@zeus.dialix.oz.au>
References: <1vid0k$p4n@agate.berkeley.edu> <CGD.93Jun14130922@eden.cs.berkeley.edu> <20afjk$6h3@agate.berkeley.edu>
NNTP-Posting-Host: localhost.dialix.oz.au
X-Newsreader: NN version 6.4.19 #5

wjolitz@soda.berkeley.edu (William F. Jolitz) writes:

>I agree about the location assignment for the base, it is short sighted.

>However, a.out format has endless numbers of limitations. Formats like
>ELF have addressed them. Why not solve them with a single format change.

>Execve() can be made blindingly fast for a single format, and with cleverness
>export multiple formats to a user mode program. This seems like a more
>productive direction, as then others can follow along, extending the
>system without comprimising kernel integrety.

>Yet it is more of a challenge, don't you think?

>Bill.

Indeed.. ELF on the i386 SVR4 systems loads executables by default at
8M.  The user can specify the start address for any section at Link
time.

ELF also lends itself well to dynamic linking..

It's interesting.. The GNU tools almost support ELF all the way
through now. binutils and gas have had ELF-write code in an internal
beta (done for the SGI irix-5.0 (which is SVR4 based)), and I believe
this code is going to be in the next release.  HP-UX 9.0 reportedly
uses ELF as well.

My only concern with something like ELF, is the version/platform ident
strings in the headers.  What if they are centrally assigned by USL?

I can see it now... "Hello, USL?  I'd like you to assign an ELF
version number for 386bsd please..." :-)

I understand that there are moves afoot to get ELF into Linux too..

-Peter
-- 
Peter Wemm : peter@zeus.dialix.oz.au   If it's broke, fix it (The MS-DOS way)
Work phone: +61-9-479-1855    If it aint broke, don't touch it (The Unix way)
Fax: +61-9-479-1134   If we can't fix it, it ain't broke (Maintainer's Motto)