From: Alan Cox <alan@lxorguk.ukuu.org.uk>
To: "Ryan C. Gordon" <icculus@icculus.org>
Cc: "Måns Rullgård" <mans@mansr.com>, linux-kernel@vger.kernel.org
Subject: Re: FatELF patches...
Date: Mon, 2 Nov 2009 00:01:47 +0000 [thread overview]
Message-ID: <20091102000147.424f104b@lxorguk.ukuu.org.uk> (raw)
In-Reply-To: <alpine.OSX.1.10.0911011540400.53392@caridad.local>
Lets go down the list of "benefits"
- Separate downloads
- Doesn't work. The network usage would increase dramatically
pulling all sorts of unneeded crap.
- Already solved by having a packaging system (in fact FatELF is
basically obsoleted by packaging tools)
- Separate lib, lib32, lib64
- So you have one file with 3 files in it rather than three files
with one file in them. Directories were invented for a reason
- Makes updates bigger
- Stops users only having 32bit libs for some packages
- Third party packagers no longer have to publish multiple rpm/deb etc
- By vastly increasing download size
- By making updates vastly bigger
- Assumes data files are not dependant on binary (often not true)
- And is irrelevant really because 90% or more of the cost is
testing
- You no longer need to use shell scripts and flakey logic to pick the
right binary ...
- Since the 1990s we've used package managers to do that instead.
I just type "yum install bzflag", the rest is done for me.
- The ELF OSABI for your system changes someday?
- We already handle that
- Ship a single shared library that provides bindings for a scripting
language and not have to worry about whether the scripting language
itself is built for the same architecture as your bindings.
- Except if they don't overlap it won't run
- Ship web browser plugins that work out of the box with multiple
platforms.
- yum install just works, and there is a search path in firefox
etc
- Ship kernel drivers for multiple processors in one file.
- Not useful see separate downloads
- Transition to a new architecture in incremental steps.
- IFF the CPU supports both old and new
- and we can already do that
- Support 64-bit and 32-bit compatibility binaries in one file.
- Not useful as we've already seen
- No more ia32 compatibility libraries! Even if your distro
doesn't make a complete set of FatELF binaries available, they can
still provide it for the handful of packages you need for 99% of 32-bit
apps you want to run on a 64-bit system.
- Argument against FatELF - why waste the disk space if its rare ?
- Have a CPU that can handle different byte orders? Ship one binary that
satisfies all configurations!
- Variant of the distribution "advantage" - same problem - its
better to have two files, its all about testing anyway
- Ship one file that works across Linux and FreeBSD (without a platform
compatibility layer on either of them).
- Ditto
- 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.
- Now we are getting desperate.
- Prepare your app on a USB stick for sneakernet, know it'll work on
whatever Linux box you are likely to plug it into.
- No I don't because of the dependancies, architecture ordering
of data files, lack of testing on each platform and the fact
architecture isn't sufficient to define a platform
- Prepare your app on a network share, know it will work with all
the workstations on your LAN.
- Variant of the distribution idea, again better to have multiple
files for updating and management, need to deal with
dependancies etc. Waste of storage space.
- We have search paths, multiple mount points etc.
So why exactly do we want FatELF. It was obsoleted in the early 1990s
when architecture handling was introduced into package managers.
next prev parent reply other threads:[~2009-11-02 0:00 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-30 2:19 Ryan C. Gordon
2009-10-30 5:42 ` Rayson Ho
2009-10-30 14:54 ` Ryan C. Gordon
2009-11-01 19:20 ` David Hagood
2009-11-01 20:28 ` Måns Rullgård
2009-11-01 20:59 ` Ryan C. Gordon
2009-11-01 21:15 ` Måns Rullgård
2009-11-01 21:35 ` Ryan C. Gordon
2009-11-02 4:58 ` Valdis.Kletnieks
2009-11-02 15:14 ` Ryan C. Gordon
2009-11-03 14:54 ` Valdis.Kletnieks
2009-11-03 18:30 ` Matt Thrailkill
2009-11-01 22:08 ` Rayson Ho
2009-11-02 1:17 ` Ryan C. Gordon
2009-11-02 3:27 ` Rayson Ho
2009-11-02 0:01 ` Alan Cox [this message]
2009-11-02 2:21 ` Ryan C. Gordon
2009-11-02 6:17 ` Julien BLACHE
2009-11-02 18:18 ` Ryan C. Gordon
2009-11-02 18:59 ` Julien BLACHE
2009-11-02 19:08 ` Jesús Guerrero
2009-11-02 6:27 ` David Miller
2009-11-02 15:32 ` Ryan C. Gordon
2009-11-02 9:16 ` Alan Cox
2009-11-02 17:39 ` david
2009-11-02 17:44 ` Alan Cox
2009-11-02 19:56 ` Krzysztof Halasa
2009-11-02 20:11 ` david
2009-11-02 20:33 ` Krzysztof Halasa
2009-11-03 1:35 ` Mikael Pettersson
2009-11-02 15:40 ` Diego Calleja
2009-11-04 16:40 ` package managers [was: FatELF patches...] Mikulas Patocka
2009-11-04 16:54 ` Alan Cox
2009-11-04 17:25 ` Mikulas Patocka
2009-11-04 17:48 ` Martin Nybo Andersen
2009-11-04 18:46 ` Mikulas Patocka
2009-11-04 19:46 ` Alan Cox
2009-11-04 20:04 ` Mikulas Patocka
2009-11-04 20:27 ` david
2009-11-04 20:02 ` Valdis.Kletnieks
2009-11-04 20:08 ` Mikulas Patocka
2009-11-04 20:41 ` Valdis.Kletnieks
2009-11-04 21:11 ` Mikulas Patocka
2009-11-04 21:32 ` kevin granade
2009-11-04 22:05 ` Mikulas Patocka
2009-11-04 22:19 ` Marcin Letyns
2009-11-04 22:28 ` david
2009-11-04 22:43 ` Martin Nybo Andersen
2009-11-04 23:55 ` Mikulas Patocka
2009-11-05 2:24 ` Valdis.Kletnieks
2009-11-05 2:52 ` Mikulas Patocka
[not found] ` <f42384a10911050134t37a0a812hd85ff5541423dc9f@mail.gmail.com>
2009-11-05 9:35 ` Fwd: " Marcin Letyns
2009-11-10 11:40 ` Enrico Weigelt
2009-11-04 23:11 ` Valdis.Kletnieks
2009-11-05 0:05 ` Mikulas Patocka
2009-11-10 11:57 ` Enrico Weigelt
2009-11-04 17:36 ` Valdis.Kletnieks
2009-11-04 20:28 ` Ryan C. Gordon
2009-11-02 17:52 ` FatELF patches Ryan C. Gordon
2009-11-02 18:53 ` Alan Cox
2009-11-02 20:13 ` Ryan C. Gordon
2009-11-04 1:09 ` Ryan C. Gordon
2009-11-10 11:27 ` Enrico Weigelt
2009-11-10 12:40 ` Bernd Petrovitsch
2009-11-10 13:00 ` Enrico Weigelt
2009-11-10 13:19 ` Alan Cox
2009-11-02 16:11 ` Chris Adams
2009-11-01 20:40 ` Ryan C. Gordon
2009-11-10 10:04 ` Enrico Weigelt
-- strict thread matches above, loose matches on Subject: below --
2009-11-03 6:43 Eric Windisch
2009-11-03 11:21 ` Bernd Petrovitsch
2009-11-10 10:10 ` Enrico Weigelt
2009-11-10 12:15 ` Bernd Petrovitsch
2009-11-10 10:21 ` Enrico Weigelt
[not found] <dAPfP-5R6-1@gated-at.bofh.it>
[not found] ` <dBOhH-uY-9@gated-at.bofh.it>
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20091102000147.424f104b@lxorguk.ukuu.org.uk \
--to=alan@lxorguk.ukuu.org.uk \
--cc=icculus@icculus.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mans@mansr.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®