正答4
解説
正解は4です。
再入可能(リエントラント)プログラムとは、複数のタスクから同時に呼び出されても正しく動作するプログラムです。
命令の部分を共有し、変数などのデータ領域をタスクごとに分けて持つことで実現します。
プログラムの性質を表す似た用語との区別が問われています。
【選択肢別解説】
1:× 主記憶のどのアドレスに置いても実行できるのは、再配置可能(リロケータブル)プログラムの特徴です。
再入可能プログラムの説明ではありません。
2:× 手続の中から自分自身を呼び出せるのは、再帰的(リカーシブ)プログラムの特徴です。
再入可能性とは別の性質です。
3:× 必要な部分を補助記憶装置から読み込みながら動作するのは、オーバレイ方式の説明です。
主記憶が小さいときの手法であり、再入可能プログラムの特徴ではありません。
4:○ データをタスクごとに分けて扱うので、複数のタスクから並行して呼び出されても、それぞれに正しい結果を返せます。
これが再入可能プログラムの特徴です。
【ポイント】
再配置可能、再使用可能、再入可能、再帰的の四つはセットで出題されます。
再入可能プログラムは「手続部分とデータ部分を分け、データをタスクごとに持つ」と覚えましょう。