Te tukunga o te whare pukapuka C paerewa PicoLibc 1.4.7

Keith Packard, he kaiwhakawhanake Debian kaha, he kaiarahi mo te kaupapa X.Org me te kaihanga o te maha o nga toronga X, tae atu ki te XRender, XComposite me XRandR, whakaputaina te tukunga o te whare pukapuka C paerewa PicoLibc 1.4.7, i whakawhanakehia hei whakamahi i runga i nga taputapu whakauru me te iti o te rokiroki pumau me te RAM. I te wa o te whakawhanaketanga, i tonohia tetahi waahanga o te waehere mai i te whare pukapuka newlib mai i te kaupapa Cygwin me AVR Libc, i whakawhanakehia mo Atmel AVR microcontrollers. Waehere PicoLibc tohaina e i raro i te raihana BSD. Ka tautokohia te huihuinga whare pukapuka mo ARM (32-bit), i386, RISC-V, x86_64 me nga hoahoanga PowerPC.

I te timatanga, i whakawhanakehia te kaupapa i raro i te ingoa "newlib-nano" me te whai ki te mahi ano i etahi o nga mahi whai rawa a Newlib, he raruraru ki te whakamahi i nga taputapu whakauru me te RAM iti. Hei tauira, kua whakakapia nga mahi stdio ki te putanga kiato mai i te whare pukapuka avrlibc. Kua horoia ano te waehere i nga waahanga kore-BSD-raihana kaore i whakamahia i roto i te hanga whakauru. Kua taapirihia he putanga ngawari o te waehere arawhiti (crt0), a kua nekehia te whakatinanatanga o nga miro rohe mai i te 'struct _reent' ki te tikanga TLS (rokiroki miro-rohe). Ka whakamahia te kete taputapu Meson mo te huihuinga.

I roto i te tukunga hou:

  • Kua taapirihia te kaha ki te hanga ma te whakamahi manatoko pāngarau whakahiato CompCert.
  • He tautoko taapiri mo te Clang compiler.
  • Ko te whanonga o te mahi 'gamma' kua rite ki te whanonga o Glibc.
  • Ko te whakatinanatanga nano-malloc e whakarite ana ka whakawāteahia te pūmahara kua whakahokia mai.
  • Kua pai ake te mahi o te nano-realloc, ina koa ka hanumi nga poraka kore utu me te whakawhanui i te rahi puranga.
  • Kua taapirihia he huinga whakamatautau hei tirotiro i te mahi tika o te malloc.
  • Kua pai ake te tautoko mo te papanga Windows me te taapiri i te kaha ki te hanga ma te whakamahi i te kete taputapu mingw.
  • I runga i nga punaha ARM, mena e waatea ana, kua whakahohea te rehita taputapu TLS (Thread-Local Storage).

Source: opennet.ru