正答1
解説
正解は1です。
プログラムの再利用に関する性質(リエントラント、リユーザブルなど)を区別する問題です。
リエントラント(再入可能)なプログラムは、複数のプロセスから同時に呼び出されても正しく動作します。
これは、手続部分を書き換えず、データ部分をプロセスごとに別々に持つことで実現します。
【選択肢別解説】
1:○ リエントラントは、複数のプロセスが同時に実行しても互いに干渉しない性質です。
共有する手続部分を変更せず、作業領域をプロセスごとに確保するので並行動作できます。
2:× リカーシブ(再帰的)は、実行中に自分自身を呼び出せる性質です。
複数のプロセスからの同時呼出しを保証するものではありません。
3:× リユーザブル(再使用可能)は、一度ロードしたプログラムを再ロードせずに繰り返し実行できる性質です。
逐次的な再使用が前提で、同時に実行することは想定していません。
4:× リロケータブル(再配置可能)は、主記憶上のどのアドレスに配置しても実行できる性質です。
並行動作とは関係ありません。
【ポイント】
リエントラントなプログラムはリユーザブルでもありますが、逆は成り立ちません。
設問に「同時に」「並行して」という語があれば、リエントラントと判断できます。