Glibc

Glibc mantiene varios bloques de memoria dinámica que superan la capacidad demandada.Dichos bloques los administra a conveniencia sin necesidad de llamar continuamente al núcleo del sistema operativo.[3]​ Si el núcleo del sistema no dispone de la llamada al sistema solicitada, Glibc devuelve el valor -1 y el código de error ENOSYS (función no implementada) queda almacenado en la variable errno.[4]​ Glibc no proporciona un envoltorio para ser utilizada directamente por una aplicación en espacio de usuario.[5]​ Sin envoltorio disponible, el programador puede utilizar futex mediante la función proxy syscall de GNU.Por ejemplo, utilizar las llamadas a sistema brk y sbrk que manejan el puntero de rotura (program break) interfiere con la función malloc.[6]​ Las extensiones GNU han implementado varias funciones que más tarde fueron estandarizadas como parte del lenguaje C en su estándar C90 y C99.Dichos binarios son distribuidos con Clear Linux, manteniendo múltiples versiones de una misma biblioteca.[a,so], que implementa la funcionalidad del estándar del lenguaje C y de GNU C, aglutina un total aproximado de 500 llamadas a sistema y funciones.
La biblioteca de C de GNU provee funcionalidad que aísla a las aplicaciones del núcleo (Linux en esta imagen). Para utilizar funcionalidad específica de Linux se emplea la rutina syscall() de la biblioteca de C de GNU. O bien una implementación propia de la llamada a sistema en ensamblador. Si una aplicación utiliza la interfaz de llamadas a sistema de Linux con implementaciones propias en exclusiva, entonces dicha aplicación se considera monolítica.