musl

De Wikipedia, la enciclopedia libre
Ir a la navegación Ir a la búsqueda
musl
Musl libc.svg
Información general
Tipo de programa Biblioteca estándar de C
Lanzamiento inicial 11 de febrero de 2011
Licencia Licencia MIT
Información técnica
Programado en C
Enlaces

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]

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]