応用情報技術者試験 令和4年春 午前問6 解説付き過去問
問題
再入可能プログラムの特徴はどれか。
正解
解説
再入可能プログラム(reentrant program)の特徴についての理解は、マルチタスキング環境でのプログラムの振る舞いを把握する上で重要です。
- 再入可能プログラムの定義
再入可能プログラムは、同一のコードが複数のタスクによって同時に使用されても、それぞれのタスクの実行が互いに影響を受けないように設計されています。この性質は、プログラムがグローバル変数や静的変数を使用せず、状態情報を引数やローカル変数として扱うことで実現されます。 - マルチタスク環境と再入可能性
マルチタスク環境では、複数のプロセスやスレッドが並行して実行されるため、再入可能プログラムの特性が非常に重要になります。再入可能であることによって、各タスクがプログラムの同一のコードセクションを並行して実行しても、データの整合性が保たれ、互いの操作が衝突することなく、正確な処理が可能になります。
したがって、複数のタスクからの呼び出しに対して、並行して実行されても、それぞれのタスクに正しい結果を返すプログラムが再入可能プログラムの特徴であると言えます。この性質は、プログラムが独立性を保ちつつ、複数のプロセスやスレッドに対応できるよう設計されていることを示しています。