Sunteți pe pagina 1din 2

 O aplicație Java are nevoie de clase JavaAPI pt.

a putea fi executată

6. Tipuri de Garbage Collector


R: Proiectarea și performanțele unui JVM sunt influențate de:
 GC – Garbage Collector – responsabil cu dealocarea memoriei ce nu mai este
folosită de aplicația Java
TIPURI:-1)copying algorithm
 Copiază obiectele dintr-o parte a memoriei în altă parte și o
eliberează pe cea originală, rămasă nereferențiată
 Compactează memoria
 Nu poate fi întrerupt în timpul copierii: se blochează sistemul
2) mark and sweep algorithm
 Marchează toate obiectele folosite, apoi le dezactivează pe cele
nefolosite
 Sistemul nu se blochează, deoarece GC-ul poate fi întrerupt pentru a
fi executate alte funcții
 Nu compactează memoria, ceea ce duce la fragmentarea acesteia.
Pentru a evita acest lucru, se folosește împreună cu un algoritm de compactare
3) the generational algorithm
 Separă obiectele în grupuri de generații conform momentului în care
le-a fost alocată memorie, pornind de la ideea că alocarea/dealocarea de memorie pt. obiectele
care au timp de viață mai mare este pierdere de timp.
 Obiectele din generațiile tinere sunt șterse mai des
 Obiectele pot fi mutate dintr-o generație mai tânără într-una mai
îmbătrânită

7. Algoritmi folosiți de Execution Engine


R: Folosesie 3 algoritmi:
1) Interpretarea
 Programul Java este încărcat în fiecare moment pt. a fi executat
 Interpretorul JVM analizează și traduce în cod nativ fiecare instrucțiune,
octet cu octet
 Codul redundant este rulat din nou la fiecare execuție
Avantaje: usor de portat pe orce platform hardware, simplitate
Dezavantaje: Performante scazute din cauza redundantei
2)Compilarea Just-in-time
 Interpretează o singură dată programul
 Compilează și salvează codul în starea nativă corespunzătoare acelui
moment, pt. a fi folosit la o nouă rulare
Avantaje:Elimina codul redundant
Dezavantaje:Timp de executie prelungit din cauza generarii codului native corespunzator
fiecarui octet
Necesita memorie suplimentara: trebuie sa salveze si codul Javabyte sic el native
3) Compilarea WAT/AOT
 Întregul cod Javabyte este compilat în cod nativ, fără interpretare
Avantaje:Mai performant decat JIT pentru codul neredundant
Dezavantaje:Mai slab decat JIT pentru codul redundant
Timp de execuție suplimentar, din cauza claselor Java ce trebuie compilate și
introduse în sistem în timpul rulării

8. Compilarea. Interpretoare de tip .NET

R:  Aplicațiile sunt compilate și link- editate pt. a genera un cod independent de platformă:
MSIL – Microsoft Intermediate Language
 Pentru ca un limbaj de nivel înalt să fie compatibil .NET trebuie să adopte standardul
Common Language

S-ar putea să vă placă și