Jitter sa oficiálne stal súčasťou projektu GNU

Pred pár dňami vyšla správa, že projekt Jitter sa oficiálne stal projektom pod krídlami projektu GNU a teraz sa vyvíja pod názvom GNU Jitter s využitím infraštruktúry GNU a v súlade s požiadavkami projektu.

Pre tých, ktorí Jittera nepoznajú, mali by ste vedieť, že ánoa je implementácia, ktorá umožňuje generovať prenosné a veľmi rýchle virtuálne stroje pre ľubovoľné návrhy programovacích jazykov, ktorých výkon pri vykonávaní kódu výrazne predstihuje tlmočníkov a blíži sa k natívnemu kompilovanému kódu.

Jitter je vysoko prenosný a správny VM bude vykazovať presne rovnaké správanie na akejkoľvek platforme, ktorá má iba kompilátor a štandardnú knižnicu C; výkon však bude lepší pri použití jednej z podporovaných architektúr (v súčasnosti: M68k, MIPS, PowerPC, RISC-V, SPARC, x86_64; 64. úroveň: Aarch390, Alpha, ARM, SXNUMXx) na systémoch ELF s GCC. Jitter je samozrejme súčasťou projektu GNU a je určený predovšetkým na použitie v systéme GNU.

jitter berie ako vstup vysokoúrovňovú špecifikáciu podporovaných inštrukcií pomocou virtuálneho stroja, a vo výstupe tvorí implementáciu virtuálneho stroja pripravenú na použitie vykonať dané inštrukcie.

Logika každej inštrukcie v špecifikácii sa špecifikuje pomocou kódu C. Medzi ďalšie funkcie patrí podpora operácií podmieneného vetvenia, ktoré sa ťažko implementujú v jazyku C a sú vlastné dynamickým programovacím jazykom, ako je kontrola hodnoty tagu a kontrola pretečenia.

Runtime Jitter tiež ponúka efektívnu podporu pre ťažko implementovateľné operácie podmieneného vetvenia iba pomocou C, ako je kontrola hodnotových značiek podľa požiadaviek dynamicky zadávaných jazykov a aritmetika s kontrolou pretečenia. Kód VM pristupuje k operáciám volania a návratu procedúry, pričom sa vo väčšine prípadov spolieha na efektívne hardvérové ​​mechanizmy.

Výsledný virtuálny stroj je naformátovaný v C s malým počtom vložiek assembler. Poskytujú sa konfigurácie umožňujúce rôzne optimalizácie a výber mechanizmov doručovania, čo uľahčuje migráciu virtuálneho počítača na rôzne platformy.

Podporuje použitie architektúry vykonávania registra, zásobníka a spojenia, ako aj schopnosť zrkadliť dátové štruktúry virtuálnych strojov v hardvérových registroch CPU a pripojiť zberače odpadu.

Vygenerovaný kód obsahuje jednoduché C API na dynamickú náhradu a spustenie kódu vo virtuálnom stroji, ako aj riadiaci program na samostatné spustenie kódu z textových súborov vo virtuálnom stroji.

Vygenerovaný kód C je silne upravený a možno ho nakonfigurovať na spustenie pomocou rôznych distribučných techník rôznej sofistikovanosti; najefektívnejšie techniky odosielania sa spoliehajú na určitú architektúru špecifickú, ale nie pre VM špecifickú, montážnu podporu poskytovanú Jitterom; všetky expedičné modely, ale jeden je tiež založený na rozšíreniach GNU C.

Nakoniec, pre tých, ktorí majú záujem dozvedieť sa o ňom viac, by mali vedieť, že pôvodný kód Jitter je napísaný v jazyku C a je dostupný pod licenciou GPLv3. Viac sa môžete dozvedieť v nasledujúci odkaz.

Ako získať Jittera?

Pre tých, ktorí majú záujem testovať Jitter, môžu získať zdrojový kód otvorením terminálu a zadaním nasledujúceho príkazu:

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

Keď je to hotové, teraz pristúpime k zadávaniu priečinka s kódom, spustíme spúšťací skript, ktorý sa používa na vygenerovanie potrebných súborov na konfiguráciu a zostavenie Jitter, vrátane konfiguračného skriptu. Robíme to s:

cd jitter && ./bootstrap

Stojí za zmienku, že Jitter dodržiava konvencie GNU pre konfiguráciu a konštrukciu a podporuje konštrukciu zo zdrojového adresára; v skutočnosti podporuje krížovú kompiláciu a dokonca aj spustenie testovacej súpravy v krížovej kompilácii prostredníctvom emulátora.

./configure && make

Nakoniec na vykonanie stačí zadať:

make check


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.