2012/5/9 Sergio <sertorbe@xxxxxxxxx <mailto:sertorbe@xxxxxxxxx>>
I readed about that but i found this web
htpp://utcc.utoronto.ca/~cks/space/blog/linux/PrelinkingIntro
<http://utcc.utoronto.ca/%7Ecks/space/blog/linux/PrelinkingIntro>
which says:
"prelinking and |DT_GNU_HASH| are complementary and systems can do
both."
Also AFAIK modifying the binaries are not bad unless you have a
system which dectects wheter the binary is modified or not , which
is only used on servers, a platform which elementary os doesn't focus.
Also the document says that fedora/red hat uses this, and although
is four years old this is still true.
Technically you can use both at once, but I doubt prelink will offer
better startup times. I'd love to be proven wrong, though. If you
measure startup times of some prelinked binaries and find measureable
improvement over non-prelinked ones, we can look into integrating it.
However, I still dislike the idea of modifying system executables for
a number of reasons.
First, what happens if power goes out when a system executable is
being overwritten or it's buffered but not synced to disk? Our default
filesystem - ext4 - is not that great at recovery from such cases, it
can't simply roll back to the older version because it's not
copy-on-write. You may very well end up having a broken system executable.
The same may be true about shutting down the system - there's a huge
series of workarounds for shutting down while updating the system
already. I don't want to do the same for prelinking because it would
require an insane amount of testing. Technically it's possible, but
it's definitely out of scope of elementary OS and should be done
upstream, in Ubuntu itself.
Second, what if some future app or library doesn't like prelinking for
some reason? I know Prelink attempts graceful fallback, but some stuff
like older Glib does break. There very well may be such libraries or
binaries out there right now, we just don't know about them yet. And
again, you may end up with a broken system.
On an unrelated note, please use "reply to all" to make other people
on the list see your messages instead of replying to me directly.
--
Sergey "Shnatsel" Davidoff
OS integrator @ elementary