Google V8 JavaScript Engine

出典: フリー百科事典『ウィキペディア(Wikipedia)』
ナビゲーションに移動 検索に移動
Google V8 JavaScript Engine
V8ロゴ
開発元 Google
最新版 7.8[1] / 2019年9月27日(43日前) (2019-09-27
リポジトリ chromium.googlesource.com/v8/v8
対応OS Windows XP SP2 以降
Mac OS X v10.5 Leopard
Linux
プラットフォーム IA-32, x64, ARM, MIPS[2][3]
種別 JavaScriptエンジン
ライセンス 修正BSDライセンス
公式サイト v8.dev
テンプレートを表示

Google V8 JavaScript Engineは、Googleが開発するオープンソースJIT Virtual Machine型のJavaScriptエンジンである[4]。文脈によっては、単にV8と呼称されるが、この名前は同じく「V8」と略されるV型8気筒エンジンに由来している[5]Google ChromeなどのChromiumベースのブラウザや、Node.jsなどで採用されている。

概要[編集]

ECMAScript (ECMA-262) 5th Edition準拠で、C++で記述されている。スタンドアロンでの実行が可能なほか、C++で書かれたアプリケーションの一部として動作させることもできる。

Firefoxはインタープリタで実行して、統計情報をとって[6]、まず中間コードに変換し、その上でJITコンパイルするが、V8では、中間コードもなく、インタープリタも搭載せずに最初の実行時からコンパイルする[4]

開発リーダーは、Java HotSpot の開発者でもある、ラース・バク英語版

V8のアセンブラは、Strongtalk英語版のアセンブラをベースとしている。

2010年12月に”Crankshaft”と呼ばれる最適化コンパイラが導入されスピードが改善された。

2017年5月にリリースされたv5.9からそれまで利用されてきたコンパイラ”Full-Codegen”と最適化コンパイラ”Crankshaft”が取り除かれて3年半に渡って開発が行われていたインタプリタ”Ignition”とコンパイラ”TurboFan”の組み合わせに置き換えられ、メモリ消費量の削減とスピードの改善が行われた[7]

参照[編集]

  1. ^ V8 release v7.8”. V8 Project. 2019年11月9日閲覧。
  2. ^ Introduction - Chrome V8”. Google Developers. 2014年9月8日閲覧。
  3. ^ Chrome V8 - Google Developers”. Google Developers. 2014年9月8日閲覧。
  4. ^ a b Design Elements - Google V8 JavaScript Engine - Google Code
  5. ^ 「V8」エンジンに込めた高速化の願い、Google Chromeの狙いとは”. ITmedia (2008年9月3日). 2011年12月24日閲覧。
  6. ^ an overview of TraceMonkey ✩ hacks.mozilla.org
  7. ^ Launching Ignition and TurboFan

関連項目[編集]

  • Blink - Chromiumベースのブラウザで採用されているレンダリングエンジン
  • Node.js

外部リンク[編集]