ИздаванС Π½Π° стандартната C Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° PicoLibc 1.4.7

ΠšΠΈΠΉΡ‚ ΠŸΠ°ΠΊΠ°Ρ€Π΄, Π°ΠΊΡ‚ΠΈΠ²Π΅Π½ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π° Debian, Ρ€ΡŠΠΊΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅Π» Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° X.Org ΠΈ ΡΡŠΠ·Π΄Π°Ρ‚Π΅Π» Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ X Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ XRender, XComposite ΠΈ XRandR, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° стандартната C Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° PicoLibc 1.4.7, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ устройства с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ постоянно ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ RAM. По Π²Ρ€Π΅ΠΌΠ΅ Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° част ΠΎΡ‚ ΠΊΠΎΠ΄Π° бСшС заимствана ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° newlib ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Cygwin ΠΈ AVR Libc, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ Π·Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€ΠΈ Atmel AVR. PicoLibc ΠΊΠΎΠ΄ разпространява сС ΠΎΡ‚ ΠΏΠΎΠ΄ BSD Π»ΠΈΡ†Π΅Π½Π·. БглобяванСто Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° сС ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° Π·Π° ARM (32-Π±ΠΈΡ‚ΠΎΠ²Π°), i386, RISC-V, x86_64 ΠΈ PowerPC Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ.

ΠŸΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ бСшС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π΅Π½ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Ρ‚ΠΎ β€žnewlib-nanoβ€œ ΠΈ имашС Π·Π° Ρ†Π΅Π» Π΄Π° ΠΏΡ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΈ някои ΠΎΡ‚ рСсурсоСмкитС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π° Newlib, ΠΊΠΎΠΈΡ‚ΠΎ бяха ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΈ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π²Π³Ρ€Π°Π΄Π΅Π½ΠΈ устройства с ΠΌΠ°Π»ΠΊΠΎ RAM. НапримСр Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΡ‚Π΅ stdio са Π·Π°ΠΌΠ΅Π½Π΅Π½ΠΈ с ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Π° вСрсия ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° avrlibc. ΠšΠΎΠ΄ΡŠΡ‚ ΡΡŠΡ‰ΠΎ Π΅ изчистСн ΠΎΡ‚ Π½Π΅Π»ΠΈΡ†Π΅Π½Π·ΠΈΡ€Π°Π½ΠΈ ΠΎΡ‚ BSD ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ са ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ във Π²Π³Ρ€Π°Π΄Π΅Π½Π°Ρ‚Π° компилация. Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ опростСна вСрсия Π½Π° ΠΊΠΎΠ΄Π° Π·Π° инициализация (crt0) ΠΈ внСдряванСто Π½Π° Π»ΠΎΠΊΠ°Π»Π½ΠΈ нишки Π΅ прСмСстСно ΠΎΡ‚ β€žstruct _reentβ€œ към TLS ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° (Π»ΠΎΠΊΠ°Π»Π½ΠΎ ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° нишки). Π—Π° сглобяванС сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΡƒΠΌΡŠΡ‚ Meson.

Π’ Π½ΠΎΠ²Π°Ρ‚Π° вСрсия:

  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° матСматичСски ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ CompCert.
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π° Clang.
  • ΠŸΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° функцията 'gamma' Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ Π² ΡΡŠΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΠ΅ с ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° Glibc.
  • РСализацията nano-malloc Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°, Ρ‡Π΅ Π²ΡŠΡ€Π½Π°Ρ‚Π°Ρ‚Π° ΠΏΠ°ΠΌΠ΅Ρ‚ сС изчиства.
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° производитСлност Π½Π° nano-realloc, особСно ΠΏΡ€ΠΈ сливанС Π½Π° свободни Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΈ Ρ€Π°Π·ΡˆΠΈΡ€ΡΠ²Π°Π½Π΅ Π½Π° Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π½Π° ΠΊΡƒΠΏΡ‡ΠΈΠ½Π°Ρ‚Π°.
  • Π”ΠΎΠ±Π°Π²Π΅Π½ Π΅ Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ тСстовС Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»Π½Π°Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π° Π½Π° malloc.
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Windows ΠΈ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° инструмСнтариума mingw.
  • Π’ ARM систСми, Π°ΠΊΠΎ Π΅ Π½Π°Π»ΠΈΡ‡Π΅Π½, хардуСрният Ρ€Π΅Π³ΠΈΡΡ‚ΡŠΡ€ TLS (Thread-Local Storage) Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€Π°Π½.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru