Вышла новая версия системной библиотеки glibc – 2.30.
Некоторые обновления:
- Кодировка символов, информация о типах символов и таблицы транслитерации обновлены и теперь поддерживают Unicode версии 12.1.0.
- Динамический компоновщик принимает аргумент
--preload
для предварительной загрузки объектов в дополнение к переменной окруженияLD_PRELOAD
. - Добавлена функция
twalk_r
. Она похожа на уже имеющуюся функциюtwalk
, но она может передавать дополнительный аргумент в функцию обратного вызова. - В Linux были добавлены функции
getdents64
,gettid
иtgkill
. - Функции
malloc
,calloc
,realloc
,reallocarray
,valloc
,pvalloc
,memalign
иposix_memalign
теперь не работают с объектами, размер которых больше, чемPTRDIFF_MAX
. Это сделано для того, чтобы избежать переполнения типаptrdiff_t
. - Добавлены новые функции
pthread_cond_clockwait
,pthread_mutex_clocklock
,pthread_rwlock_clockrdlock
,pthread_rwlock_clockwrlock
иsem_clockwait
. Они эквивалентныtimed
, но также могут принимать параметрclockid_t
, чтобы определить время ожидания. Все функции позволяют ожидать CLOCK_MONOTONIC и CLOCK_REALTIME. Решение о том, какие часы использовать, принимается во время ожидания (в отличие от pthread_condattr_setclock, который требует выбора часов во время инициализации). - В
AArch64
распознавательGNU IFUNC
вызоваABI
изменился: старые распознаватели все еще работают, а новые могут использовать второй аргумент, который может быть расширен в будущем. В настоящее время он содержит значениеAT_HWCAP2
.