Вышел (http://sourceware.org/ml/libc-alpha/2010-05/msg00000.html) релиз системной библиотеки GNU C Library (http://ftp.gnu.org/gnu/glibc/) (glibc) 2.12, являющейся основой большинства Linux-дистрибутивов, за исключением OpenWrt, Debian и Ubuntu, которые перешли на использование системной библиотеки Eglibc (http://www.eglibc.org/). Библиотека Eglibc полностью совместима с Glibc и отличается (https://www.opennet.ru/opennews/art.shtml?num=21615) более низкими системными требованиями, возможностью гибкой настройки компонентов, улучшенной поддержкой кросс-компиляции и кросс-тестирования.В новой версии Glibc произошли следующие изменения (http://sourceware.org/git/?p=glibc.git;a=blob_plain;f=NEWS;h...):
- Исправлено 80 ошибок;
- Добавлены новые интерфейсы pthread_setname_np (http://www.mkssoftware.com/docs/man3/pthread_setname_np.3.asp) и pthread_getname_np (http://www.mkssoftware.com/docs/man3/pthread_getname_np.3.asp), позволяющие привязать и получить символьное имя для з...URL: http://sourceware.org/ml/libc-alpha/2010-05/msg00000.html
Новость: https://www.opennet.ru/opennews/art.shtml?num=26506
Вопрос. А если eglibc ПОЛНОСТЬЮ совместима с glibc + "отличается более низкими системными требованиями, возможностью гибкой настройки компонентов, улучшенной поддержкой кросс-компиляции и кросс-тестирования". То вообще какой смысл развивать glibc? Может лучше направить усилия на развитие eglibc? Или что-то не досказано?
eglibc - это НЕ самостоятельный проект, а просто пересборка glibc без некоторых опций + модифицированные скрипты configure и тд. Никто eglibc не "развивает", развитие идет в glibc.Другими словами, это форк glibc с изменениями, которые некоторым разработчикам было проблематично протолкнуть в glibc, но при этом вряд ли они будут активно создавать что-то свое, скорее так и будут портировать новшества glibc туда.
>Другими словами, это форк glibc с изменениями, которые некоторым разработчикам былоУточнение: разработчики против того, чтобы eglibc называли форком, предпочитая термин "дистрибутив glibc для embeded-систем". По сути это просто набор патчей на текущую версию glibc, позволяющий опционально собирать не полную glibc, а без некоторых модулей - с упрощенным libm, без libcrypt, без NIS, без поддержки старых ABI, без поддержки локалей итд.
В "полной" версии eglibc практически идентична той версии glibc, которая была пропатчена. Никакого "остановить разработку glibc в угоду eglibc" быть не может по определению.
Вот неплохая статья http://lwn.net/Articles/333755/
Спасибо за разъяснение.
То есть Debian (который "за исключением") по определению кастрат?
для тебя это новость?
это все фантазия автора новости. eglibc ничем толком не отличается(пока?) и возник на фоне конфликта дебианщиков с Ульрихом который трудится на редхат и якобы тянет одеяло на себя.
Фантазируете тут вы. Проект eglibc предназначен для облегчения glibc путем вырезания ненужных кусков. Он решает проблемы вида "Хотите glibc без сетевого стека вообще? Пожалуйста, вот, сэкономили байты. Стек вообще нужен, но ipv6 на фиг не сдался, и локали тоже? Вот ключики для сборки в такой конфигурации".Проекту много лет, он существует, используется и к дебиану он никакого отношения не имеет, кроме того, что дебиан его маленько распиарил своим решением.
Главное glibc теперь говорит на чувашском!
Шупашкары!
+
Хороший город
Город??! Я думал, что-то типа шаурмы. :)
Шупашкар это вроде Чебоксары.
сетевой стек, он же в ядре. ну соберешь ты glibc без сетевого стека, из ядра он никуда не исчезнет.
libc тесно связана с ядром - доступ приложений к функциям ядра осуществляется посредством системных вызовов, которые реализованы в libc: socket, bind, listen, connect, gethostbyname и т.п.
Если хотим выпилить из системы сетевой стек - выпиливаем как из libc так и из ядра, никто же не мешает.
Я думаю он о том - что экономить байты на выкидывании функций, которые являются всего лишь обертками над syscall - бредятина. Сэкономим 100 байт, выкинув все такие.
Не знаю-не знаю. Один libresolv занимает 100 kb, он выпиливается как часть сетевого стека. В glibc далеко не только "обертки над syscall".В glibc МОРЕ всего, что завязано на сеть и не нужно, если нет сети. Вырубаем сеть - выпиливается NIS (по меньшей мере сотня kb), Sun RPC (тоже не так мало) и много еще что.
Или, к примеру, убирание функций вычисления с двойной точностью в libm (точнее, подмена их на ссылки на функции с одинарной точностью) в два раза урезает ее размер, 300k вместо 600k.
Локали тоже немало отнимают, всякие libcrypt тоже и тд, в общем курочка по зернышку, а eglibc - способ использовать более-менее обычную и совместимую gnu libc на встраиваемых устройствах, потому что даже после урезания того, что не нужно, функций там все равно остается не в пример больше той же uclibc. Не весь софт, писанный под glibc, дружит с uclibc.
Можно было бы начать даже и не так: "вышла новая версия библиотеки glibc, это библиотека используется в дистрибутивах линукс, линукс это операционная система" и закончить про Гоголя, который на болоте.Маллок соптимизировали под многопоточность, вот это реально интересное новшество, можно сравнить эффективность кода Дреппера с jemalloc. А "имена" потокам назначать - никто и не будет, новшество ни о чём.
И где написано, что малок соптимизировали???
по ссылкам покликайте в тексте новости?
в чейнджлоге промотал ниже, чем следовало бы. Не повторится! ))
>http://ftp.gnu.org/gnu/glibc/) (glibc) 2.12Никакого упоминания про 2.12 :( А где ж скачать-то?
у тебя случайно OpenWrt, Debian или Ubuntu?
>являющейся основой большинства Linux-дистрибутивов, за исключением OpenWrt, Debian и Ubuntuя рыдаю с такого :-D