Kas yra JIT „Java“? - Suprasti „Java“ pagrindus



„Just-In-Time“ kompiliatorius yra viena iš neatsiejamų „Java Runtime Environment“ dalių. Šis straipsnis apie „JIT“ sistemoje „Java“ pasakys, kaip šis kompiliatorius pagerina „Java“ programų našumą.

Kiekviena programavimo kalba naudoja kompiliatorių, kad aukšto lygio kalbos kodą paverstų mašininio lygio dvejetainiu kodu, nes sistema supranta tik dvejetainį kodą. Kompiliatorius skiriasi pagal programavimo kalbos tipą. Dabar kalbame apie , jis naudoja šį nuostabų kompiliatorių, vadinamą JIT („Just-in-Time“) „Java“ . Šis tinklaraštis jums pasakys viską apie „JIT Java Compiler“.

Toliau pateikiamos šio straipsnio temos:



Taigi, pradėkime!

„Java JIT Compiler“ - apžvalga

The „Just-In-Time“ kompiliatorius yra viena iš neatskiriamų . Jis daugiausia atsakingas už „Java“ pagrįstų programų našumo optimizavimą vykdymo metu arba vykdymo metu. Apskritai pagrindinis kompiliatoriaus šūkis yra padidinti programos našumą galutiniam vartotojui ir programos kūrėjui.



Giliai pasinerkite į JIT „Java“

  • Baitų kodas yra pagrindinis „Java“ aplinkos WORA (rašykite vieną kartą, paleiskite bet kur) potencialas. Greitis „Java“ programa priklauso nuo to, kaip baito kodas konvertuojamas į gimtąjį mašinos kodą. Baitų kodą galima interpretuoti arba sukompiliuoti į gimtąjį kodą arba tiesiogiai vykdyti procesoriuje. Bet jei interpretuojamas baitų kodas, tai tiesiogiai veikia programos greitį.

  • Siekdamas pagreitinti našumą, JIT kompiliatorius vykdymo metu bendrauja su JVM, kad sukompiliuotų baitų kodų sekas į gimtąjį mašinos kodą. Iš esmės, naudojant „JIT Compiler“, aparatinė įranga, lygindama su „JVM Interpreter“, gimtąjį kodą lengvai įvykdo. Tokiu būdu bus labai padidintas vykdymo greitis.

  • Kai JIT kompiliatorius kompiliuoja baitų kodų seriją, jis taip pat atlieka tam tikrus optimizavimus, tokius kaip duomenų analizė, vertimas iš rietuvės operacijų į registrų operacijas, pašalinant išreiškimus ir kt. labai efektyvus, kai kalbama apie vykdymą ir našumą.



Dabar, kai žinote pagrindinius „JIT Compiler“ pagrindus, eikime toliau ir supraskime jo veikimą.

JIT kompiliatoriaus darbas „Java“

JIT kompiliatorius pagreitina „Java“ programų veikimą vykdymo metu. Kadangi „Java“ yra , jis susideda iš . Iš esmės tai yra baito kodas, kuris yra nepriklausomas nuo platformos ir elJVM vykdė įvairiose architektūrose.

Darbo eiga:

Žemiau esančioje diagramoje pavaizduota, kaip faktinis kompiliavimo darbas vyksta „Java Runtime Environment“ aplinkoje.

JIT sudarytojas - JIT „Java“ - „Edureka“

  1. Kai koduojate , JRE naudoja aukšto lygio kompiliatorių „javac“ Šaltinio kodas iki baito kodo . Po to JVM įkelia baito kodą vykdymo metu ir konvertuoja į mašinos lygio dvejetainį kodą tolesniam vykdymui naudojant Vertėją.

  2. Kaip jau minėjau aukščiau, „Java“ baito kodo interpretavimas sumažina našumą, palyginti su vietine programa. Štai kur „JIT Compiler“ padeda pagerinti našumą, sukaupdamas baito kodą į vietinį kompiuterio kodą 'pačiu laiku' bėgti.

  3. JIT kompiliatorius yra įjungtas ir įjungtas pagal numatytuosius nustatymus, kai „Java“ yra naudojamas metodas. Kai metodas sudaromas, „Java Virtual Machine“ tiesiogiai sukviečia sukauptą metodo kodą, jo neišaiškindamas. Taigi tam nereikia daug atminties ir procesoriaus laiko. Tai iš esmės pagreitina „Java Native Application“ našumą.

Taigi, taip jis veikia. Dabar įsigilinkime į šį straipsnį ir supraskime „Java“ JIT kompiliatoriaus saugumo aspektus.

JIT „Java“ saugumo aspektai

Baitų kodą į mašininį kodą JIT kompiliatorius kompiliuoja tiesiogiai atmintyje. y. kompiliatorius mašininį kodą tiekia tiesiai į atmintį ir jį vykdo. Tokiu atveju jis nesaugo mašinos kodo į diską prieš iškviesdamas klasės failą ir jį vykdydamas. Iš esmės atmintis turėtų būti pažymėta kaip vykdoma. Saugumo sumetimais tai turėtų būti baigta įrašius kodą į atmintį. Ji taip pat turėtų būti pažymėta kaip tik skaitoma, nes vykdomoji atmintis yra saugumo spraga. Jei norite sužinoti daugiau apie tai, galite peržiūrėti šį straipsnį JIT sudarytojo saugumo aspektai .

Dabar paženkime toliau ir sužinokime apie privalumus ir trūkumus Tiesioginio laiko kompiliatorius Java kalba.

„JIT“ „Java“ privalumai ir trūkumai

Argumentai 'už' :

  1. Jau daugelį metų parašytas „Java“ kodas net ir šiandien veiks greičiau ir tai pagerins „Java“ programų našumą.

  2. Vietiniai vaizdai taip pat vykdomi greičiau, nes jie neturi pradinės veiklos ir reikalauja mažiau atminties.

Minusai:

  1. Padidina .

    antrosios pakopos pažymėjimas ir magistrai
  2. Mažiau kodo turinčioms programoms tiesioginis kompiliavimas nėra naudingas.

Tai leidžia mums baigti šį straipsnį apie JIT „Java“. Tikiuosi, kad jums tai pasirodė informatyvu.

Patikrinkite sukūrė patikima internetinė mokymosi įmonė „Edureka“, turinti daugiau nei 250 000 patenkintų besimokančiųjų tinklą visame pasaulyje. Mes esame čia, kad padėtume jums kiekviename jūsų kelionės žingsnyje, kad taptume be šių „Java“ interviu klausimų, mes parengėme programą, skirtą studentams ir specialistams, norintiems būti „Java“ kūrėjais.

Turite mums klausimą? Prašau paminėti tai šio „JIT in Java“ straipsnio komentarų skyriuje ir mes kuo greičiau susisieksime su jumis.