Ryan Gordon Brings Universal Binaries To Linux

Posted by Michael Larabel on October 22, 2009

One of the interesting features of Mac OS X is its "universal binaries" feature that allows a single binary file to run natively on both PowerPC and Intel x86 platforms. While this comes at a cost of a larger binary file, it's convenient on the end-user and on software vendors for distributing their applications. While Linux has lacked such support for fat binaries, Ryan Gordon has decided this should be changed. This professional game porter has created the FatELF project, which basically brings the universal binaries feature to Linux. The FatELF file format allows multiple binaries for different architectures to be embedded into a single file. Ryan may take this even further by introducing the ability for Solaris and FreeBSD binaries to be embedded into a FatELF as well.

Ryan has launched the FatELF project page where he talks about how with this file format it would be possible to make a universal Linux installation DVD that could automatically handle both x86 and x86_64 systems (or even PowerPC, MIPS, and others too), support for shipping a single shared library, support for kernel drivers targeting different architectures in a single file, and there's a whole range of other possibilities using FatELF.

What Ryan has achieved so far with FatELF is the file format specification along with documentation and then patches to the Linux kernel, file, binutils, and gdb. The patches still to be written are for module-init-tools, glibc, and elfutils. Support for non-Linux platforms right now is just one of the goals.

Ryan has also constructed a proof-of-concept virtual machine that demonstrates FatELF.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Intel Linux OpenGL Driver Leading Over Apple OS X
  2. The Cost Of Ubuntu Disk Encryption
  3. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  4. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
Latest Linux News
  1. Linux Desktop Security Could Be A Whole Lot Better
  2. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  3. New NVIDIA Linux Driver Supports The GeForce GTX 780
  4. Chrome 28 To Offer More Speed Improvements
  5. Digia Announces "Boot To Qt" Project
  6. X.Org Libraries Hit By Round Of Security Issues
  7. Wayland's Weston Gets Output Scaling Support
  8. Raspberry Pi Gets New Wayland Weston Renderer
  9. Debian GNU/Hurd 2013 Release Brings New Packages
  10. Intel Ultrabook Performance Is Faster With Mesa 9.2
  11. Hot Relocation HDD To SSD Support For Btrfs
Latest Forum Talk
  1. Intel Preview: Z77 Motherboards Run Well With...
  2. Digia Announces "Boot To Qt" Project
  3. Qt For Tizen Launches, Based On Qt 5.1
  4. Xserver 1.14 support will arrive with Catalyst...
  5. Linux Desktop Security Could Be A Whole Lot Better
  6. X.Org Libraries Hit By Round Of Security Issues
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite