Laufzeitumgebung
aus Wikipedia, der freien Enzyklopädie
Eine Laufzeitumgebung ist eine Softwareschicht, welche sich zwischen der Anwendungs- und der Betriebssystem-Schicht befindet. Sie stellt von Programmen benötigte Basis-Funktionen zur Verfügung.
[Bearbeiten] Details
Eine Laufzeitumgebung lässt Anwendungsprogramme plattformunabhängig ablaufen. Das heißt, unabhängig von der Hardware und dem Betriebssystem. Steht eine Laufzeitumgebung auf mehreren Plattformen zur Verfügung, können Programme für diese Laufzeitumgebung auf all diesen Plattformen ausgeführt werden. Eine Laufzeitumgebung stellt damit bereits selbst eine „Plattform“ dar, auf der Programme aufsetzen können.
In manchen Fällen ist eine portable virtuelle Maschine Bestandteil einer Laufzeitumgebung. Ein bekanntes Beispiel hierfür ist die Programmiersprache Java. Die Laufzeitumgebung eines Java-Programms wird Java Runtime Environment genannt und vereinigt die Java-Klassenbibliotheken, die z. B. für Ein- und Ausgabe verwendet werden, und die Java Virtual Machine, welche für die Ausführung des Java-Bytecodes verantwortlich ist.
Ein anderes Beispiel ist die Microsofts .NET-Plattform. Die .NET Common Language Runtime (CLR) ist (bei neueren Windows-Betriebssystemen) die Laufzeitumgebung für Programme, welche in C#, Visual Basic .NET, J#, JScript .NET und C++ .Net geschrieben wurden.
[Bearbeiten] Basis-Funktionen
Beispiele für die Basis- oder Grund-Funktionen einer Laufzeitumgebung sind:
- Lesen und Schreiben von Dateien
- Daten über Netzwerke transportieren
- Ein- und Ausgabegeräte steuern
- Daten verwalten
- Sortieren und Suchen
[Bearbeiten] Plattformunabhängigkeit
Beispiele, in denen Laufzeitumgebungen Programmen Plattformunabhängigkeit ermöglichen, sind:
- Java-Applets, welche von verschiedenen Web-Browsern auf verschiedenen Betriebssystemen in verschiedenen Implementierungen der Java-Laufzeitumgebungen ausgeführt werden
- Windows-Programme, welche mit Wine auf x86-basierten Unix- und Linux-Umgebungen laufen
- .NET-Programme, welche in der .NET-Reimplementierung Mono unter Linux laufen
- Linux-Programme, welche auf UNIX-Betriebssystemen wie BSD, Solaris und SCO-Unix in einer speziell angepassten Linux-Umgebung laufen
- IBCS-Programme, welche mittels der IBCS-Unterstützung (bestehend aus Kernel-Umgebung, angepassten Systemaufrufen und Laufzeitbibliotheken) unter Linux laufen
- 32-Bit-Linux-Programme, welche zusammen mit den zugehörigen 32-Bit-Bibliotheken in der 32-Bit-Umgebung von 64-Bit-Linux-Kerneln laufen. Die 32-Bit-Laufzeitumgebung besteht dabei aus der Unterstützung der 64-Bit-CPUs von Intel für 32-Bit-Code, Kernel-Unterstützung für diesen 32-Bit-Modus, 32-Bit-Betriebssystemaufrufen und einem 32-Bit-dynamischen Linker.
- DOS-Programme, welche unter OS/2, UNIX und im DOSEMU unter Linux laufen
- 16-Bit-Windows-Programme, welche unter 32-Bit-Windows, und 32-Bit-Windows-Programme, welche unter 64-Bit-Windows laufen