ืžื”ื“ื•ืจืช ืกืคืจื™ื™ืช PicoLibc 1.4.7 Standard C

ืงื™ืช' ืคืงืืจื“, ืžืคืชื— ื“ื‘ื™ืืŸ ืคืขื™ืœ, ืžื ื”ื™ื’ ืคืจื•ื™ืงื˜ X.Org ื•ื™ื•ืฆืจ ืฉืœ ื”ืจื—ื‘ื•ืช X ืจื‘ื•ืช, ื›ื•ืœืœ XRender, XComposite ื•-XRandR, ืคื•ืจืกื ืฉื—ืจื•ืจ ืฉืœ ืกืคืจื™ื™ืช C ื”ืกื˜ื ื“ืจื˜ื™ืช PicoLibc 1.4.7, ืคื•ืชื— ืœืฉื™ืžื•ืฉ ื‘ืžื›ืฉื™ืจื™ื ืžืฉื•ื‘ืฆื™ื ืขื ืื—ืกื•ืŸ ืงื‘ื•ืข ื•-RAM ืžื•ื’ื‘ืœื™ื. ื‘ืžื”ืœืš ื”ืคื™ืชื•ื—, ื—ืœืง ืžื”ืงื•ื“ ื”ื•ืฉืืœ ืžื”ืกืคืจื™ื™ื” newlib ืžืคืจื•ื™ืงื˜ Cygwin ื• AVR Libc, ืคื•ืชื— ืขื‘ื•ืจ ืžื™ืงืจื•-ื‘ืงืจื™ AVR ืฉืœ Atmel. ืงื•ื“ PicoLibc ืžื•ืคืฅ ืขืœ ื™ื“ื™ ืชื—ืช ืจื™ืฉื™ื•ืŸ BSD. ื”ืจื›ื‘ืช ืกืคืจื™ื” ื ืชืžื›ืช ืขื‘ื•ืจ ืืจื›ื™ื˜ืงื˜ื•ืจื•ืช ARM (32 ืกื™ื‘ื™ื•ืช), i386, RISC-V, x86_64 ื•- PowerPC.

ื‘ืชื—ื™ืœื”, ื”ืคืจื•ื™ืงื˜ ืคื•ืชื— ืชื—ืช ื”ืฉื "newlib-nano" ื•ื ื•ืขื“ ืœืขื‘ื“ ืžื—ื“ืฉ ื›ืžื” ืžื”ืคื•ื ืงืฆื™ื•ืช ืขืชื™ืจื•ืช ื”ืžืฉืื‘ื™ื ืฉืœ Newlib, ืฉื”ื™ื• ื‘ืขื™ื™ืชื™ื•ืช ืœืฉื™ืžื•ืฉ ื‘ืžื›ืฉื™ืจื™ื ืžืฉื•ื‘ืฆื™ื ืขื ืžืขื˜ ื–ื™ื›ืจื•ืŸ RAM. ืœื“ื•ื’ืžื”, ืคื•ื ืงืฆื™ื•ืช stdio ื”ื•ื—ืœืคื• ื‘ื’ืจืกื” ืงื•ืžืคืงื˜ื™ืช ืžืกืคืจื™ื™ืช avrlibc. ื”ืงื•ื“ ื ื•ืงื” ื’ื ืžืจื›ื™ื‘ื™ื ืฉืื™ื ื ื‘ืขืœื™ ืจื™ืฉื™ื•ืŸ BSD ืฉืื™ื ื ื‘ืฉื™ืžื•ืฉ ื‘-buildื” ื”ืžื•ื˜ื‘ืข. ื ื•ืกืคื” ื’ืจืกื” ืคืฉื•ื˜ื” ืฉืœ โ€‹โ€‹ืงื•ื“ ื”ืืชื—ื•ืœ (crt0), ื•ื”ื˜ืžืขืช ืฉืจืฉื•ืจื™ื ืžืงื•ืžื™ื™ื ื”ื•ืขื‘ืจื” ืž-'struct _reent' ืœืžื ื’ื ื•ืŸ TLS (ืื—ืกื•ืŸ ืžืงื•ืžื™ ื—ื•ื˜). ืขืจื›ืช ื”ื›ืœื™ื ืฉืœ Meson ืžืฉืžืฉืช ืœื”ืจื›ื‘ื”.

ื‘ืžื”ื“ื•ืจื” ื”ื—ื“ืฉื”:

  • ื ื•ืกืคื” ืืช ื”ื™ื›ื•ืœืช ืœื‘ื ื•ืช ื‘ืืžืฆืขื•ืช ืžืื•ืžืช ืžืชืžื˜ื™ืช ืžื”ื“ืจ CompCert.
  • ื ื•ืกืคื” ืชืžื™ื›ื” ื‘ืžื”ื“ืจ Clang.
  • ื”ื”ืชื ื”ื’ื•ืช ืฉืœ ืคื•ื ืงืฆื™ื™ืช 'ื’ืžื' ื”ื•ืชืืžื” ืœื”ืชื ื”ื’ื•ืช ืฉืœ Glibc.
  • ื”ื™ื™ืฉื•ื nano-malloc ืžื‘ื˜ื™ื— ืฉื”ื–ื™ื›ืจื•ืŸ ื”ืžื•ื—ื–ืจ ืžื ื•ืงื”.
  • ื‘ื™ืฆื•ืขื™ื ืžืฉื•ืคืจื™ื ืฉืœ nano-realloc, ื‘ืžื™ื•ื—ื“ ื‘ืขืช ืžื™ื–ื•ื’ ื‘ืœื•ืงื™ื ื—ื•ืคืฉื™ื™ื ื•ื”ืจื—ื‘ืช ื’ื•ื“ืœ ื”ืขืจื™ืžื”.
  • ื ื•ืกืคื” ืงื‘ื•ืฆื” ืฉืœ ื‘ื“ื™ืงื•ืช ื›ื“ื™ ืœื‘ื“ื•ืง ืืช ื”ืคืขื•ืœื” ื”ื ื›ื•ื ื” ืฉืœ malloc.
  • ืชืžื™ื›ื” ืžืฉื•ืคืจืช ื‘ืคืœื˜ืคื•ืจืžืช Windows ื•ื”ื•ืกื™ืคื” ืืช ื”ื™ื›ื•ืœืช ืœื‘ื ื•ืช ื‘ืืžืฆืขื•ืช ืขืจื›ืช ื”ื›ืœื™ื mingw.
  • ื‘ืžืขืจื›ื•ืช ARM, ืื ื–ืžื™ืŸ, ืื•ื’ืจ ื”ื—ื•ืžืจื” TLS (Thread-Local Storage) ืžื•ืคืขืœ.

ืžืงื•ืจ: OpenNet.ru