Wydanie standardowej biblioteki C PicoLibc 1.4.7

Keith Packard, aktywny deweloper Debiana, lider projektu X.Org i twórca wielu rozszerzeń X, w tym XRender, XComposite i XRandR, opublikował wydanie standardowej biblioteki C PicoLibc 1.4.7, rozwijanej z myślą o zastosowaniach w urządzeniach wbudowanych z ograniczoną pamięcią stałą i RAM. W trakcie opracowywania część kodu została zapożyczona z biblioteki newlib z projektu Cygwin i AVR Libc, rozwijanej dla mikro kontrolerów Atmel AVR. Kod PicoLibc rozpowszechniany jest dostępny na licencji BSD. Wspierana jest kompilacja biblioteki dla architektur ARM (32-bit), i386, RISC-V, x86_64 i PowerPC.

Początkowo projekt rozwijany był pod nazwą "newlib-nano" i był ukierunkowany na przetworzenie niektórych zasobożernych funkcji Newlib, które były problematyczne w użyciu na urządzeniach wbudowanych z ograniczoną pamięcią RAM. Na przykład, funkcje stdio zostały zastąpione kompaktową wersją z biblioteki avrlibc. Kod został również uprzątnięty z nieużywanych komponentów, które nie były dostarczane na licencji BSD. Dodano uproszczoną wersję kodu inicjalizacyjnego (crt0), a implementacja lokalnych strumieni została przeniesiona z ‘struct _reent’ na mechanizm TLS (thread-local storage). Do kompilacji użyto narzędzi Meson.

W nowym wydaniu:

  • Dodano możliwość kompilacji przy użyciu matematycznie zweryfikowanego kompilatora CompCert.
  • Dodano wsparcie dla kompilatora Clang.
  • Zachowanie funkcji ‘gamma’ spójne z zachowaniem Glibc.
  • W implementacji nano-malloc zapewniono obligatoryjne czyszczenie zwracanej pamięci.
  • Poprawiono wydajność nano-realloc, zwłaszcza przy łączeniu wolnych bloków i rozszerzaniu rozmiaru sterty.
  • Dodano zestaw testów do weryfikacji poprawności działania malloc.
  • Ulepszono wsparcie dla platformy Windows oraz dodano możliwość kompilacji przy użyciu narzędzi mingw.
  • Na systemach ARM z wykorzystaniem został użyty sprzętowy rejestr TLS (Thread-Local Storage).

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster