コンテンツにスキップ

V8 (JavaScriptエンジン)

出典: フリー百科事典『ウィキペディア(Wikipedia)』

これはこのページの過去の版です。2402:6b00:7469:5600:fdd7:3ff0:e02b:9f28 (会話) による 2020年4月7日 (火) 06:20個人設定で未設定ならUTC)時点の版であり、現在の版とは大きく異なる場合があります。

V8
V8ロゴ
開発元 Google
最新版
8.1[1] / 2020年2月25日 (5年前) (2020-02-25)
リポジトリ ウィキデータを編集
対応OS Windows 7以降
macOS 10.12以降
Linux
プラットフォーム x64, IA-32, ARM, MIPS[2]
種別 JavaScriptエンジン
ライセンス 修正BSDライセンス
公式サイト v8.dev
テンプレートを表示

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

概要

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

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

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

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

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

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

脚注

関連項目

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

外部リンク