Uclibc

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 6 martie 2020; verificările necesită 3 modificări .

uclibc

µClibc , apeluri de sistem și Linux Kernel / µClinux .
Tip de biblioteca de sistem
Scris in C [2]
Sistem de operare linux
ultima versiune 0.9.33.2 [1] ( 15 mai 2012 )
Licență GNU LGPL
Site-ul web uclibc.org

uClibc  este o bibliotecă standard în limbajul de programare C pentru sistemele încorporate Linux . uClibc a fost conceput pentru a suporta uClinux (o ediție specială a nucleului Linux capabilă să ruleze fără o unitate de gestionare a memoriei [ MMU ]) și, prin urmare, potrivită pentru microcontrolere . (litera u este o adaptare a literei grecești µ , care înseamnă „micro”).

Coordonatorul proiectului este Erik Andersen, celălalt participant activ este Manuel Novoa III.

uClibc este un software gratuit distribuit sub GNU LGPL .

Din 2014, dezvoltarea bibliotecii continuă în furca uClibc-ng .

Caracteristici

uClibc poate rula pe sisteme cu sau fără MMU [3] . Biblioteca acceptă i386 , x86-64 , ARM ( big/little endian ), AVR32 , Blackfin , H8300 , m68k , MIPS (big/little endian), PowerPC , SuperH (big/little endian), SPARC și V850 .

Dintre implementările libc, uclibc-ng suportă cel mai mare număr de platforme de procesoare [4] . De exemplu, se lucrează la adăugarea chinezească c-sky [5] și nds32 [6] .

uclibc-ng

În 2014, dezvoltatorii OpenWRT au anunțat un furk al bibliotecii, numind-o uClibc-ng [7] [8] [9] . Au decis să se bifurcă după ce nu au putut contacta un întreținător timp de mai bine de doi ani. [10] [11] [12] . Începând cu 2017, această furcă continuă să lanseze versiuni, este folosită în Buildroot [13] , OpenADK, OpenWrt/Lede pentru arhitectura ARC, NDS32, Xtensa, sistemele Blackfin. Minidistroul Alpine Linux și OpenWrt/Lede, fostul bazat pe uclibc, au trecut la musl; OpenEmbedded vă permite să utilizați glibc sau musl în loc de uclibc [4] .

Compatibilitatea binară a fost întreruptă între versiuni. Începând cu versiunea 1.0.18, toate bibliotecile au fost îmbinate într-una singură, similar cu musl [4] .

Dezavantaje

Biblioteca nu implementează unele secțiuni ale standardului UNIX libc, în special funcționalitatea libnsl și NSS. De asemenea, nu acceptă versiunea caracterelor [4]

Vezi și

Note

  1. 15 mai 2012, uClibc 0.9.33.2 Lansat . Arhivat din original pe 12 martie 2012.
  2. Proiectul uclibc Open Source pe Open Hub: Pagina de limbi - 2006.
  3. Bibliotecă Alegerea sistemului C Arhivat 23 octombrie 2018 la Wayback Machine , Khem Raj (Comcast) / Embedded Linux Conference Europe 2014 Düsseldorf Germania
  4. 1 2 3 4 uClibc astăzi: Încă are sens Arhivat 23 octombrie 2018 la Wayback Machine / Embedded Linux Conference Europe 2017
  5. [https://web.archive.org/web/20181023195723/https://lwn.net/Articles/758778/ Arhivat 23 octombrie 2018 la Wayback Machine C-SKY(csky) Linux Kernel Port [LWN.net ]]
  6. Copie arhivată (link nu este disponibil) . Preluat la 23 octombrie 2018. Arhivat din original la 23 octombrie 2018. 
  7. uClibc-ng . uclibc-ng.org . Consultat la 11 iulie 2015. Arhivat din original la 10 aprilie 2019.
  8. Dezvoltare sistem Linux încorporat Arhivat 23 octombrie 2018 la Wayback Machine / Bootlin , 2018 „uClibc-ng” (pagina 71)
  9. Mastering Embedded Linux Programming - Chris Simmonds - Google Books
  10. Brodkorb, Waldemar uClibc-ng . Lista de corespondență (20 iulie 2014). Preluat: 23 octombrie 2018.
  11. Petazzoni, Thomas uClibc-ng . Lista de corespondență (21 iulie 2014).
  12. Brodkorb, Waldemar uClibc-ng . Lista de corespondență (21 iulie 2014). Preluat: 23 octombrie 2018.
  13. Copie arhivată . Preluat la 23 octombrie 2018. Arhivat din original la 23 octombrie 2018.

Link -uri