平成28年度 春期 午前 問20
ソフトウェア
リンカの機能
リンカの機能として,適切なものはどれか。
- ア作成したプログラムをライブラリに登録する。
- イ実行に先立ってロードモジュールを主記憶にロードする。
- ウ相互参照の解決などを行い,複数の目的モジュールなどから一つのロードモジュールを生成する。
- エプログラムの実行を監視し,ステップごとに実行結果を記録する。
答えと解説を見る
✓ これが正解ウ相互参照の解決などを行い,複数の目的モジュールなどから一つのロードモジュールを生成する。
解説
複数の目的モジュールから1つのロードモジュールを作る機能です。
プログラムは、多くの場合、部分ごとに書かれて別々に翻訳され、いくつもの目的モジュールとして生成されます。これらのモジュール同士は、片方が持つ関数や変数を別のモジュールが呼び出す形で結び付けられており、翻訳の時点では相手側のアドレスが決まっていません。この段階を埋めて、モジュールをまとめ、1つの実行可能な形にする機能がリンカです。判定の軸は、扱っている働きが、複数のモジュールをつなぎ合わせて1つの実行可能な形を作る役割なのか、それとも登録や読込み、監視といった別の段階の役割なのかという一点です。この段階では、モジュールごとに残っていた未解決の参照を、他のモジュールが提供する場所に対応づけて確定させ、実行時に必要になる情報の整合を取ります。ここで扱っているのは、翻訳と実行の間に置かれるモジュール結合の段階の意味です。
ほかの選択肢はなぜ違うのか
- ア作成したプログラムをライブラリに登録する…:作成したプログラムをライブラリに登録する働きだと述べています。これはプログラム部品を再利用のためにまとめて保管する管理の作業で、複数のモジュールを結び付けて実行できる形にする段階とは別の役割でした。
- イ実行に先立ってロードモジュールを主記憶に…:実行に先立って実行可能なモジュールを主記憶に読み込む働きだと述べています。これはプログラムを動かす直前に主記憶へ配置する段階の話で、モジュール同士の参照を解決して1つにまとめる段階とは仕事が違いました。
- エプログラムの実行を監視し,ステップごとに…:プログラムの実行を監視し、段階ごとに実行結果を記録する働きだと述べています。これはデバッガや実行時の観測用の道具の役割で、翻訳の後にモジュールをつなぎ合わせる段階の働きとは目的が異なりました。
この問題の用語
- 監視機器や利用者の動きを継続して見て、記録に残しておくこと。稼働状況や性能を見張り、異常に早く気づいて対応するために行います。
出典:平成28年度 春期 基本情報技術者試験 午前 問20
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)