PicoLibc raibhurari yeC yemasisitimu akadzika mune zvishoma zviwanikwa

Yakabatanidzwa-C-

Keith Packard anoshanda anoshanda weDebian uye zvakare iri X.Org mutungamiri weprojekiti uye zvakare musiki yeakawanda X ekuwedzera, inosanganisira XRender, XComposite, uye XRandR. PicoLibc nderimwe remabasa ake uye iri raibhurari yeC iyo yakagadzirirwa kushandiswa mumidziyo yakadzika nezvinhu zvishoma (ndokuti, vane zvishoma zvakagadziriswa nzvimbo yekuchengetera uye RAM). Munguva yekusimudzira, imwe yekodhi yakakweretwa kubva kuCygwin uye AVR Libc raibhurari nyowani yebhuku, iyo yakagadzirirwa iyo Atmel AVR microcontroller.

Keith Packard akatanga kusimudzira mushure mekunge atadza kuwana yakadzikama vhezheni yeLibc, iyo inogona kushandiswa pamidziyo yakadzika-RAM yakadzika. Iyo purojekiti yave ichivandudza kubva gore rapfuura. Muchikamu chekutanga, iyo purojekiti yaive newlib musiyano, umo mashandiro e stdio akatsiviwa neiyo compact vhezheni yeavrlibc (stdio mu newlib haina kuchinjirwa kune inorema kudyiswa kwezviwanikwa).

Sezvo zviitiko zveChina zviripo zvino zvine chekuita nebasa riri kuenderera mberi paRISC-V dhizaini nekusimudzira maturusi emidziyo yakadzamirwa, nguva pfupi yadarika Wakatarisa mamiriro eiyo libc kuitiswa y akagumisa chei, ine tweak shoma, musanganiswa we newlib uye avrlibc inogona kunge iri mhinduro yakanaka yepasirese. Pakutanga, chirongwa ichi chakagadzirwa pasi pezita "newlib-nano", asi kudzivirira kuvhiringidzika neraibhurari yeNewlib, yakapihwa zita rekuti PicoLibc.

Nezve PicoLibc

Mune fomu yazvino, Picolibc akatoita basa kubvisa kodhi yese isina kupihwa pasi pezenisi reBSD (Iyi kodhi haina kushandiswa mukereke yezvigadzirwa zvakadzamirwa), izvo zvakarerutsa mamiriro acho nerezinesi reprojekti.

Thread yekumisikidza kwenzvimbo yakatamiswa kubva ku 'dhiza _reent' kuenda kuTLS (Thread Yemunharaunda Kuchengeta) mashandiro. Iyo compact vhezheni ye stdio inogoneswa nekutadza, inotorwa kubva kuavrlibc raibhurari kodhi (ATmel-yakatarwa inosangana inoisa yakanyorwa zvekare muC).

Zvishandiso zve Meson anoshandiswa kuumba, chii inokutendera kuti usabatise zvinyorwa zve newlib uye kurerutsa kuchinjisa shanduko kubva newlib. Iyo yakareruka vhezheni yeiyo yekutanga kodhi (crt0) yakawedzerwa, yakanamatira kune inoitisa faira, uye kuitiswa usati waendesa kutonga kune iyo main () basa.

Kodhi kodhi yePicoLibc inoparadzirwa pasi pezenisi reBSD uye Raibhurari inotsigira ARM (32-bit), i386, RISC-V, x86_64, uye mapurani ePowerPC.

Nezve iyo nyowani vhezheni yePicoLibc 1.1

Ini ichangobva kupa kuburitswa kweshanduro nyowani yePicoLibc 1.1, imomo raibhurari yekubatsira yakawedzerwa kutsigira tekinoroji yekubatira, Iyo inobvumidza kodhi kumhanya mune yekugadzirisa kana emulator nharaunda kuti ishandise yekuisa / yekubuda nzira kubva kune inomiririra system.

Kune masystem anotsigira akavhurika, kuvhara, kuverenga, uye kunyora system kufona, tinystdio inowedzera yakaenzana POSIX I / O maficha, kusanganisira fopen uye fdopen mashandiro, pamwe nekusunga kwe stdin / stdout / stderr kune POSIX-yakatsanangurwa faira inotsanangudza.

  • Dzazvino shanduko dzakatakurwa pamusoro kubva kunewlib kodhi base. Kusanganisira yakawedzera libm stubs ye fenv.h, iyo inogona kushandiswa pane masystem pasina kukarukureta rutsigiro.
  • Wakawedzera iyo Hello World application compilation muenzaniso ne picolibc yeARM neRISC-V masisitimu, pamusoro pekubvisa iyo newlib, libm, uye mathfp madhairekitori aive neisina kushandiswa kodhi yekuedza.

Kutanga kushandisa Picolibc

Kuti utange nePikolibc, iwe unofanirwa kuziva kuti Picolibc inoshandisa meson kuvaka system kuumbiridza mapuratifomu akasiyana siyana pane inomiririra Linux uchishandisa GCC. Ndosaka vachifanira kuve nemeson sechikamu chenzvimbo yekuvandudza, pamusoro pekuve iine Python 3 neNinja yakaiswa. Kune izvi unogona kubvunza muperekedzi wayo Mune inotevera chinongedzo. 

Chekupedzisira, kuti uwane iyo Picolibc kodhi, unogona kuzviita kubva kunotevera chinongedzo, kwaungawana magwaro anodiwa. 

Kana nenzira imwecheteyo yavanogona kubvunza gwara rinotevera randakawana pamambure uye ine ruzivo rwakadzama.


Iva wekutanga kutaura

Siya yako yekutaura

Your kero e havazobvumirwi ichibudiswa. Raida minda anozivikanwa ne *

*

*

  1. Inotarisira iyo data: Miguel Ángel Gatón
  2. Chinangwa cheiyo data: Kudzora SPAM, manejimendi manejimendi.
  3. Legitimation: Kubvuma kwako
  4. Kutaurirana kwedata
  5. Dhata yekuchengetedza: Dhatabhesi inobatwa neOccentus Networks (EU)
  6. Kodzero: Panguva ipi neipi iwe unogona kudzora, kupora uye kudzima ruzivo rwako