平成22年 秋期 応用情報技術者 午前 問8

再入可能(リエントラント)プログラムに関する記述のうち、適切なものはどれか。

 ア  再入可能プログラムは、逐次再使用可能プログラムから呼び出すことはできない。
 イ  再入可能プログラムは、呼び出し元ごとに確保された記憶領域に局所変数が割り当てられる。
 ウ  実行途中で待ち状態が発生するプログラムは、再入可能プログラムではない。
 エ  逐次再使用可能なプログラムは、再入可能プログラムである。


答え イ


解説

 ア  再入可能プログラムを呼び出す側に条件はありません。
 イ  再入可能プログラムの説明です。
再入可能プログラムでは局所変数(静的データ)は呼び出し側のタスク(スレッド)の記憶領域に割り当てられます。
 ウ  実行途中で待ち状態が発生するプログラムであっても再入可能プログラムにすることは可能です。
 エ  逐次再使用可能プログラムであっても、再入可能プログラムであるとは限りません。


キーワード
・再入可能プログラム
・逐次再使用可能プログラム

キーワードの解説
  • 再入可能プログラム(reentrant、リエントラント)
    プログラムやサブルーチン(関数)が、複数のタスク(スレッド)から同時に呼び出されても正常に動作するものです。
    プログラムが再入可能であるためには、静的データ(局所変数)があってはならず、呼び出し側の提供するデータで処理を行う必要があります。
  • 逐次再使用可能プログラム(reuseable、リユーザーブル)
    プログラムやサブルーチンが一度実行された後、再ロードや再初期化を行わなくても再使用可能なものです。
    プログラムが逐次再使用可能であるためには、プログラムの終了時点で変数の初期化やメモリの解放などを行い、再使用に備えます。

もっと、「再入可能プログラム」について調べてみよう。

戻る 一覧へ 次へ