16.12.2007
Вот вспомнил об одной хорошей вещи, которой, как и любой хорошей вещью, пользуюсь часто, а вспоминаю редко. Есть такая техника - prelink. Дело в том, что при запуске бинарники линкуют целое море библиотек. Чем сложнее программа, тем библиотек больше. Prelink позволяет сократить время на выбор этих библиотек, что приводит к ускорению запуска программ. Особенно эффективно это должно работать для приложений KDE, которые пишутся на C++, который вообще линкует за малым не всё что есть в /usr/lib.
Теперь о плохом.
В Ubuntu, начиная с версии 7.04 используется новый способ линкования (DT_GNU_HASH), что в общем-то даже лучше, чем использовать prelink. Эта новость каким-то, на первый взгляд, мистическим образом прошла мимо меня. До сегодняшнего дня я продолжал исправно использовать уже бесполезный prelink.
Собственно о том, что DT_GNU_HASH используется я узнал на ubuntuforums.org. Полез смотреть release notes, но там ничего не нашел. Версия мистики испарилась. Потом удалось найти лог из IRC-канала разработчиков в котором выясняется почему в примечаниях к релизу ничего не сказано =).
Подробнее об оптимизации динамического линкования можно прочитать вот в этой статье (язык вражий, на родном ничего интересного не нашел).
17.12.07 05:45 Anonymous комментирует:
17.12.07 05:56 uptimebox комментирует: