JITコンパイラ

ジャストインタイムコンパイル(Just In Time Compilation、JITコンパイル、その都度のコンパイル)方式とは、ソフトウェアの実時にコードのコンパイルを行い実速度の向上を図る方式である。通常のコンパイラソースコード(あるいは中間コード)から対象CPU機械語への変換を実前に(コンパイル時に)う。これをJITと対比して事前コンパイル (Ahead Of Time, AOT) コンパイルと呼ぶ。

JITコンパイルという用語は、ソフトウェアを構成するモジュールクラス関数などの、ある単位のコードがまさに実されるその時に、コンパイルされることから「Just In Time」の名前が付けられた。一方、動的コンパイルという用語は、実時に機械語を生成するというより広い意味で使われることがあり、その意味ではJITコンパイルは動的コンパイルの一種と考えることができる。

事前コンパイル方式と比べ、JIT方式ではコンパイル時間の分がプログラム実時間に関するオーバーヘッドとなる。また、事前コンパイルで可能な、高度で時間のかかる最適化をうことは許されない。これは、実速度を向上させるためにコンパイルするのだから、あまり時間がかかっては意味がないためである。

事前のコンパイルと比べてこのような不利な点を持ちながらも、JIT方式が有用なのは、実時にコンパイルうことでオペレーティングシステムCPUに依存しないソースコードや中間コードの状態でソフトウェアを配布することができるからである。

JITを装備した処理系は、表面上はインタプリタとして動作するが、内部でコンパイルを行い、メモリ上に生成した機械語のコードが実されるため、インタプリタと比べると実速度を向上することができる。この意味で、JITはCPUOSに依存しない実形式を配布できる、というインタプリタの利点を保ったまま、実速度が遅い、という欠点を克服しようとするものといえる。

JITコンパイラ」『フリー百科事典 ウィキペディア日本語版』(http://ja.wikipedia.org/)。2009年7月28日15時(日本時間)現在での最新版を取得。

続きを見る

おすすめ情報

高品質・低価格のインターネットプロバイダ
インターネットプロバイダー「ASAHIネット」はADSL, 光回線などのインターネット接続を業界最安値水準でを提供している。日経ビジネス・J.D. Power等のお客様満足度調査でも高い評価を得ており。「推奨度№1」といわれるのも納得だ。


2010年プロバイダー【顧客満足度】NO.1 トリプル受賞  ASAHIネット

入会・お問い合わせダイヤル
0120-030-275
携帯電話/PHS/IP電話などからは
03-3569-3526

10:00~19:00(土日祝~17:00)

書面での申し込みはこちら
資料請求

このページのトップヘ