[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: FTP arrangement



Ian Murdock:
   No, I'm not saying this at all.  I'm saying that fairly soon our
   primary emphasis (from a development point of view) will be the ELF
   distribution.  We'll still update the a.out distribution, of
   course, but it'll become less and less of a priority from a
   development point of view.  The most important aspect of having the
   a.out distribution will be its stability.  It'll be the primary
   choice of users who need a stable distribution for a long time.
   The users who want to live on the "bleeding edge" will be using the
   ELF distribution the minute we start working on it.

As I understand it, the big functional difference between ELF and
a.out formats is the nature of the shared libraries.  ELF resolves
names at runtime while a.out resolves names at compile time.  Also,
a.out requires libraries to always be mapped in to the same region of
memory but elf allows this mapping to differ from program to program.
[Thus, the a.out scheme restricts use of libraries.]

This means that a.out trivially has compile-time support for multiple
bindings for the same name -- this is great for backwards binary
compatability, something Linux has excelled at.  However, the cost is
some significant complexity for developers of libraries.  I'm not sure
how elf handles this -- possibly the program specifies which version
of the library it's looking for and there's an instancing scheme to
select one of several releases of a function for cases where there's
been an interface change.

Last time I checked (and it's been a couple weeks) the upgrade plans
for moving to an elf-based-linux were still in flux.  Basically, there
are lots of little issues to resolve before it can become a reality.

Personally, I suspect that it should be possible to build a library
that's both elf and a.out.  It would probably require setting aside
some special name in an elf name-space, and hardcoding some interface
into the kernel to use that name under certain circumstances.  [much
hand waving here.]

Then again, maybe not...

-- 
Raul


Reply to: