day & night

GLibс 2.12.2, открытая библиотека Си
Дата обновления: , перейти к новому сообщению
#1
ЭЖД



*nix`оид
[SoftoRooMTeaM] Group Icon

Группа: Наши Люди
Сообщений: 11.935
Регистрация: 18.09.2004
Пользователь №: 1.679


Респектов: 789
-----XXXX-




ph34r.gif GLibc 2.10.1

glibc — GNU C Library (GNU библиотека Си). Стандартная библиотека языка Си из проекта GNU. Она написана Free Software Foundation для GNU операционных систем. Glibc выпущена под лицензией GNU LGPL.

Вначале glibc была написана Роландом Макгратом (Roland McGrath), работавшем в FSF в 1980-x годах. В феврале 1988 года FSF представила glibc как библиотеку, имеющую наиболее полную функциональность, требуемую для ANSI C.

В начале 1990-х годов разработчики ядра Linux создали форк glibc. Он был назван «Linux libc». Когда FSF выпустила в 1996 году glibc 2.0, которая поддерживала IPv6, 64-битный доступ к данным, многопотоковые приложения, совместимость с будущими версиями и более переносимый исходный код, разработчики Linux прервали разработку Linux libc и начали использовать glibc от FSF.

Glibc используется в системах, на которых работает много разных ОС, и на разных архитектурах. Наиболее часто glibc используется на x86-машинах с ОС GNU/Linux. Также официально поддерживаются следующие архитектуры: SPARC, Motorola 68k, DEC Alpha, PowerPC, ARM, ETRAX CRIS, s390.

glibc часто критикуют за её «раздутость» и медленную скорость работы по сравнению с другими прошлыми библиотеками. Поэтому были созданы несколько альтернативных стандартных библиотек языка Си (dietlibc, uClibc и Newlib).

Из новшеств glibc 2.10 можно выделить:
  • Поддержка стандарта POSIX 2008. Например, добавлены новые макросы, реализована функция psiginfo, добавлена поддержка флагов O_SEARCH и O_EXEC;
  • Более жёсткое соответствие требованиям C++, например, в дополнение к "char *strchr(char *, int)" добавлено "const char *strchr(const char *, int)", т.е. конструкция "char *i = strchr(in, 'i')", если in имеет тип "const char *i" приведёт к ошибке;
  • Поддержка особенностей будущего стандарта C++ 201x. Например, добавлен обработчик at_quick_exit и функция quick_exit, для экстренного завершения процесса без вызова глобальных деструкторов;
  • Улучшение в функциях DNS NSS в плане обработки нескольких параллельных запросов;
  • Использование NSS (Network Security Services) в libcrypt;
  • Поддержка возможности определения дополнительных модификаторов и спецификаторов формата для функции printf. Для подключения дополнительных обработчиков добавлены функции register_printf_specifier, register_printf_modifier и register_printf_type;
  • Улучшение масштабируемости функции malloc при работе на многоядерных CPU;
  • Добавлена функция malloc_info для предоставления исчерпывающей информации о текущем состоянии системы распределении памяти (сколько памяти выделено, общий размер адресного пространства и т.п.).
  • Автоматическое задействования оптимизированных функций, например, для систем с современным CPU Intel, будет использован вариант функций strlen и strchr, использующий инструкции SSE4.2.
  • Новые функции: preadv, preadv64, pwritev, pwritev64, accept4, fallocate, fallocate64.

Home_http://www.gnu.org/software/libc/libc.html
Downloads (~20,6 Mb)_http://ftp.gnu.org/gn...-2.10.1.tar.gz
User is offline
Go topGo end
 

Ответов(1 - 6)
4.11.2009 - 13:26
#2
ЭЖД



*nix`оид
[SoftoRooMTeaM] Group Icon

Группа: Наши Люди
Сообщений: 11.935
Регистрация: 18.09.2004
Пользователь №: 1.679


Респектов: 789
-----XXXX-




ph34r.gif Glibc 2.11

Из новшеств можно отметить:
  • Новые функции, определенные в последнем варианте стандарта POSIX: execvpe, pthread_sigqueue, mkstemps, mkstemps64, mkostemps и mkostemps64;
  • Добавлены специально оптимизированные для архитектуры x86-64 варианты функций: strstr, strcasestr, memcmp, strcspn, strpbrk, strspn, strcpy, stpcpy, strncpy, strcmp (задействованы инструкции SSE2, SSE4.2), strncmp (SSE2, SSE4.2), strchr (SSE4.2), strrchr (SSE4.2), strlen, rawmemchr, strcmp (SSSE3), strncmp (SSSE3);
  • Добавлены специально оптимизированные для архитектуры x86 варианты функций: strlen, strcspn, strspn, strpbrk, strstr, strcasestr;
  • Выполнение вызова longjmp теперь возвращается с ошибкой, если при его работе будет обнаружено создание инициализированных областей стека;
  • STT_GNU_IFUNC теперь поддерживается в статически скомпонованных исполняемых файлах. Для архитектуры PPC реализована поддержка STT_GNU_IFUNC. Добавлена поддержка STB_GNU_UNIQUE;
  • Добавлена поддержка fma инструкций в AVX расширении для архитектуры x86-64. В ld.so с использованием возможностей AVX реализованы средства аудита;
  • В код DNS резолвера добавлен режим повторного запроса: если два DNS обращения c одного порта не могут быть выполнены, сокет закрывается и осуществляется еще одна попытка, но с заново созданным сокетом. Включить данный режим можно через указание опции 'single-request-reopen' в /etc/resolv.conf. Кроме того, в резолвере реализована поддержка флага RES_USE_DNSSEC для осуществления запросов с подтверждением;
  • Повышена эффективность работы PI-мьютексов, в случае если ядро ОС поддерживает операцию перераспределения элементов очереди к PI-фьютексам. Для архитектуры x86-64 добавлена поддержка NPTL нитей;
  • Добавлены новые локали: ps_AF, my_MM.

Downloads (~15 Mb)_http://ftp.gnu.org/gn...c-2.11.tar.bz2
User is offline
Go topGo end
12.01.2010 - 19:50
#3
ЭЖД



*nix`оид
[SoftoRooMTeaM] Group Icon

Группа: Наши Люди
Сообщений: 11.935
Регистрация: 18.09.2004
Пользователь №: 1.679


Респектов: 789
-----XXXX-




ph34r.gif glibc 2.11.1



Downloads (~15 Mb)_http://ftp.gnu.org/gn...2.11.1.tar.bz2
User is offline
Go topGo end
6.05.2010 - 17:32
#4
ЭЖД



*nix`оид
[SoftoRooMTeaM] Group Icon

Группа: Наши Люди
Сообщений: 11.935
Регистрация: 18.09.2004
Пользователь №: 1.679


Респектов: 789
-----XXXX-




ph34r.gif Glibc 2.12

В новой версии Glibc произошли следующие изменения:

* Исправлено 80 ошибок;
* Добавлены новые интерфейсы pthread_setname_np и pthread_getname_np, позволяющие привязать и получить символьное имя для заданной нити, что особенно удобно для отладочных целей;
* Добавлен новый специфичный для Linux-ядра интерфейс recvmmsg , позволяющий организовать получение в рамках одного системного вызова сразу нескольких сообщений, которые ранее потребовали бы отдельных вызовов recvmsg(). Технология значительно повышает эффективность работы приложений передающих большие объемы данных или оперирующих пакетами небольшого размера;
* Для платформы SPARC реализован макрос STT_GNU_IFUNC;
* Динамический линковщик теперь распознаёт версии ABI из поля EI_ABIVERSION заголовка ELF-файла;
* Добавлен NIS-селектор ADJUNCT_AS_SHADOW для упрощения управления паролями в Sun Solaris;
* Добавлены три новые локали: kok_IN, sq_MK, cv_RU (локаль для чувашского языка).

Downloads (~15 Mb)_http://ftp.gnu.org/gn...c-2.12.tar.bz2
User is offline
Go topGo end
20.05.2010 - 19:06
#5
ЭЖД



*nix`оид
[SoftoRooMTeaM] Group Icon

Группа: Наши Люди
Сообщений: 11.935
Регистрация: 18.09.2004
Пользователь №: 1.679


Респектов: 789
-----XXXX-




ph34r.gif glibc 2.11.2



Downloads (~20 Mb)_http://ftp.gnu.org/gn...-2.11.2.tar.gz
User is offline
Go topGo end
7.08.2010 - 8:48
#6
ЭЖД



*nix`оид
[SoftoRooMTeaM] Group Icon

Группа: Наши Люди
Сообщений: 11.935
Регистрация: 18.09.2004
Пользователь №: 1.679


Респектов: 789
-----XXXX-




ph34r.gif glibc 2.12.1



Downloads (~20,1 Mb)_http://ftp.gnu.org/gn...-2.12.1.tar.gz
User is offline
Go topGo end
23.12.2010 - 19:52
#7
ЭЖД



*nix`оид
[SoftoRooMTeaM] Group Icon

Группа: Наши Люди
Сообщений: 11.935
Регистрация: 18.09.2004
Пользователь №: 1.679


Респектов: 789
-----XXXX-




ph34r.gif glibc 2.12.2



Downloads (~15 Mb)_http://ftp.gnu.org/gn...2.12.2.tar.bz2
User is offline
Go topGo end

Topic Options
Сейчас: 28.03.2024 - 22:16
Мобильная версия | Lite версия