Firefox и memory allocator из OpenBSD в Linux
Многие жалуются на то, что в Firefox утекает память. На самом деле это не совсем так, она просто фрагментируется. Это особенность реализации malloc - функции выделения памяти в linux-glibc, которая выделяет память одним большим куском.
В OpenBSD используется другой аллокатор, выделяющий память отдельной областью, пропорциональной размеру страницы. Он значительно менее подвержен фрагментации. Его-то я и использую совместно с Firefox и Thunderbird.
Приступим к установке. Качаем исходник тут, компилируем:
[email protected]:~$ wget http://truediamon.ru/system/files/OpenBSD_malloc_Linux.c [email protected]:~$ gcc -shared -fPIC -O2 OpenBSD_malloc_Linux.c -o ~/lib/malloc.so
Конечно кроме как в ~/lib/ можно положить куда угодно. Лучше наверное в /usr/lib/, поправьте в комментах, как идеологически правильнее.
Запускаем так:
[email protected]:~$ LD_PRELOAD=~/lib/malloc.so firefox
лучше создать в ~/.bashrc алиас:
[email protected]:~$ cat .bashrc | grep firefox alias firefox="LD_PRELOAD=~/lib/malloc.so firefox"
В приложении к посту исходник и скомпиленый мною на p3 бинарник.
Вложение | Размер |
---|---|
OpenBSD_malloc_Linux.c | 44.09 КБ |
malloc.so | 18.74 КБ |
Опубликовано diamon в Сб, 30/05/2009 - 20:43
This work is licensed under a Attribution Non-commercial No Derivatives Creative Commons license
Comments :
интересно, как обстоят дела с
Опубликовано Анонимный (не проверено) в Пт, 02/12/2011 - 13:03.интересно, как обстоят дела с этим сейчас?
Не, так и не получилось :(
Опубликовано solarisadmin (не проверено) в Сб, 09/01/2010 - 11:41.Не, так и не получилось :(
У меня так и не заработало..
Опубликовано boombick (не проверено) в Вс, 25/10/2009 - 22:42.У меня так и не заработало.. Debian. Но, в приципе, на FF я и не жалуюсь особо
Вот на что ругается...
Опубликовано Angel2S2 (не проверено) в Пнд, 22/06/2009 - 17:09.Файлы /usr/include/sys/param.h и /usr/include/limits.h есть, права нормальные на них. GCC 4:4.3.3-1ubuntu1 стоит. Никак не могу понять в чем дело... :(
только что скомилил на машине
Опубликовано diamon в Пнд, 29/06/2009 - 16:33.только что скомилил на машине с убунтой 9.04 - никаких проблем.
знающие люди посоветовали попробовать ключик -i
Сорри, не туда отписался :(
Опубликовано Angel2S2 (не проверено) в Пнд, 22/06/2009 - 17:10.Сорри, не туда отписался :(
Не компилится... :(
Опубликовано Angel2S2 (не проверено) в Пнд, 15/06/2009 - 17:53.Запускаю "gcc -shared -fPIC -O2 OpenBSD_malloc_Linux.c -o ./malloc.so", а мне в ответ туева куча ошибок... Система Убунта 9.04. В чем дело может быть? Исходники ядра нужны?
у меня на арче скомпилилось
Опубликовано diamon в Ср, 17/06/2009 - 12:51.у меня на арче скомпилилось без проблем. никаких исходников нету.
на что хоть ругается?
Отправить комментарий