Nodejsのv8エンジンとは何ですか

青灯夜游
リリース: 2021-11-23 13:47:49
オリジナル
2879 人が閲覧しました

nodejs では、V8 エンジンは JavaScript を実行するためのインタープリターであり、JavaScript エンジンです。V8 は「C」を使用して開発され、Google Chrome で使用されます。 JavaScript を実行する前に、V8 はそれをネイティブ マシン コードにコンパイルし、インライン キャッシュなどの方法を使用してパフォーマンスを向上させます。

Nodejsのv8エンジンとは何ですか

#このチュートリアルの動作環境: Windows7 システム、nodejs バージョン 12.19.0、DELL G3 コンピューター。

NodeJS の概要

Baidu Encyclopedia によると、

Node.js は、高性能ネットワーク サーバーを作成するための JavaScript ツールキットです。 Node.js は、ネットワーク サービスとアプリケーションを迅速に構築できるプラットフォームです。このプラットフォームは Chrome の JavaScript ランタイムに基づいており、実際には Google V8 エンジン (Google Chrome ブラウザで使用される) をカプセル化しています。 V8 エンジンは Javascript を非常に高速に実行し、非常に優れたパフォーマンスを発揮します。

NodeJS は、単純なカプセル化を提供してから API 呼び出しを提供するわけではありません。そうであれば、今ほど普及していなかったでしょう。 Node は、いくつかの特別な使用例を最適化し、非ブラウザ環境で V8 をより適切に実行できるようにする代替 API を提供しました。たとえば、サーバー環境では通常、バイナリ データの処理が不可欠ですが、JavaScript ではこれが十分にサポートされていないため、V8.Node ではバイナリ データを便利かつ効率的に処理するための Buffer クラスを追加します。したがって、Node は単に V8 を使用するだけでなく、さまざまな環境でより強力になるように最適化します。

ジャストインタイム コンパイル JIT の概要

V8 は、ジャストインタイム コンパイル テクノロジ (JIT) を使用して、JavaScript コードをローカルのマシン コードに直接コンパイルします。プラットホーム。マクロの観点から見ると、このステップは JavaScript ソース コード -> 抽象構文ツリー -> ローカル マシン コードであり、後のステップは前のステップにのみ依存します。これは他のインタプリタとは異なります。たとえば、Java 言語では、まずソース コードをバイトコードにコンパイルし、次にそれを JVM 用に解釈して実行する必要があります。JVM は、動作中にバイトコードの一部を選択的にローカル マシン コードにコンパイルします。最適化戦略。 V8 は中間コードを生成せず、1 ステップでマシンコードにコンパイルされ、CPU が実行を開始します。解釈と実行のための中間コードを生成する方法と比較して、V8 の戦略では 1 つのステップが節約され、プログラムはより早く実行されます。また、コンパイルされた機械語命令の実行は、中間コードを解釈して実行するよりも高速です。欠点は、バイトコードの中間表現がないため、コードの最適化がより困難になることです。

V8 の概要

V8 は、もともと Google Chrome ブラウザで提供されていた JavaScript エンジンです。これは Chrome の最初のバージョンとともにリリースされ、オープンソース化されました。今ではChromeブラウザ以外にも多くのユーザーがいます。 NodeJS、MongoDB、CouchDB など。

V8 は C で開発され、Google Chrome で使用されます。 JavaScript を実行する前に、他の JavaScript エンジンがそれをバイトコードに変換したり、実行のために解釈したりするのではなく、V8 はそれをネイティブ マシン コード (IA-32、x86-64、ARM、または MIPS CPU) にコンパイルし、インライン キャッシュなどの次のメソッドを使用します。パフォーマンスを向上させるために使用できます。これらの機能により、JavaScript プログラムは V8 エンジンの下でバイナリ プログラムと同じ速度で実行されます。

V8 は、ECMA-262 バージョン 3 で指定されている ECMAScript を実装し、IA-32 または ARM プロセッサを使用して Windows XP および Vista、Mac OS X 10.5 (Snow Leopard および Linux) 上で実行されます。独立して実行することも、任意の C アプリケーションに埋め込むこともできます。プロジェクトは Google Code [1] でホストされ、BSD プロトコルに基づいています。あらゆる組織または個人がそのソース コードを独自のプロジェクトに使用できます。

Forノード関連の知識については、

nodejs チュートリアル

!!

を参照してください。

以上がNodejsのv8エンジンとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!