3 ms·
What is ELF? (top) ELF is a binary format designed to support dynamic objects and shared libraries. On older COFF and ECOFF systems, dynamic support and s
by 101914 12y ago
What is ELF? (top)
ELF is a binary format designed to support dynamic objects
and shared libraries. On older COFF and ECOFF systems,
dynamic support and shared libraries were not naturally
supported by the underlying format, leading to dynamic
implementations that were at times complex, quirky, and
slow.
source: netbsd.org
However you said "ELF has nothing in particular to do with shared libraries..."
Perhaps the concept of a binary format has nothing in particular to do with support for shared libaries. Perhaps that is a design choice. And perhaps ELF is merely one approach to the design of a binary format.
If true, then this choice makes a lot of sense in a world where there is a compelling need to use shared libraries, such as the computing world 20 years ago. But I am not so sure the same holds true in a world where the need for shared libraries is "questionable".
You said "Shared libraries are a small side feature..."
If that is true (cites to articles appreciated), then I would be curious what are ELF's "main" features, and how these differ from the formats that preceded ELF (e.g., a.out). Also I would be curious how frequently ELF's "minor" features have historically been used in practice, as opposed to just adding complexity and taking up space.