musl

biblioteca estándar de C

musl es una biblioteca estándar de C destinada a sistemas operativos basados en el núcleo Linux, publicada bajo la licencia MIT.[1]​ Fue desarrollado por Rich Felker con el objetivo de escribir una implementación libc limpia, eficiente y conforme a los estándares.[2]

musl
Información general
Tipo de programa Biblioteca estándar de C
Desarrollador Rich Felker
Lanzamiento inicial 11 de febrero de 2011
Licencia Licencia MIT
Información técnica
Programado en C
Versiones
Última versión estable 1.2.51 de marzo de 2024
Enlaces

Visión general editar

musl fue diseñado desde cero para permitir enlazado estático de bibliotecas eficaz y tener robustez de calidad en tiempo real al evitar condiciones de carrera, fallas internas en el agotamiento de los recursos y varios otros comportamientos del peor de los casos presentes en las implementaciones existentes.[2]​ El tiempo de ejecución dinámico es un solo archivo con ABI estable que permite actualizaciones sin carreras y el soporte de enlazado estático permite implementar una aplicación como un único binario portátil sin una sobrecarga de tamaño significativa.

Afirma compatibilidad con la especificación POSIX 2008 y el estándar C11.[3]​ También implementa la mayoría de las funciones no estándar Linux, BSD y glibc ampliamente utilizadas.[cita requerida]

La versión 1.2.0 tiene soporte para Unicode 12.1.0 (aunque aún tiene soporte completo para UTF-8,[4]​ más conforme/estricto que glibc), y la versión 1.2.1 presenta una nueva implementación de malloc, mallocng, reemplazando la implementación original dlmalloc, el que sufría de problemas de diseño fundamentales.[5]

Distribuciones que usan musl editar

Algunas distribuciones de Linux que usan o pueden usar musl como biblioteca estándar de C incluyen Alpine, Dragora 3, Gentoo Linux, OpenWrt, Sabotage, Morpheus Linux y Void Linux. Para los binarios que se han vinculado contra glibc, gcompat[6]​ se puede utilizar para ejecutarlos en distribuciones basadas en musl.

Véase también editar

Referencias editar

  1. Rich Felker (29 de abril de 2016). «COPYRIGHT». Consultado el 26 de septiembre de 2016. 
  2. a b «Introduction to musl». 21 de abril de 2016. Consultado el 26 de septiembre de 2016. 
  3. «Compatibility». wiki.musl-libc.org. 27 de mayo de 2014. Consultado el 26 de septiembre de 2016. 
  4. «musl libc - Functional differences from glibc». wiki.musl-libc.org. Consultado el 13 de agosto de 2020. 
  5. «musl libc Release History». musl.libc.org. Consultado el 13 de agosto de 2020. 
  6. «Adélie Linux / gcompat». GitLab (en inglés). Consultado el 21 de octubre de 2019. 

Enlaces externos editar