JVM


Java Virtual Machine

Die Java Virtual Machine Specification definiert die JVM als eine imaginäre Maschine, die durch Softwareemulation auf einer realen Maschine oder direkt durch Hardware implementiert werden kann. Sie definiert damit eine virtuelle Hardwarespezifikation, für die jeglicher Java-Programmcode compiliert wird. Weil diese Hardwarespezifikation imaginär ist, sind Java-Programme von den realen Hardwareplattformen unabhängig.

Konkret definiert die JVM-Spezifikation:
  • den Befehlssatz (in Analogie zum Befehlssatz einer CPU),
  • den Registersatz,
  • den Stack,
  • einen Heap mit Garbage-Collection,
  • die Speicherverwaltung und
  • das Format der Class-Dateien.

In der Praxis ist eine JVM daher in der Regel ein in einem WWW-Browser integrierter Interpreter zur überwachten Ausführung von Java-Bytecode auf der jeweiligen Hardwareplattform.

Java-Quelltexte müssen vorher mit Hilfe eines Compilers in den maschinenunabhängigen Bytecode übersetzt worden sein. Dieser kann entweder mit einem Interpreter von der Kommandozeile aus (Java-Anwendung) oder aus einer HTML-Seite gestartet werden (Applet).

Das Codeformat der JVM ist ein sehr kompakter Bytecode. Da die Befehlslänge auf ein Byte beschränkt ist, kann es maximal 256 verschiedene Befehle geben. Programme, die durch Bytecode dargestellt werden, unterliegen einer sehr strengen Typüberprüfung. Der Großteil der Typüberprüfungen wird bereits zur Compilezeit durch einen Bytecodeüberprüfer durchgeführt. Ein Java-Interpreter muss in der Lage sein, jedes Programm auszuführen, dessen Class-Dateien der Java Virtual Machine Specification entsprechen.

0-9|A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z|alle

Suche im Lexikon nach im

 

Fachartikel

Unvorhergesehenen Ereignissen besser begegnen [5.08.2020]

Was haben ein kleines Familienunternehmen, ein mittelständischer Betrieb und ein großer Konzern gemeinsam? Sie alle müssen mit unvorhersehbaren Ereignissen rechnen, die in Betriebsunterbrechungen, -ausfällen und Produktivitätsstopps ihrer Mitarbeiter resultieren können – sei es durch Naturkatastrophen oder eine Downtime bei modernen Telekommunikationstechnologien. Für Unternehmen heißt das: Vorsicht vor Nachsicht walten lassen. Doch wie bereiten sie sich am besten auf das Unvorhersehbare vor? Der Fachartikel gibt darauf eine Antwort. [mehr]

Grundlagen

Pass-the-Hash-Angriffe [23.06.2020]

Mit einer erfolgreichen Pass-the-Hash-Attacke wird ein Angreifer leicht Administrator der Windows-Domäne. Doch weil es technisch sehr schwierig ist, Inhalte des Arbeitsspeichers zu verteidigen, gibt es für die seit mehr als zwei Jahrzehnten bekannte Sicherheitslücke keinen Patch, sondern nur Empfehlungen für eine bessere Organisation der IT. Der ursprünglich sehr aufwendige Pass-the-Hash-Attacke ist heute nur noch eine Sache weniger Klicks. Wir beleuchten die Grundlagen dieses Angriffsvektors. [mehr]