Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [day] [month] [year] [list]
Date: Wed, 15 Jun 2011 01:18:13 -0400
From: Rich Felker <dalias@...ifal.cx>
To: musl@...ts.openwall.com
Subject: Coming soon: Dynamic linker!

Greetings!

I've resumed work on the dynamic linker, and despite not being very
featureful or configurable yet, it seems to be working. I have not
committed the code to the git repo yet but I hope to so soon after a
little more testing and cleanup (and adding x86_64 support).

Some highlights:

- For programs that use no third-party libraries, only libc, the
  "strace" of dynamic and static linked programs is identical. No
  syscalls are made at startup. This is possible because the "program
  interpreter" (ld.so) and libc reside together in a single .so file.

- Minimum dirty page overhead is just 16k, versus 8k for static
  linking, and the difference is purely the libc's data segment. It
  may be possible to reduce this to 12k with custom GNU ld scripts, if
  anybody cared. In comparison, uClibc uses at least 40k and glibc at
  least 52k.

Dynamic *loading* (dlopen/dlsym) is not yet implemented, but should
not be difficult to add to the current design. When that's working, I
plan to start the 0.8 release cycle.

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.