V8 (JavaScript-Implementierung) - LinkFang.de





V8 (JavaScript-Implementierung)


V8
Entwickler V8 Team (Google Inc.)
Aktuelle Version Lua-Fehler in Modul:Wikidata, Zeile 533: attempt to index field 'wikibase' (a nil value)
(Lua-Fehler in Modul:Wikidata, Zeile 533: attempt to index field 'wikibase' (a nil value))
Betriebssystem Windows, Mac OS X, Linux, FreeBSD, Android
Programmier­sprache C++
Lizenz BSD
v8.googlecode.com

V8 ist eine freie Implementierung der Skriptsprache ECMAScript (JavaScript) nach dem Standard ECMA-262. Sie wird vom Unternehmen Google Inc. unter einer BSD-Lizenz als freie Software veröffentlicht. Ausgeliefert wird sie als Teil des Webbrowsers Google Chrome, kann jedoch auch unabhängig davon verwendet werden.[1] V8 soll die Ausführung von JavaScript-Code beschleunigen.

V8 wird von Googles V8-Team unter der Leitung von Lars Bak hauptsächlich in Googles Forschungslabor in Aarhus (Dänemark) entwickelt, das mit der Universität Aarhus zusammen Forschung an und Entwicklung von virtuellen Maschinen betreibt.[2]

Technik

V8 wird in der Programmiersprache C++ entwickelt und unterstützt die x86- und ARM-Hardware-Architekturen und Mehrkernprozessoren.

V8 steigert die Leistung zur Laufzeit, indem der JavaScript-Code bei der Ausführung durch sogenannte Just-in-time-Kompilierung zunächst in nativen Maschinencode übersetzt wird. Weitere Leistungsvorteile ergeben sich aus Optimierungstechniken wie dem Einsatz von Inline Caching, das JavaScript-Objekte versteckt, um geteilte Klassen erweitert, und einer sogenannten „exakten automatischen Speicherbereinigung“, die Speicher schnell und in kleinen Portionen zuweist und wieder freigibt, was hierbei längere Wartezeiten vermeidet.

Die Initialisierung der V8 wird durch Snapshots beschleunigt. Bei der Kompilierung der V8 wird eine JavaScript-Umgebung erstellt, serialisiert und durch den JIT vorkompiliert. Das Kompilat wird als Snapshot in die endgültige V8 integriert und dient zur Laufzeit neuen Instanzen der V8 als Vorlage.

Geschichte

V8 befindet sich seit 2006 in der Entwicklung.[3] Am 3. Juli 2008 wurde erstmals Quellcode veröffentlicht.[4] Als V8 am 2. September 2008 als Teil von Google Chrome veröffentlicht wurde, erreichte es im Vergleich mit anderen gebräuchlichen Implementierungen deutlich überlegene Ausführungsgeschwindigkeiten.[5] In der Folge zogen die Hersteller der anderen verbreiteten Browser daraufhin bald mit ähnlichen Optimierungen nach (wie Mozilla mit den Entwicklungen der Projekte TraceMonkey und JägerMonkey), bis zuletzt auch Microsoft mit der in dem seit dem 15. September 2010 in Beta-Phase befindlichen Internet Explorer 9 enthaltenen überarbeiteten JavaScript-Implementierung zu ähnlichen Ergebnissen kam. Mit der von Google unter dem Projektnamen Crankshaft entwickelten Technik zur Optimierung des JavaScript-Codes zur Laufzeit wurden nochmals deutliche Leistungssteigerungen erzielt.[6] Sie wurde im Dezember 2010 erstmals vorgestellt und ist in Google Chrome seit der Version 10 enthalten.

Verbreitung

V8 wird primär für den Einsatz im Browser Google Chrome entwickelt, aber auch in der ereignisgesteuerten Plattform „Node.js“ findet sie Verwendung. Des Weiteren wird V8 im Rahmen des V8CGI-Projektes (mittlerweile umbenannt in TeaJS) als serverseitige Scriptsprache genutzt, und in der neuen Version 5 der Qt-Bibliothek ersetzt V8 die bisher verwendete JavaScript-Implementierung. Das NoSQL-Datenbanksystem MongoDB benutzt V8 als JavaScript-Implementierung.[7] Mit der V8js Extension kann V8 in PHP integriert werden.[8]

Siehe auch

Weblinks

Einzelnachweise

  1. https://developers.google.com/v8/embed
  2. http://www.heise.de/-202391.html
  3. http://techon.nikkeibp.co.jp/article/HONSHI/20090106/163615/
  4. http://code.google.com/p/v8/source/browse/branches/0.1/ChangeLog
  5. http://www.heise.de/-202963.html
  6. http://www.heise.de/-1149365.html
  7. MongoDB.org Community Blog. In: blog.mongodb.org. Abgerufen am 27. Juni 2016.
  8. V8 Javascript-Engine Integration , PHP Manual.

Kategorien: Google | Android-Software | BSD-Software | ECMAScript | Freies Programmierwerkzeug | Node.js | Virtuelle Maschine | Windows-Software | Mac-OS-Software | Linux-Software

Quelle: Wikipedia - http://de.wikipedia.org/wiki/V8 (JavaScript-Implementierung) (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.