平成22年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問10
テクノロジ/ソフトウェア動的リンキングの機能はどれか。
出典:平成22年度 春期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問10
- アプログラムの実行中に,主記憶を有効に利用するためにプログラムを再配置する。
- イプログラムの実行中に,必要になったモジュールを共用ライブラリやシステムライブラリからロードする。
- ウプログラムの実行中に,読み込まれたページの論理アドレスを物理アドレスに変換する。
- エプログラムの実行に先立って,複数の目的プログラムを連係編集(リンケージエディット)する。
正解:イ
解説
動的リンキングは,プログラムの実行に先立って全てのモジュールを結合しておくのではなく,プログラムの実行中に必要になったモジュールを,共用ライブラリやシステムライブラリから,その時点でロードして結合する機能です。これによって,実行時まで不要なモジュールをロードせずに済み,主記憶やディスクの利用を効率化できます。主記憶内でのプログラムの再配置や,論理アドレスから物理アドレスへの変換,実行に先立つ連係編集(静的リンキング)とは異なる概念です。
選択肢ごとの解説
- ア誤り。プログラムの実行中に主記憶を有効利用するためにプログラムを再配置する機能は,コンパクション(再配置)の説明であり,動的リンキングの説明ではありません。
- イ正しい。動的リンキングは,プログラムの実行中に必要になったモジュールを,共用ライブラリやシステムライブラリから動的にロードして結合する機能です。
- ウ誤り。プログラムの実行中に,読み込まれたページの論理アドレスを物理アドレスに変換するのは,仮想記憶におけるアドレス変換の機能であり,動的リンキングの説明ではありません。
- エ誤り。プログラムの実行に先立って複数の目的プログラムを連係編集することは,静的リンキングの説明であり,実行中にモジュールを結合する動的リンキングとは異なります。