Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
10.2. GLIBC
In Red Hat Enterprise Linux 7, the glibc libraries (
libc
, libm
, libpthread
, NSS plug-ins, and others) are based on the glibc 2.17 release, which includes numerous enhancements and bug fixes relative to the Red Hat Enterprise Linux 6 equivalent.
Notable highlights of the Red Hat Enterprise Linux 7 glibc libraries are the following:
- Experimental ISO C11 support;
- New Linux interfaces:
prlimit
,prlimit64
,fanotify_init
,fanotify_mark
,clock_adjtime
,name_to_handle_at
,open_by_handle_at
,syncfs
,setns
,sendmmsg
,process_vm_readv
,process_vm_writev
; - New optimized string functions for AMD64 and Intel 64 architectures using Streaming SIMD Extensions (SSE), Supplemental Streaming SIMD Extensions 3 (SSSE3), Streaming SIMD Extensions 4.2 (SSE4.2), and Advanced Vector Extensions (AVX);
- New optimized string functions for IBM PowerPC and IBM POWER7;
- New optimized string functions for IBM S/390 and IBM System z with specifically optimized routines for IBM System z10 and IBM zEnterprise 196;
- New locales: os_RU, bem_ZA, en_ZA, ff_SN, sw_KE, sw_TZ, lb_LU, wae_CH, yue_HK, lij_IT, mhr_RU, bho_IN, unm_US, es_CU, ta_LK, ayc_PE, doi_IN, ia_FR, mni_IN, nhn_MX, niu_NU, niu_NZ, sat_IN, szl_PL, mag_IN;
- New encodings: CP770, CP771, CP772, CP773, CP774;
- New interfaces:
scandirat
,scandirat64
; - Checking versions of the FD_SET, FD_CLR, FD_ISSET, poll, and ppoll file descriptors added;
- Caching of the netgroup database is now supported in the
nscd
daemon; - The new function
secure_getenv()
allows secure access to the environment, returning NULL if running in a SUID or SGID process. This function replaces the internal function__secure_getenv()
; - The
crypt()
function now fails if passed salt bytes that violate the specification for those values. On Linux, thecrypt()
function will consult the/proc/sys/crypto/fips_enabled
file to determine if FIPS mode is enabled, and fail on encrypted strings using the Message-Digest algorithm 5 (MD5) or Data Encryption Standard (DES) algorithm when the mode is enabled; - The
clock_*
suite of functions (declared in <time.h>) is now available directly in the main C library. Previously it was necessary to link with-lrt
to use these functions. This change has the effect that a single-threaded program that uses a function such asclock_gettime()
(and is not linked with-lrt
) will no longer implicitly load the pthreads library at runtime and so will not suffer the overheads associated with multi-thread support in other code such as the C++ runtime library; - New header <sys/auxv.h> and function
getauxval()
allow easy access to the AT_* key-value pairs passed from the Linux kernel. The header also defines the HWCAP_* bits associated with the AT_HWCAP key; - A new class of installed header has been documented for low-level platform-specific functionality. PowerPC added the first instance with a function to provide time base register access.