Erinevus JITi ja tõlgi vahel

JIT vs tõlk

Just In Time -kompilatsioon (tuntud ka kui dünaamiline tõlge või JIT) on arvutites kasutatav tehnika arvutiprogrammi käitamisaegse kvaliteedi parandamiseks. See on kahe käituskeskkonnas leiduva idee ühendamine: baidikoodide komponeerimine ja dünaamiline kompileerimine (see on protsess, mida mõned programmeerimiskeele rakendused kasutavad toimingu saavutamiseks, kui süsteem toimingut täidab)..

Tõlk kirjeldab kõige täpsemini toimingu teostamist arvutiprogrammi kaudu. Tõlke tegelike toimingute tüübis on mõned variatsioonid: see käivitab otse programmi lähtekoodi; see teisendab lähtekoodi representatsiooniks, mis on efektiivne vaheesitus, ja käivitab seejärel nimetatud koodi; see käivitab eelkompileeritud koodi, mille on salvestanud ja loonud tõlgisüsteemi kuuluv kompilaator.

Ühine uurimisrühm on võimeline ühendama eeliseid, mis on leitud nii tõlgendamisel kui ka staatilisel (st enne tähtaega) koostamisel. Tõlgendina on JIT võimeline parandama tõlgitud koodiplokkide vahemällu salvestamise tulemusi - võrreldes sellega, et iga koodi rida või operandit hinnatakse lihtsalt iga kord, kui see ilmneb (nagu tõlgendatud keeles). Nii nagu staatiline koodi kompileerimine arenduse ajal, on ka JIT võimeline koodi ümber kompileerima, kui see osutub kõige soodsamaks tegevusplaaniks. Samamoodi nagu staatiline kompileerimine, on JIT võimeline tagama ka julgeolekugarantiid.

Nii nagu kompilaatoritel, on ka tõlkidel võimalik koodi tõlkida. Mõlemad on programmeerimiskeelte rakendamise peamised meetodid; kategooriad "tõlkija" või "tõlk" ei ole siiski eristatavad (kooditõlkijate kahese rolli puhul). Tõlgi kasutamise kõige ilmsem puudus on see, et kui kood on tõlgendatud, töötab programm paratamatult aeglasemalt kui lihtsalt koodi kompileerides; kodeerimise tõlgendamine võtab siiski palju vähem aega kui selle kompileerimine ja käitamine (eriti oluline prototüüpide koostamisel ja koodi testimisel).

Üldiselt pakub JIT palju paremaid tulemusi kui tõlgid ja paljudel juhtudel ka palju paremat jõudlust kui staatilised kompilaatorid. Selle paremust JIT-ga võrreldes ei välista see siiski, et sellel on mõned olulised puudused: rakenduse esmakordsel käivitamisel on väike viivitus (kõrvalmõju, kui võtab aega laadimiseks ja baidikoodi koostamiseks). See loob lõpuks parema kodeerimise; kuid kodeerimise kvaliteediga suureneb sellega seotud algne viivitus.

Kokkuvõte:

1. JIT on tehnika, mida kasutatakse käituskeskkonna jõudluse kvaliteedi parandamiseks; tõlk määratleb toimingu täitmise arvutiprogrammi kaudu.

2. JIT ühendab tõlgendamise ja staatilise koostamise eelised; tõlk suudab koodi tõlkida just nagu kompilaator, kuid programmi kiiruse kahjustamiseks.