Studium, Ausbildung und Beruf

web uni-protokolle.de
 powered by
NachrichtenLexikonProtokolleBücherForenDienstag, 24. September 2019 

Java Virtual Machine


Dieser Artikel von Wikipedia ist u.U. veraltet. Die neue Version gibt es hier.
Die Java Virtual Machine (abgekürzt 'Java VM' oder 'JVM') ist Laufzeitumgebung und virtuelle Maschine für Software . Die Java Virtual Maschine führt den genannten Java- Bytecode aus.

Bytecode entsteht durch Compilierung von Programmen in aller Regel in der Programmiersprache Java verfasst wurden. Es ist aber sowohl wie praktisch möglich diesen Bytecode auch aus Programmiersprachen heraus oder direkt mit geeigneten Assemblern erzeugen. Umgekehrt ist es auch möglich beim statt Bytecode direkt ausführbare Programme für die Architektur zu erzeugen.

Der Sinn der Java Virtual Machine des Bytecodes ist es plattformunabhängige Programme zu Die JVM dient dabei als Schnittstelle zur und zum Betriebssystem. Nachteilig dabei ist dass Ausführung des Bytecodes die JVM benötigt wird aber für die meisten Plattformen verfügbar ist dass Programme die in dieser Form vorliegen langsamer ausgeführt werden und mehr Speicher verbrauchen nativ für die Plattform kompilierte Programme.

Die VM schottet die in ihr Prozesse vom Betriebssystem ab. Dies hat zur daß es nicht mehr möglich ist mit Mitteln Prozesse zu kontrollieren. Sie stellt aber keine eigenen Funktionen zur Prozesskontrolle und -steuerung Somit können diese auch nicht von außen werden wenn sie auf Grund eines Fehlers Gesamtsystem stören. Dazu muß dann die gesamte beendet werden.

Der große Vorteil einer Virtual Machine aber neben der Plattformunabhängigkeit der Gewinn an Ein VM überwacht zur Laufzeit die Ausführung Programms verhindert also z.B. dass ein Programm fremde Speicherbereiche oder über Arraygrenzen hinweg liest schreibt. Somit werden die gefürchteten Pufferüberläufe verhindert vor allem bei den in C oder geschriebenen Programmen vorkommen und von Angreifern dazu werden können fremden Code auf einem System und es somit anzugreifen und unter Kontrolle bringen.

Aus Performancegründen setzen die meisten Java so genannte JIT-Compiler (JITC) ein die unmittelbar beim Laufen Programms den Bytecode " J ust I n T ime" in Maschinencode übersetzen. Eine Weiterentwicklung dieses Ansatzes ist von Sun entwickelte Hotspot Optimizer. Diese Entwicklungen beheben weitgehend den der JVM der hohe Speicherverbrauch bleibt jedoch Außerdem gibt es designbedingt einige Einbußen vor Dingen durch die Garbage Collection .

Java-Maschinen stehen für alle gängigen Betriebssysteme Verfügung (z.B. Linux Mac Palm-OS Solaris Windows

Die Java VM von Sun ist Teil des JREs (Java-Runtime-Environment).

Weblinks



Bücher zum Thema Java Virtual Machine

Dieser Artikel von Wikipedia unterliegt der GNU FDL.

ImpressumLesezeichen setzenSeite versendenSeite drucken

HTML-Code zum Verweis auf diese Seite:
<a href="http://www.uni-protokolle.de/Lexikon/Java_VM.html">Java Virtual Machine </a>