Jitter je uradno postal del projekta GNU

Pred nekaj dnevi je bila objavljena novica, da je projekt Jitter je uradno postal projekt pod okriljem projekta GNU in se zdaj razvija pod imenom GNU Jitter z uporabo infrastrukture GNU in v skladu z zahtevami projekta.

Za tiste, ki ne poznajo Jitterja, morate vedeti, da jea je izvedba, ki omogoča ustvarjanje prenosnih in zelo hitrih virtualnih strojev za poljubne zasnove programskih jezikov, katerih zmogljivost izvajanja kode je bistveno pred tolmači in blizu domači prevedeni kodi.

Jitter je zelo prenosljiv in pravilen VM bo pokazal popolnoma enako obnašanje na kateri koli platformi, ki ima samo prevajalnik in standardno knjižnico C; vendar bo zmogljivost boljša z uporabo ene od podprtih arhitektur (trenutno: M68k, MIPS, PowerPC, RISC-V, SPARC, x86_64; 64. raven: Aarch390, Alpha, ARM, SXNUMXx) na sistemih ELF z GCC. Seveda je Jitter del projekta GNU in je zasnovan predvsem za uporabo v sistemu GNU.

jitter vzame za vhod specifikacijo na visoki ravni podprtih navodil z virtualnim strojem, in v izhodu tvori implementacijo virtualnega stroja, ki je pripravljena za uporabo za izvedbo danih navodil.

Logika vsakega navodila v specifikaciji je določen s kodo C. Dodatne funkcije vključujejo podporo za operacije pogojnega razvejanja, ki jih je težko izvesti v C in so neločljivo povezane z dinamičnimi programskimi jeziki, kot sta preverjanje vrednosti oznake in preverjanje prelivanja.

Izvajanje Jitter ponuja tudi učinkovito podporo za težko izvedljive pogojne operacije razvejanja, ki uporabljajo samo C, kot je preverjanje oznake vrednosti, kot zahtevajo dinamično tipkani jeziki, in aritmetika s preverjanjem prelivanja. Koda VM dostopa do operacij klica in vračanja postopkov, pri čemer se v večini primerov zanaša na učinkovite mehanizme strojne opreme.

Nastali virtualni stroj je formatiran v C z majhnim številom vstavkov montažer. Na voljo so konfiguracije, ki omogočajo različne optimizacije in izbiro mehanizmov dostave, kar olajša selitev virtualnega stroja na različne platforme.

Podpira uporabo arhitektur izvajanja registrov, skladov in združitev, pa tudi zmožnost zrcaljenja podatkovnih struktur navideznega stroja v registrih strojne opreme CPU in povezovanja zbiralnikov smeti.

Ustvarjena koda vključuje preprost C API za dinamično zamenjavo in izvajanje kode v navideznem stroju, kot tudi program krmilnika za ločeno izvajanje kode iz besedilnih datotek v navideznem stroju.

Ustvarjena koda C je močno pogojena in jo je mogoče konfigurirati za izvajanje z uporabo različnih distribucijskih tehnik različne prefinjenosti; najučinkovitejše tehnike odpošiljanja se zanašajo na določeno arhitekturno specifično, vendar ne za VM, montažno podporo, ki jo zagotavlja Jitter; vsi modeli pošiljanja, vendar eden temelji tudi na razširitvah GNU C.

Nazadnje, tisti, ki jih zanima več o tem, bi morali vedeti, da je izvirna koda Jitter napisana v C in je na voljo pod licenco GPLv3. Več lahko izveste v naslednja povezava.

Kako do Jitterja?

Za tiste, ki jih zanima, da bi lahko preizkusili Jitter, lahko pridobijo izvorno kodo tako, da odprejo terminal in vanj vnesejo naslednji ukaz:

git clone http://git.ageinghacker.net/jitter

Ko je to opravljeno, nadaljujemo z vnosom mape, ki ima kodo, izvedli bomo zagonski skript, ki se uporablja za ustvarjanje potrebnih datotek za konfiguracijo in gradnjo Jitterja, vključno s konfiguracijskim skriptom. To naredimo z:

cd jitter && ./bootstrap

Omeniti velja, da Jitter sledi konvencijam GNU za konfiguracijo in konstrukcijo ter podpira gradnjo iz izvornega imenika; pravzaprav podpira navzkrižno prevajanje in celo izvajanje testnega paketa v navzkrižnem prevajanju prek emulatorja.

./configure && make

Na koncu za izvedbo samo vnesite:

make check


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.