Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Fat binary
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===FatELF: Universal binaries for Linux=== [[File:FatELF-logo.png|thumb|''FatELF'' logo]] [[FatELF]]<ref name="Gordon_2009_FatELF"/> was a fat binary implementation for [[Linux]] and other [[Unix-like]] operating systems. Technically, a FatELF binary was a concatenation of [[Executable and Linking Format|ELF]] binaries with some meta data indicating which binary to use on what architecture.<ref name="Gordon_2009_Spec"/> Additionally to the CPU architecture abstraction ([[byte order]], [[word size]], [[CPU]] instruction set, etc.), there is the advantage of binaries with support for multiple kernel [[Application binary interface|ABI]]s and versions. FatELF has several use-cases, according to developers:<ref name="Gordon_2009_FatELF"/> * Distributions no longer need to have separate downloads for various platforms. * Separated ''/lib'', ''/lib32'' and ''/lib64'' trees are not required anymore in [[Filesystem Hierarchy Standard|OS directory structure]]. * The correct binary and libraries are centrally chosen by the system instead of [[shell script]]s. * If the ELF ABI changes someday, legacy users can be still supported. * Distribution of web browser plug ins that work out of the box with multiple platforms. * Distribution of one application file that works across Linux and [[Berkeley Software Distribution|BSD OS]] variants, without a platform compatibility layer on them. * One hard drive partition can be booted on different machines with different CPU architectures, for development and experimentation. Same root file system, different kernel and CPU architecture. * Applications provided by network share or USB sticks, will work on multiple systems. This is also helpful for creating [[portable application]]s and also [[cloud computing]] images for heterogeneous systems.<ref name="Windisch_2009"/> A proof-of-concept [[Ubuntu (operating system)|Ubuntu 9.04]] image is available.<ref name="Gordon_2009_VM"/> {{as of|2021}}, FatELF has not been integrated into the mainline Linux kernel.{{citation needed|date=April 2020}}<ref name="Holwerda_2009"/><ref name="Brockmeier_2010"/>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)