Uclibc

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 6. marts 2020; checks kræver 3 redigeringer .

uclibc

µClibc , systemkald og Linux-kerne / µClinux .
Type systembibliotek _
Skrevet i C [2]
Operativ system linux
nyeste version 0.9.33.2 [1] ( 15. maj 2012 )
Licens GNU LGPL
Internet side uclibc.org

uClibc  er et C -programmeringssprog- standardbibliotek til Linux -indlejrede systemer . uClibc blev designet til at understøtte uClinux (en speciel udgave af Linux-kernen, der er i stand til at køre uden en hukommelsesstyringsenhed [ MMU ]) og dermed velegnet til mikrocontrollere . (bogstavet u er en tilpasning af det græske bogstav µ , der betyder "mikro").

Projektkoordinator er Erik Andersen, den anden aktive deltager er Manuel Novoa III.

uClibc er gratis software distribueret under GNU LGPL .

Siden 2014 er udviklingen af ​​biblioteket fortsat i uClibc-ng- gaffelen .

Funktioner

uClibc kan køre på systemer med eller uden en MMU [3] . Biblioteket understøtter i386 , x86-64 , ARM ( big/little endian ), AVR32 , Blackfin , H8300 , m68k , MIPS (big/little endian), PowerPC , SuperH (big/little endian), SPARC og V850 .

Blandt libc-implementeringer understøtter uclibc-ng det største antal processorplatforme [4] . For eksempel arbejdes der på at tilføje kinesisk c-sky [5] og nds32 [6] .

uclibc-ng

I 2014 annoncerede OpenWRT- udviklerne en forgrening af biblioteket og kaldte det uClibc-ng [7] [8] [9] . De besluttede at gå på gaffel efter at have været ude af stand til at kontakte en vedligeholder i mere end to år. [10] [11] [12] . Fra 2017 fortsætter denne gaffel med at frigive udgivelser, den bruges i Buildroot [13] , OpenADK, OpenWrt/Lede for ARC-arkitektur, NDS32, Xtensa, Blackfin-systemer. Den tidligere uclibc-baserede Alpine Linux minidistro og OpenWrt/Lede skiftede til musl; OpenEmbedded giver dig mulighed for at bruge glibc eller musl i stedet for uclibc [4] .

Binær kompatibilitet var brudt mellem versioner. Siden version 1.0.18 er alle biblioteker blevet slået sammen til ét, svarende til musl [4] .

Ulemper

Biblioteket implementerer ikke nogle sektioner af standard UNIX libc, især funktionaliteten af ​​libnsl og NSS. Understøtter heller ikke tegnversionering [4]

Se også

Noter

  1. 15. maj 2012, uClibc 0.9.33.2 udgivet . Arkiveret fra originalen den 12. marts 2012.
  2. uclibc Open Source-projektet på Open Hub: Languages-side - 2006.
  3. Choosing System C-bibliotek Arkiveret 23. oktober 2018 på Wayback Machine , Khem Raj (Comcast) / Embedded Linux Conference Europe 2014 Düsseldorf Tyskland
  4. 1 2 3 4 uClibc i dag: Giver stadig mening Arkiveret 23. oktober 2018 på Wayback Machine / Embedded Linux Conference Europe 2017
  5. [https://web.archive.org/web/20181023195723/https://lwn.net/Articles/758778/ Arkiveret 23. oktober 2018 på Wayback Machine C-SKY(csky) Linux Kernel Port [LWN.net ]]
  6. Arkiveret kopi (link ikke tilgængeligt) . Hentet 23. oktober 2018. Arkiveret fra originalen 23. oktober 2018. 
  7. uClibc-ng . uclibc-ng.org . Hentet 11. juli 2015. Arkiveret fra originalen 10. april 2019.
  8. Embedded Linux-systemudvikling Arkiveret 23. oktober 2018 på Wayback Machine / Bootlin , 2018 "uClibc-ng" (side 71)
  9. Mastering Embedded Linux Programming - Chris Simmonds - Google Books
  10. Brodkorb, Waldemar uClibc-ng . Postliste (20. juli 2014). Hentet: 23. oktober 2018.
  11. Petazzoni, Thomas uClibc-ng . Postliste (21. juli 2014).
  12. Brodkorb, Waldemar uClibc-ng . Postliste (21. juli 2014). Hentet: 23. oktober 2018.
  13. Arkiveret kopi . Hentet 23. oktober 2018. Arkiveret fra originalen 23. oktober 2018.

Links