Релиз системной библиотеки Glibc 2.15
Glibc является основой большинства Linux-дистрибутивов, за исключением OpenWrt, Debian и Ubuntu, которые перешли на использование системной библиотеки Eglibc. Библиотека Eglibc построена на актуальной кодовой базе Glibc и полностью совместима с ней на уровне API и ABI, отличаясь интеграцией некоторых дополнительных наработок для встраиваемых систем, более низкими системными требованиями (поддерживается сборка с отключенными компонентами для обеспечения совместимости), возможностью гибкой настройки компонентов, улучшенной поддержкой кросс-компиляции и кросс-тестирования.
Из добавленных в Glibc 2.15 улучшений можно отметить:
- В состав включена утилита pldd для вывода списка загруженных объектов для заданного процесса;
- Поддержка новых программных интерфейсов:
- scandirat и scandirat64 - для сканирования директории, связанной с указанным файловым дескриптором;
- process_vm_readv, process_vm_writev (поддерживаются только ядром Linux начиная с версии 3.2) - для организации прямого обращения к областям памяти других процессов. Главной идеей технологии доступа к внешним областям памяти является решение задачи по предоставлению MPI-приложениям эффективных средств для взаимодействия между процессами внутри одного узла кластера, например, вместо дополнительного копирования сообщения через разделяемую память можно обеспечить прямой доступ к одной копии сообщения;
- Оптимизации:
- Для математических функций реализованы многочисленные оптимизиации производительности, специфичные для 64-разрядных систем;
- С задействованием инструкций SSE2 и SSSE3 оптимизированы функции strcpy, strncpy, stpcpy и stpncpy для архитектур x86-32 и x86-64.
- Оптимизированы варианты функций strcat и strncat для архитектуры x86-64, а также функций wcscmp, wcslen и strnlen для x86-32 и x86-64;
- C использованием SSE-инструкций оптимизирваны функции strchr и strrchr для архитектуры x86-32 ;
- Оптимизированы функции memchr, memrchr, rawmemchr, memcmp, wmemcmp, wcschr, wcscpy для архитектур x86-64 и x86-32;
- Оптимизированы функции strcasecmp и strncasecmp с использованием инструкций AVX для систем x86-64;
- Оптимизированы strcasecmp и strncasecmp с использованием инструкций SSSE3 и SSE4.2 для архитектуры x86-32;
- Для платформы PPC оптимизированы функции nearbyint и strcasecmp;
- Возобновлена поддержка nss_db, которая теперь избавлена от зависимости от BerkeleyDB и поддерживает выборки через initgroups;
- В nscd реализовано кэширование базы netgroup;
- Обеспечение сборки libm с поддержкой опции gcc "-ffinite-math-onlylibm";
- Добавлена проверка версий FD_SET, FD_CLR и FD_ISSET;
- Новые локали: bho_IN, unm_US, es_CU, ta_LK;
- Исправлено 67 ошибок.
В следующей версии Glibc 2.16 ожидается поддержка режима совместимости со стандартом ISO C11 (добавление timespec_get, aligned_alloc, static_assert, at_quick_exit и quick_exit, скрытие gets, поддержка uchar.h); удаление из состава поддержки архитектуры IA-64 и форматов исполняемых файлов, отличных от ELF; продолжение оптимизации производительности для 64-разрядных архитектур.
Источник: http://www.opennet.ru/opennews/art.shtml?num=33418
|
0 | Tweet | Нравится |
|