Ukukhutshwa kwethala leencwadi elisemgangathweni le-C PicoLibc 1.4.7

UKeith Packard, umphuhlisi osebenzayo weDebian, inkokeli yeprojekthi ye-X.Org kunye nomyili wezandiso ezininzi ze-X, kuquka i-XRender, i-XComposite kunye ne-XRandR, epapashwe ukukhululwa kwethala leencwadi elisemgangathweni C I-PicoLibc 1.4.7, iphuhliselwe ukusetyenziswa kwizixhobo ezifakelweyo ezinokugcinwa okusisigxina kunye ne-RAM. Ngexesha lophuhliso, inxalenye yekhowudi yaboleka kwithala leencwadi entshalib ukusuka kwiprojekthi yeCygwin kunye AVR Libc, iphuhliselwe i-Atmel AVR microcontrollers. Ikhowudi yePicoLibc isasazwa ngu phantsi kwelayisensi ye-BSD. Indibano yethala leencwadi ixhaswa kwi-ARM (32-bit), i386, RISC-V, x86_64 kunye ne-PowerPC yezakhiwo.

Ekuqaleni, le projekthi yaphuhliswa phantsi kwegama elithi "newlib-nano" kwaye ijolise ekusebenzeni kwakhona eminye yemisebenzi enzima ye-Newlib, eyayiyingxaki ekusebenziseni izixhobo ezifakwe kwi-RAM encinci. Umzekelo, imisebenzi ye-stdio ithathelwe indawo ngoguqulelo lwecompact olusuka kwilayibrari ye-avrlibc. Ikhowudi nayo ihlanjululwe kwizinto ezingenalayisenisi ze-BSD ezingasetyenziswanga kwisakhiwo esifakwe ngaphakathi. Ushicilelo olulula lwekhowudi yokuqalisa (crt0) yongeziwe, kwaye ukuphunyezwa kwemisonto yendawo iye yasuswa kwi-'struct _reent' ukuya kwindlela ye-TLS (intambo yogcino lwendawo). I-Meson toolkit isetyenziselwa ukudibanisa.

Kukhupho olutsha:

  • Wongeze isakhono sokwakha usebenzisa iqinisekisiwe ngokwemathematika umqokeleli CompCert.
  • Inkxaso eyongeziweyo yomqokeleli weClang.
  • Ukuziphatha komsebenzi we-'gamma' kuziswe kwindlela yokuziphatha kwe-Glibc.
  • Ukuphunyezwa kwe-nano-malloc kuqinisekisa ukuba imemori ebuyisiweyo iyacinywa.
  • Ukusebenza okuphuculweyo kwe-nano-realloc, ngakumbi xa kudityaniswa iibhloko zasimahla kunye nokwandisa ubungakanani bemfumba.
  • Kongezwe iseti yovavanyo ukujonga ukusebenza okuchanekileyo kwe-malloc.
  • Inkxaso ephuculweyo yeqonga leWindows kwaye yongeza ukukwazi ukwakha usebenzisa i-mingw toolkit.
  • Kwiinkqubo ze-ARM, ukuba zikhona, irejista yehardware ye-TLS (i-Thread-Local Storage) yenziwe yasebenza.

umthombo: opennet.ru