JVM -arkitektur
Den interne arkitekturen til Java Virtual Machine består av tre hoveddeler.
1. Klasselaster
2. Minneområde
3. Utførelsesmotor
Her er en visuell fremstilling av JVM -arkitektur.
Under alle deler av Java virtuell maskin blir forklart i detalj.
Klasselaster
En klasselaster i JVM refererer til et delsystem som er ansvarlig for å laste inn filer. Det laster et Java -program hver gang vi kjører et Java -program. Java gir følgende klasselaster.
en. Bootstrap ClassLoader
En superklasse av utvidelsesklasselaster som er ansvarlig for å laste inn RT.JAR -fil
b. Extension ClassLoader
Et barn av Bootstrap ClassLoader og foreldre til system/applikasjonsklasselaster, Lading Classloader laster JAR -filer som er lagret i katalogen.
c. System/applikasjonsklasselaster
Denne klasselasteren laster klassefiler fra ClassPath og er et barn av Extension Classloader.
Minneområde
Et JVM -minneområde består av følgende deler.
en. Metodeområde
Hensikten med metodeområdet er å lagre strukturen til klasser som metodedata eller feltdata, runtime Pool og kode for metoder.
b. Haug
Heap er et dataområde for runtime der objekter blir tildelt.
c. Stabler
Stack er ansvarlig for lagring av rammer, lokale variabler og delvise resultater. Det spiller en viktig rolle i metoden påkallelse og metodeavkastning. Hver gang det opprettes en tråd, opprettes en privat JVM -stabel for den aktuelle tråden samtidig og en ny ramme opprettes hver gang en metode blir påkalt, og så snart påkallingen er ferdig, blir rammen ødelagt.
d. PC -registre
Det er ansvarlig for å holde adressene mens JVM -instruksjoner blir utført.
e. Native method Stacks
Det er ansvarlig for å holde alle innfødte metoder som kreves i en applikasjon.
Utførelsesmotor
En utførelsesmotor består av følgende.
en. Tolk
Den utfører instruksjoner etter å ha lest bytekodestrømmen.
b. Just-in-Time (JIT) Compiler
JIT forbedrer ytelsen ved å samle deler av bytecode med lignende funksjonaliteter på samme.
c.Søppelmann
Det brukes til å samle gjenstander som ikke blir referert til og fjerne dem for å frigjøre minnet.
Native Method -grensesnittet
Det hjelper til med å kommunisere med applikasjoner skrevet på forskjellige språk som C, C ++, etc. Det er også ansvarlig for å hjelpe Java -kode som kjører i JVM med å ringe biblioteker og innfødte applikasjoner.
Metodebiblioteker
Den består av innfødte biblioteker (C, C ++) som er nødvendige for utførelsesmotoren.
Konklusjon
Java Virtual Machine (JVM) er en abstrakt maskin som er bygget for å utføre Java -programmer. Arkitekturen til JVM består av tre hoveddeler som er klasselaster, minneområde og en utførelsesmotor. Minneområde og utførelsesmotor består videre av noen deler som har forskjellige funksjonaliteter. Denne opplæringen forklarer arkitekturen til Java Virtual Machine (JVM) som fremhever funksjonene til de forskjellige komponentene.