Slashdot Mirror


Size Is Everything: Making Tiny ELF Binaries

Milk Toast writes "According to this article one can start with a simple program consisting of 3998 bytes and reduce it down to a mere 45 bytes. Now if they could only reduce the size of my Office install." It involves digging into assembly, naturally, but it's interesting to see the extra code generated not only by the compiler, but by the other steps along the way.

3 of 40 comments (clear)

  1. Re:First heard this on Slashdot. by Scarblac · · Score: 2, Informative

    In fact, I first heard about it here...

    --
    I believe posters are recognized by their sig. So I made one.
  2. It's a duplicate! by david.given · · Score: 3, Informative
    From 2002, no less!

    Man, I've been reading Slashdot way too long.

    (It's still a good article though. Worth rereading if you're at all interested in how ELF binaries work.)

  3. Re:It may not be an executable but... by the_cowgod · · Score: 2, Informative

    That wastes a byte for a newline! Try:

    cowgod@kraken:~$ echo -n "exit 42" > tiny
    cowgod@kraken:~$ chmod a+x tiny
    cowgod@kraken:~$ ./tiny; echo $?
    42
    cowgod@kraken:~$ wc -c tiny
    7 tiny