LWN.net Logo

SELF: Anatomy of an (alleged) failure

SELF: Anatomy of an (alleged) failure

Posted Jun 24, 2010 2:18 UTC (Thu) by PaulWay (✭ supporter ✭, #45600)
In reply to: SELF: Anatomy of an (alleged) failure by xav
Parent article: SELF: Anatomy of an (alleged) failure

I think you're seeing it as a solve-everything idea, where really it's a solve-specific-things idea.

Obviously installing a system with every binary containing code for every possible architecture is going to be horribly large. But that's not what you use FatELF for.

Imagine, however, a boot CD or USB key that can boot and run on many architectures. That would be a case where the extra space used would be compensated by its universality. A live or install CD could then drag architecture-specific packages from the relevant distribution. A system rescue CD would work anywhere. You wouldn't worry about the overhead because the benefit would be one medium that would work (just about) everywhere. Likewise, an application installer could provide an initial FatELF loader that would then choose from the many supplied architecture-specific binaries to install.

In these circumstances I think FatELF makes a lot of sense. And, as Apple seems to be proving, the overhead is something that people don't notice (or, at least, are willing to cope with).

Have fun,

Paul


(Log in to post comments)

SELF: Anatomy of an (alleged) failure

Posted Jun 24, 2010 20:44 UTC (Thu) by vonbrand (subscriber, #4458) [Link]

If it really was for "many architectures" (How many do you even see in a normal week? For me it's 3: x86_64, i386, SPARC64; very rarely a PPC Mac. And of those I'd futz around with x86_64 and i386 almost exclusively.) it would be at most some 100MiB for each on a normal CD. Better get USB thumbdrives for each (or carry 5 or 6 CDs around).

SELF: Anatomy of an (alleged) failure

Posted Jun 25, 2010 1:49 UTC (Fri) by dvdeug (subscriber, #10998) [Link]

Can you even get one CD to boot on both ix86 and ARM or PowerPC? Even if you can, along with getting the right kernel to boot up, you should be to symlink in the correct binary directories for the architecture.

I'm having a lot of trouble finding any case where FatELF can't be replaced by shell scripts and symlinks. You want to support both ix86 and AMD-64 with your game; have the executable name run a shell script that runs the right binaries.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds