Shpikja e bibliotekës standarde të C-së PicoLibc 1.8.9

ËshtĂ« publikuar lĂ«shimi i bibliotekĂ«s standarde C PicoLibc 1.8.9, qĂ« zhvillohet nga Keith Packard (udhĂ«heqĂ«si i projektit X.Org) pĂ«r pĂ«rdorim nĂ« pajisje tĂ« integruara me hapĂ«sirĂ« tĂ« kufizuar tĂ« ruajtjes sĂ« pĂ«rhershme dhe memories sĂ« operativĂ«s. GjatĂ« zhvillimit, njĂ« pjesĂ« e kodit Ă«shtĂ« marrĂ« nga biblioteka newlib e projektit Cygwin dhe AVR Libc, e cila Ă«shtĂ« zhvilluar pĂ«r mikro-kontrollorĂ«t Atmel AVR. Kodi PicoLibc shpĂ«rndahet nĂ«n licencĂ«n BSD. MbĂ«shtetet ndĂ«rtimi i bibliotekĂ«s pĂ«r arkitekturĂ«n ARM (32-bit), Aarch64, i386, RISC-V, x86_64, m68k, PowerPC, LatticMico32, LoongArch dhe OpenRisc.

Fillimisht, projekti Ă«shtĂ« zhvilluar nĂ«n emrin "newlib-nano" dhe ishte i orientuar drejt rishikimit tĂ« disa funksioneve qĂ« kĂ«rkonin shumĂ« burime tĂ« Newlib, tĂ« cilat ishin problematike pĂ«r t'u pĂ«rdorur nĂ« pajisje tĂ« pĂ«rfshira me RAM tĂ« vogĂ«l. PĂ«r shembull, nĂ« PicoLibc funksionet stdio janĂ« zĂ«vendĂ«suar me njĂ« version kompakt nga biblioteka avrlibc. Kodi gjithashtu Ă«shtĂ« pastruar nga komponentĂ«t qĂ« nuk pĂ«rdoren nĂ« ndĂ«rtimin pĂ«r pajisje tĂ« pĂ«rfshira, qĂ« nuk shpĂ«rndahen nĂ«n licencĂ«n BSD. ËshtĂ« shtuar njĂ« variante i thjeshtuar i kodit tĂ« inicializimit (crt0), dhe implementimi i thirrjeve Ă«shtĂ« transmetuar nga 'struct _reent' nĂ« mekanizmin TLS (storage lokal pĂ«r threads). PĂ«r ndĂ«rtimin Ă«shtĂ« pĂ«rdorur mjeti Meson.

NĂ« versionin e ri:

  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r arkitekturĂ«n LoongArch, OpenRISC dhe LatticMico32.
  • ËshtĂ« propozuar implementimi i skedarit tĂ« titullit uchar.h, i cili shfaqet nĂ« standartin C11.
  • ËshtĂ« shtuar parametri nano-malloc-clear-freed pĂ«r pastrimin e memories, e liruar pas ekzekutimit tĂ« free() ose realloc().
  • ËshtĂ« realizuar mundĂ«sia e pĂ«rdorimit tĂ« clang multilib nĂ« sistemet ARM64.
  • Kalim nĂ« mjetet e reja picolibc-ci-tools pĂ«r ndĂ«rtim automatike nĂ« sistemet e integrimit tĂ« vazhdueshĂ«m.
  • PĂ«r arkitekturĂ«n MIPS Ă«shtĂ« realizuar mbĂ«shtetje pĂ«r teknologi 'semihosting', e cila i lejon kodit qĂ« ekzekutohet nĂ« njĂ« mjedis debuggjeri ose emulatori tĂ« pĂ«rdorĂ« mekanizmat e hyrjes/ daljes sĂ« sistemit host.
  • PĂ«r procesorĂ«t Xtensa Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r picocrt dhe semihost.
  • Shtohen parametra pĂ«r pĂ«rdorim me CoreBoot.
  • ËshtĂ« shtuar funksioni memset_explicit(), i cili shfaqet nĂ« standartin C23.
  • TĂ« dhĂ«nat e konvertimit tĂ« regjistrit tĂ« simboleve janĂ« pĂ«rditĂ«suar deri nĂ« specifikacionin Unicode 15.1.0.
  • JanĂ« transferuar funksionet asnprintf() dhe vasnprintf() nga biblioteka newlib.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r emulatorin FVP (Fixed Virtual Platforms), qĂ« zhvillohet nga ARM.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r versionet e vjetra tĂ« pĂ«rpunuesit GCC (mĂ« tĂ« vjetrat se 4.4).
  • Implementimet iconv dhe locale janĂ« zĂ«vendĂ«suar me variante mĂ« kompakte, ku Ă«shtĂ« angazhuar kodi i pĂ«rbashkĂ«t pĂ«r punĂ«n me kodet e karaktereve.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster