正答3
解説
正解は3です。
プログラムの性質を表す用語の区別を問う問題です。
処理の途中で別のプログラムから再び呼び出されても正しく動く性質を、再入可能(リエントラント)といいます。
【選択肢別解説】
1:× 再帰的とは、プログラムが自分自身を呼び出せる性質です。
自分以外から途中で呼び出される場合の正しさを表す用語ではありません。
2:× 再使用可能とは、一度実行が終わった後、再ロードせずに続けて実行しても正しく動く性質です。
実行の途中で呼び出されることは想定していません。
3:○ 再入可能なプログラムは、作業領域を呼出しごとに別々に確保し、命令部分を書き換えません。
そのため、実行中に別のプログラムから呼ばれても互いに干渉せず正しく動作します。
4:× 再配置可能とは、主記憶上のどのアドレスに配置しても実行できる性質です。
呼出しのタイミングとは関係ありません。
【ポイント】
再入可能なプログラムは、再使用可能でもあります。
再帰的なプログラムは途中で自分を呼ぶため、再入可能に作る必要があります。