令和4年度春期 応用情報技術者試験 午前 問6
再入可能プログラムの特徴はどれか。
- ア 主記憶上のどのアドレスから配置しても,実行することができる。
- イ 手続の内部から自分自身を呼び出すことができる。
- ウ 必要な部分を補助記憶装置から読み込みながら動作する。主記憶領域の大きさに制限があるときに,有効な手法である。
- エ 複数のタスクからの呼出しに対して,並行して実行されても,それぞれのタスクに正しい結果を返す。
解答・解説を見る
正解:エ
AI解説
再入可能(リエントラント)プログラムとは、複数のタスクから同時に呼び出されて並行して実行されても、各タスクに対して正しい結果を返すことができるプログラムのことである。共有コードとタスクごとの作業領域(スタックなど)を分離する設計が前提となる。エが正解。 ア: 主記憶上のどのアドレスにも配置して実行できる性質は再配置可能(リロケータブル)プログラムの特徴である。 イ: 手続の内部から自分自身を呼び出せる性質は再帰(リカーシブ)プログラムの特徴である。 ウ: 必要な部分を補助記憶装置から読み込みながら動作し、主記憶容量の制約下で有効な手法はオーバーレイ方式(または仮想記憶方式)の説明である。 エ: 正しい。複数タスクから並行して呼び出されても、それぞれのタスクに対して正しい結果を返せるのが再入可能プログラムの特徴である。 💡 「再入可能」「再帰的」「再配置可能」は名前が似ていて紛らわしい。再入可能=並行呼び出しでも安全、再帰=自分自身を呼ぶ、再配置可能=どこに置いても動く、と対応付けて覚える。
出典:令和4年度 春期 応用情報技術者試験 午前 問6 / 独立行政法人情報処理推進機構(IPA)
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。
※Web掲載用に表記を一部変更しています。著作権はIPAに帰属します。