Java Virtual Machine

  • 03.07.2017
  • Dram
  • 0
  • 341
  • 1
  • 0
Blížiace sa kurzy
Začíname blogovať
Individuálne, Košice, Michalovce
Lukáš Mikulaško
Kurz: "Vedenie a riadenie ľudí - leadership a manažérske zručnosti"
Individuálne, Bratislava
Dr. marek Horňanský, mba.

Java Virtual Machine

 

Náš seriál o Jave pokračuje predstavením si toho, čo stojí za obrovským úspechom javy – JVM alebo Java Virtual Machine. Veľmi jednoducho povedané – JVM je emulácia počítača, ktorá umožňuje Jave bežať na všetkých zariadeniach, ktoré si viete predstaviť. Počítače, android telefóny, automaty na listy v MHD, to všetko je Java.

 

Ako teda Java Virtual Machine funguje?

 

V princípe, JVM zoberie skompilovaný program a ten ďalej spracuje. Program Java kompilátor skompiluje do tzv. bytecode a tento bytecode dokáže JVM verifikovať a interpretovať.

 

Nevyhnutnosť JVM spočíva práve v tom, že na rozdielnych prístrojoch s rozdielnymi operačnými systémami majú počítačové programy k dispozícii rozdielne funkcie, ktoré môžu využívať – takzvané API. JVM je súčasť JRE (Java Runtime Environment) a ďalšou súčasťou JRE sú aj java API. Takže fakt, že pri inštalácii javy na prístroj, kde budú bežať naše programy (povedzme smart televízor), si nainštalujeme aj virtuálny počítač (naša JVM), umožní využívať všetky funkcie, ktoré sú k chodu programu potrebné (API). A keby sme sa rozhodli tento program nainštalovať namiesto Smart TV napríklad na smartfón – nie je problém, pretože na ňom beží rovnaká JRE s našimi API a JVM.

 

Aká je architektúra v pozadí ?

 

JVM je vlastne súbor programov, ktoré sa načítajú do pamäte a vytvoria virtuálny počítač. Patria sem registre, pamäť (STACK a HEAP), execution environment a ďalšie. Rozoberme si to najzaujímavejšie z toho celého a síce ako funguje pamäť.

 

Stack – je časť pamäte ktorá je využívaná na spúšťanie threadu. Ukladajú sa do nej najmä premenné a referencie, ktoré potrebujeme na krátkodobé použitie. Stack pracuje na princípe LIFO (last in first out), čiže posledná premenná, ktorá do pamäte vstúpi – je prvá na rade, keď sa z pamäti vystupuje.

 

Heap – je ešte o kúsok zaujímavejší – slúži na ukladanie objektov a classes. Každý object, ktorý vytvoríme si alokuje kus miesta na Heape. Aby sme pamäť heapu mohli efektívne manažovať – Java má zopár démonov, ktoré voláme Garbage Collector – program, ktorý dokáže detekovať objekty a clasy, ktoré nie sú využívané a vyhadzuje ich z pamäte.

1
Super článok
1
0
0
Nič moc
O autorovi
Dram Dram
Komentáre

Nie ste prihlásený.

Ak chcete pridať komentár, vpíšte svoje prihlasovacie údaje. Systém Vás automaticky prihlási. Ak nemáte konto na iamcool.sk, urobte si krátku registráciu

Blížiace sa kurzy
Najnovšie komentáre
Najčítanejšie články
Súbory cookie nám pomáhajú poskytovať služby. Používaním našich služieb vyjadrujete súhlas s tým, že používame súbory cookie. Ďalšie informácie Zatvoriť