Ryan Gordon Brings Universal Binaries To Linux

Written by Michael Larabel in Linux Kernel on 22 October 2009 at 09:32 AM EDT. 39 Comments
LINUX KERNEL
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.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week