- Eine Virtuelle Maschine ( abgekürzt VM ) ist
ein Betriebssystem und wird als Gastsystem in einem sogenannten
Hostsystem ausgeführt. Siehe Wikipedia
- Eine Java Virtuelle Maschine ( abgekürzt Java VM
oder JVM ) ist Teil einer Laufzeitumgebung ( JRE ) die
für das Ausführen von Java Programmen und Java Applets verantwortlich
ist. Siehe
Wikipedia
Möchten Sie keine Java Programme oder Java
Applets ausführen, so benötigen Sie auch keine Java
Laufzeitumgebung ( JRE ) auf Ihrem Rechner.
Bemerkung:
- JavaScript ist kein Java, diese Begriffe werden
oftmals verwechselt. JavaScript ist eine Scriptsprache und läuft nur
unter der Kontrolle eines Browsers und nicht in einer Java Virtual
Maschine! Siehe
Wikipedia
- Servlets, das sind Java Programme die auf einem
Web-Server ablaufen und z.B. dynamische Html-Seiten erzeugen können.
Servlets benötigen eine Virtual Maschine! Siehe Wikipedia
- JavaServer Pages oder JSP, ist nicht
JavaScript, sind Java Programme die in Html-Code eingebettet sind und
auf einem Web-Server als Servles konvertiert ablaufen. Hiermit können
ebenfalls dynamische Html-Seiten erzeugt werden. Siehe Wikipedia
Die Java Virtual Machine führt den so genannten
Java-Bytecode aus. Bytecode entsteht durch Compilierung von Programmen,
die z.B. in Java geschrieben sind. Durch die Java Virtual Machine und
des Bytecodes, sind plattformunabhängige Programme möglich.
Die Java Virtual Machine dient dabei als Schnittstelle
zwischen Java-Programm und Betriebssystem der Maschine. Der große
Vorteil einer Java Virtual Machine ist aber neben der
Plattformunabhängigkeit auch der Gewinn an Sicherheit. Eine JVM
überwacht zur Laufzeit die Ausführung des Programms, verhindert also
z.B. dass ein Programm in fremde Speicherbereiche liest oder schreibt.
Java Virtual Machines von SUN stehen für alle gängigen
Betriebssysteme zur Verfügung (z.B. Windows, Linux, usw.).
Für Windows-Vista ist die JRE ab der Java Version 1.6.X
von SUN zu verwenden,
Windows 7 wird von SUN ab der Java-Version 1.6.0_16 als 32
und 64-Bit unterstützt, siehe:
Wenn
Sie ein Java Applet mit einem 64 Bit Browser starten muss auch eine 64
Bit JRE (Java Plug-In) installiert sein.
Wenn
Sie ein Java Applet mit einem 32 Bit Browser starten muss auch eine 32
Bit JRE (Java Plug-In) installiert sein.
Java-Applet über Browser laden und starten
Ungefährer Ablauf:
1) Der User gibt im Browser eine Internetadresse ein.
2) Der Browser holt vom entsprechenden Server diese geforderte
Internetseite.
3) Der Browser überprüft dann diese Html-Seite ob sich darin ein
"APPLET=" Tag befindet.
4) Wenn ja, dann fordert er das installierte Java-PlugIn auf den
nächsten Schritt zu übernehmen.
5) Das java-PlugIn startet dann die JVM (z.B. Java.exe in
Windows).
6) Der ClassLoader läd das Java Applet vom Server.
7) Dabei wird geprüft ob es sich um gültige Class-Dateien handelt
evt. im gepackten Jar Archiv.
...Jar-Archive können Class-Dateien und weitere Ressorcen wie
z.B. Bild- oder Text-Dateien beinhalten.
8) Wenn Prüfung ok, werden die Klassen in den Speicher geladen
und das Applet im Browser gestartet.
Jede unterschiedliche Rechnerarchitektur benötigt seine spezielle
Java VM.
Für die meisten Java-Webanwendungen reicht zur Zeit die 32 Bit
JVM (JRE) mit einem 32 Bit Webbrowser.
Wird der 64 Bit Browser verwendet benötigt man für Java-Applet
Darstellungen natürlich eine 64 Bit JVM (JRE).
Windows 64 Bit Betriebssysteme XP / Vista / 7 haben 2 Internet
Explorer, 32 und 64 Bit. Für Java-Applets können hier auch beide 32 /
64 Bit JVMs installiert werden.
Auf Rechner ohne Java Virtual Maschine (JVM) oder (JRE) können
keine Java-Applets ausgeführt werden. Von SUN kann eine JRE
nachinstalliert werden: http://www.java.com/de/download/manual.jsp
Java-Applikation starten
Eine Java-Applikation ist ein Java-Programm das eigenständig ohne
Browser gestartet wird, lauffähig ist dieses Programm jedoch nur mit
einer JRE (Java Virtual Maschine). Beispiele
über Startvarianten unter Windows
Plattformunabhängigkeit
Mit der Programmiersprache Java kann man
plattformunabhängige Programme schreiben. Nicht jedes Java Programm ist
automatisch plattformunabhängig.
Wenn das Java Programm (Applet) im Internet für alle User zur
Verfügung stehen soll, ist darauf zu achten, dass das Programm auch
wirklich auf den meistverwendeten Betriebssystemen (Windows, Linux und
Mac) fehlerfrei läuft.
Dazu ist es erforderlich das Programm unter den entsprechenden
Betriebssystemen ausführlich zu testen,
Eine Hürde besteht auch noch darin, dass die User im Internet mit
unterschiedlichen Versionen der Java Virtual Maschines ausgestattet
sind.
Ein Problem kann auftreten, wenn z.B. ein Applet das unter der
Java VM-Version 1.1.4 arbeitet, mit einem Servlet kommuniziert, das
unter der Java VM-Version > 1.3 läuft und dabei Klassen über die
Leitung verschickt.
Hierbei ist es möglich, dass diese Klassen beim Empfänger nicht
mehr akzeptiert werden weil sie in den neueren Versionen anders
implementiert wurden.
Darstellung eines Applet unter 3 verschiedenen Betriebssystemen