Talk:Executable and Linkable Format: Difference between revisions

Content deleted Content added
Unsound (talk | contribs)
Strangely formulated sentence...
 
(71 intermediate revisions by 40 users not shown)
Line 1:
{{Talk header|noarchive=yes|search=no}}
{{WikiProjectNotice|Keywords}}
{{WikiProject banner shell|collapsed=yes|class=C|
{{WikiProject Computing|importance=Low|software=yes|software-importance=Mid}}
{{WikiProject Linux |importance=Mid}}
}}
{{archives|search=yes}}
 
== "Linkable" to "Linking" Name Change from TIS 1.1 to TIS 1.2 ==
== Mac OS X using ELF? ==
 
I added the reference to the TIS 1.1 spec and removed the {citation needed} tag from the first mention of the pages name in the lede. I was hoping to find some acknowledgement or explanation in the TIS 1.2 ELF specification referenced concerning the change from the name "Executable and Linkable Format", which is found throughout the TIS 1.1 specification, to "Executable and Linking Format". Does anyone know of a source of information for why and when the name was changed, and whether it was in fact officially changed by the TIS committee? [[User:DonaldLflr|DonaldLflr]] ([[User talk:DonaldLflr|talk]]) 21:34, 6 September 2021 (UTC)
Does Mac OS X use ELF?? -- [[User:Mjanich|Michael]]
:See [[Talk:Mac OS X]]. [[User:Dysprosia|Dysprosia]] 07:50, 30 Sep 2003 (UTC)
:No, it uses [[Mach-O]]... --[[User:Unsound|Unsound]] 19:05, 26 April 2007 (UTC)
 
== Wrong value of "e_phoff" in the attached diagram? ==
== In-process vs. out-of-process object sharing ==
 
The example ELF header shown in the diagram is for a 32-bit architecture, so I think ''e_phoff'' field should have value 0x34, not 0x40. This would also require an adjustment in the "Program header table" part of the diagram (the heading before raw bytes of the section which currently reads "Offset:0x40/Address:0x8000040" should be changed to "Offset:0x34/Address:0x8000034"). [[Special:Contributions/37.128.124.190|37.128.124.190]] ([[User talk:37.128.124.190|talk]]) 08:58, 30 January 2023 (UTC)
I thin also this should reference [[OLE]] [[Object linking and embedding]], which I think may embody the MS way and Maybe [[Component Object Model]] Where the [[*nix]] way is more of a [[Process model]] or some such. [[User:Quinobi|Quinobi]] 21:19, 9 July 2005 (UTC)
 
:No, 0x40 is correct. On the left side you can see the ph starts at the 65th byte. A program header does not always have to start after the ELF header, though it's very common. Not sure why the author added some padding bytes after the ELF header. [[User:INSANETAURUS|INSANETAURUS]] ([[User talk:INSANETAURUS|talk]]) 16:59, 3 April 2024 (UTC)
:Executable image formats have nothing to do with object linking models. One could implement OLE and COM using ELF (and COM objects can be "in-process", linked into the address space of the calling process, or "out of process", running in a separate address space in a separate process); I'm not sure what "the [[*nix]] way is more of a [[Process model]] or some such" means, but if you're referring to pipelines, that can be implemented with the Windows [[Portable Executable]] format and, in fact, if the [[Windows NT]] command interpreter implements the pipe operator by building a Unix-style pipeline, somebody, namely Microsoft, ''did'' implement pipelines with processes running code in PE format. [[User:Guy Harris|Guy Harris]] 23:02, 17 November 2006 (UTC)
 
== Typo (".shrtrtab") in the attached diagram ==
== sources ==
[http://www.mr511.de/software/english.html free ELF object file access library] might want to change to this link, old link redirects to here!
 
".shstrtab" is erroneously spelled as ".shrtrtab" in "SECTIONS' NAMES" and "SECTION HEADER TABLE" parts of the attached ELF format diagram. [[Special:Contributions/37.128.124.190|37.128.124.190]] ([[User talk:37.128.124.190|talk]]) 09:07, 30 January 2023 (UTC)
== Jacksum ==
 
:Any string table section can be called anything, though some ELF analyzing tools might not work if an unconventional name is used. The sh_type member just has to be correct. [[User:INSANETAURUS|INSANETAURUS]] ([[User talk:INSANETAURUS|talk]]) 17:16, 3 April 2024 (UTC)
If ELF-32 indeed means the checksum used by this executable format, then it might make sense to add this link (and some explanation):
* [[Jacksum]] — by Dipl.-Inf. (FH) Johann N. Löfflmann in [[Java programming language|Java]]. Various message verification functions. Released under the [[GNU General Public License|GPL]].
Otherwise, please correct the [[Jacksum]] article. [[User:Gerbrant|Shinobu]] 16:47, 24 October 2005 (UTC)
 
== Reads like a fraction of a specification instead of just including the specification documents ==
== outperform != not a competitor ==
 
Since this is an encyclopedia and the ELF specifications are very readable, why is this respecifying the format instead of referencing the specification or embedding an archived copy (if its copyright allows) ? [[User:TristanDC|TristanDC]] ([[User talk:TristanDC|talk]]) 09:47, 17 February 2024 (UTC)
This sentence doesn't make sense:
 
: Because most of our technical articles are terrible paraphrases of the manual, and this is no exception. It needs the reference content removed entirely and reformatted around the format's ''purpose'' and ''use'', like proper articles. [[User:Thumperward|Chris Cunningham (user:thumperward)]] ([[User talk:Thumperward|talk]]) 09:05, 28 March 2024 (UTC)
''Because other formats are proprietary, platform-specific, or less extensible than ELF, some users hold that ELF outperforms other formats, whereas others may consider it a competitor to the other format''
 
:: {{user|INSANETAURUS}} just used their first ever edit (though it might be {{user|88.238.58.190}}, who just argued the same thing on my talk) to restore this under the non-rationale [[WP:USEFUL]]. As this isn't a compelling argument, I'll be removing it again in due course: this isn't a reference manual and anyone using it as such would be far better off using the real thing. [[User:Thumperward|Chris Cunningham (user:thumperward)]] ([[User talk:Thumperward|talk]]) 16:41, 3 April 2024 (UTC)
I can't tell what is trying to be said. Are we suggesting that some people think that ELF's openness and flexibility make it far beyond the alternatives (to the extent that the alternatives are not options, but relics)? Even if so, the sentence doesn't read well. The first part does not contradict the second (as expected when using whereas). One competitor may outperform the alternatives.
:::I am not 88.238.58.190. Without the attached diagram and the tables, I would have had no starting point for programming my own x86 assembler. Genuine specifications like the System V ABI do not include an example ELF binary, therefore the attached diagram was a very useful ressource. [[User:INSANETAURUS|INSANETAURUS]] ([[User talk:INSANETAURUS|talk]]) 17:09, 3 April 2024 (UTC)
 
:::: [[WP:NOTGUIDE|Wikipedia is not a reference source]], and anything here which is not directly associated with an ''actual'' source is user-generated and thus no more reliable than a random Wordpress blog. [[User:Thumperward|Chris Cunningham (user:thumperward)]] ([[User talk:Thumperward|talk]]) 21:11, 6 April 2024 (UTC)
How about something more like:
:::::The goal of Wikipedia is to benefit its readers. Nothing on the ELF page can be seen as a manual or an article about how to create ELF binaries. I obviously did not soley use Wikipedia to learn about ELF binaries, just as a starting point. Your edit to remove the images and tables on the ELF page made the page less beneficial. I do agree, however, that the ELF page is a bit bloated. [[User:INSANETAURUS|INSANETAURUS]] ([[User talk:INSANETAURUS|talk]]) 15:15, 7 April 2024 (UTC)
''Since it is nonproprietary, platform-agnostic, and extensible, many users consider ELF to be far beyond its competitors.''
 
:::::: Again, no. [[WP:USEFUL|How useful something is is not the arbiter of inclusion]]. It can just as easily be used as a starting point by ''linking'' to the reference documents rather than by trying to act as a manual in its own right. [[User:Thumperward|Chris Cunningham (user:thumperward)]] ([[User talk:Thumperward|talk]]) 10:03, 8 April 2024 (UTC)
Or perhaps remove the line entirely.
:::::::Trying to act as manual '''≠''' actual manual. Your edit removed the 'Specifications' section even though no one complained about that section. [[User:INSANETAURUS|INSANETAURUS]] ([[User talk:INSANETAURUS|talk]]) 17:22, 8 April 2024 (UTC)
 
--[[User:JamesBrownJr|JamesBrownJr]] 21:10, 6 June 2006 (UTC)
 
== ELF Problems ==
 
Someone should add a section about ELF's significant problems, especially regarding dynamic linking semantics. See: [http://autopackage.org/forums/viewtopic.php?t=416] and [http://plan99.net/autopackage/Linux_Problems] <small>—The preceding [[Wikipedia:Sign your posts on talk pages|unsigned]] comment was added by [[User:131.111.243.37|131.111.243.37]] ([[User talk:131.111.243.37|talk]] • [[Special:Contributions/131.111.243.37|contribs]]) 10:10, 13 November 2006 (UTC).</small><!-- Template:Unsigned -->
 
:See also [http://developer.apple.com/documentation/Porting/Conceptual/PortingUnix/compiling/chapter_4_section_7.html Porting UNIX/Linux applications to Mac OS X: Understanding Two-Level Namespaces] and [http://developer.apple.com/releasenotes/DeveloperTools/TwoLevelNamespaces.html Mac OS X Developer Release Notes: Two-Level Namespace Executables], as perhaps what [http://plan99.net/autopackage/Linux_Problems#elf the ELF section of the "Linux Problems" page of the Autopackage Wiki] calls "hash" sometimes has ingredients that don't taste too bad, even if the hash as a whole isn't to your taste. [[User:Guy Harris|Guy Harris]] 00:10, 14 November 2006 (UTC)
 
== Strangely formulated sentence... ==
 
From the article: "Today the ELF format has replaced [snip] FreeBSD, NetBSD, and OpenBSD operating systems (DragonFly BSD was forked from FreeBSD after the switch to ELF)" If DragonFly BSD was forked from FreeBSD _after_ the switch, then it should too use ELF? I think the it should say "before the switch"... but I'm tired and maybe my mind is playing tricks on me. --[[User:Unsound|Unsound]] 19:09, 26 April 2007 (UTC)