平成19年 秋期 基本情報技術者 午前 問39

プログラムの各種特性に関する記述のうち、適切なものはどれか。

 ア  再帰的処理のためには、実行途中の状態をFIFO方式で記録し、制御する必要がある。
 イ  再入可能プログラムを実現するためには、プログラムを手続き部分とデータ部分に分割して、データ部分をプロセスごとにもつ必要がある。
 ウ  逐次再使用可能なプログラムは、再入可能である。
 エ  複数のプロセスで同時に実行できるようにしたプログラムは、再帰的である。


答え イ


解説

 ア  再帰的処理を可能にするためには、実行途中の状態をLIFO(スタック)に記録します。
 イ  再入可能なプログラムは手続き部分とデータ部分を分け、データ部分はプロセスごとに持ちます。
 ウ  逐次再使用可能なプログラムは、再入可能ではありません。
 エ  複数のプロセスで同時に実行できるプログラムは、再帰的ではありません。


キーワード
・再帰的処理
・再入可能処理
・逐次再使用可能処理

キーワードの解説
  • 再帰的処理(recursive)
    処理(関数)の中で自分自身の処理を呼び出すことです。
    例としては、階乗の計算などです。
  • 再入可能処理(reentrant)
    複数のプロセスから同時に並行的に実行可能であることです。
    プロセスAから呼び出された処理(関数)が完了する前に、プロセスBから呼び出されてもプロセスA、Bのどちらも正しい結果が得られます。
  • 逐次再使用可能処理(reuseable)
    一度実行したプログラムを変数の初期化などを行うことなく、再度使用できるようにした処理(関数)です。
    ただし、複数のプロセスから同時に呼び出されて実行することはできません。

もっと、「再入可能処理」について調べてみよう。

戻る 一覧へ 次へ