[0359] Java

平成14年度春期 初級システムアドミニストレータ試験より
Java言語で作成されたプログラムは、異なるハードウェアや異なる基本ソフトウェア上で実行可能である。この特徴に関連する語句として、適切なものはどれか。
JIT(Just in Time)コンパイラ
仮想マシン
クロスコンパイラ
リバースエンジニアリング

正解

解説

 Javaは、Sun Microsystems社が開発したオブジェクト指向のプログラム言語です。OS などのプラットフォームに依存せず動作するのが特徴です。

 Javaでは、プログラムソースから実行可能なネイティブコードを直接生成しません。一度、バイトコードとよばれる中間モジュールが生成され、インタプリタの役目を果たす JavaVM(仮想マシン)が、バイトコードを読み取りながらプログラムを実行していきます。

 この方式は、実行環境ごとに JavaVM(仮想マシン)さえ用意できれば、どのようなコンピュータ上でもプログラムを実行できるという長所がありますが、1命令ずつ解釈しながら実行するため、あまり高速ではありません。この短所を補うため、プログラムを実行する前に、JIT(Just In Time)コンパイラでバイトコードをネイティブコードに変換してから実行する方式が考え出されました。



 それでは選択肢をみていきましょう。


 JIT(Just in Time)コンパイラ
JITコンパイラは Java に関連する用語ですが、これは実行速度を向上させるためのものです。異なるハードウェアや異なる基本ソフトウェア上で実行できるようにするものではありません。

 仮想マシン
仮想マシンにより、異なる環境でプログラムを実行できるようになります。

 クロスコンパイラ
クロスコンパイラとは、コンパイルを実行している環境以外で実行するためのオブジェクトモジュールを作成するものです。

 リバースエンジニアリング
リバースエンジニアリングとは、実装されたソフトウェアから設計仕様を抽出して、ソフトウェア開発を行うことです。


 よって、イが正解となります。
※ 解説の内容は執筆時点のものであり,含まれている情報の正確性,妥当性について保証するものではありません。ご注意ください・・・

関連する(かもしれない)問題