平成18年度秋期 基本情報 問21−40 解答編





このページは

基本情報

(基本情報技術者試験)

解答と解説のページです。

問題だけで勉強したい方は目次へ戻ってください


問21 メモリインタリーブの説明として、適切なものはどれか。
CPUと主記憶間のアクセスを高速化するために、キャッシュメモリと主記憶の両方に同時にデータを書き込む。
CPUと主記憶のアクセス速度の違いによるボルトネックを解消するために、高速かつ小容量のメモリを配置する。
主記憶へのアクセスを高速化するために、主記憶内部を複数のバンクに分割し、各バンクを並列にアクセスする。
パイプライン処理を乱す要因をなくすために、キャッシュメモリを命令用とデータ用の二つに分離する。
解答
解説 メモリインタリーブとは、複数のバンクと呼ばれる単位に分けておくことで、高速にアクセスできます。アクセス幅が1の場合は3語分、アクセス幅が2の場合は6語分に同時にアクセスできます。

画像(問21kai)を表示できません

問22 回転数が4,200回/分で、平均位置決め時間が5ミリ秒の磁気ディスク装置がある。この磁気ディスク装置の平均待ち時間は何ミリ秒か。
10
12
14
解答
解説 平均待ち時間とは、平均位置決め時間(シーク時間)と平均回転待ち時間の和になります。平均回転待ち時間は半回転にかかる時間なので、4200回転/分=70回転/秒。よって、1回転するのに1/70秒かかります。この半分なので、1/140秒≒0.00714秒。よって、平均待ち時間は、5ミリ秒+約7ミリ秒で約12ミリ秒となります。

平均待ち時間にデータ転送時間を加えたものが平均アクセス時間となります。

問23 図に示すように、データを細分化して複数台の磁気ディスクに格納することを何と呼ぶか。ここでb0〜b15はデータがビットごとにデータディスクに格納される順番を示す。

画像(問23)を表示できません
ストライピング
ディスクキャッシュ
ブロック化
ミラーリング
解答
解説 RAID(Redundant Arrays of Inexpensive Disks あるいはRedundant Arrays of Independent Disks)とは、複数のHDDを1台の高信頼性のHDDとして利用する技術のことです。RAID1〜5は冗長ビットをどこに配置するかで決まります。代表的なRAIDの例を下に示します。

RAID0(ストライピング):複数のHDDに分散してデータを書き込む(冗長性はない)
RAID1(ミラーリング):複数のHDDに同じデータを書き込む
RAID5:ブロック単位で冗長データをもつが、特定のドライブに冗長データを書き込むということはしない。

また、複数の技術を組み合わせた、RAID1+0、RAID0+1、RAID5+0、RAID0+5、RAID5+1、RAID1+5などもあります。

ディスクキャッシュとは、HDDと主記憶とのアクセス速度の差を埋めるもので、ブロック化とは複数のレコードをまとめて管理することをいいます。

問24 シリアルATAの特徴として、適切なものはどれか。
1本のケーブルにマスタとスレーブの2台を接続できる。
内蔵ハードディスク専用の規格である。
複数のポートを束ねて用いることによって高速化できる。
ポートマルチプレイヤを用いてポート数が拡張できる。
解答
解説 シリアルATA(SATA)とは、従来のATA(IDE)やUltraATAなどのパラレル転送と異なり、シリアル化をし、高速化したもので、外部記憶用のドライブを接続するインタフェースです。

マスタとスレーブは、1つのIDEケーブルに2つの機器をつなぐ際に、認識をわけるために行う設定です。シリアルATAでは1対1で接続を行うので設定は必要ありません。ポートマルチプレイヤという技術を使うことで、1チャンネルあたりのデバイス数を増やすことができます。

問25 液晶ディスプレイと比較した場合、有機ELディスプレイの特徴として、適切なものはどれか。
視野角が狭い。
寿命が長い。
発熱が少ない。
自ら発光する。
解答
解説 ディスプレイに関する問題の出題率は高いので、以下にまとめます。

CRT:いわゆる普通のブラウン管のディスプレイ。電子ビームと偏光版を使って画像を作ります。
PDP:PはプラズマのPで、高い電力が必要となります。
TFT:TはトランジスタのTで、1つ1つの画素をトランジスタの発光で実現しています。
有機EL:自らの発光でバックライトの不要なタイプ。次世代に期待されています。
液晶:光の透過を画素ごとに制御し、カラーフィルタを用いて色を表現する。自ら発光はしない。

問26 横1,600画素、縦1,200画素で、24ビットのカラー情報をもつ画像が投影できるディジタルカメラがある。このカメラに8Mバイトの記憶用メモリを使用すると、何枚の画像が記憶できるか。ここで、画像は圧縮しないものとする。
11
15
解答
解説 画像データは、解像度×1画素をあらわすのに必要なデータ量で決まります。つまり、1,600×1,200×24ビット=1.6×1.2×3Mバイト=5.56Mバイト。よって、8Mバイトのメモリには、1枚しか入りません。

問27 仮想記憶システムにおいて、ページ置換えアルゴリズムとしてFIFOを採用して、仮想ページ参照列1、4、2、4、1、3を3ページ枠の実記憶に割り当てて処理を行った。表の割当てステップ“3”までは、仮想ページ参照列中の最初の1、4、2をそれぞれ実記憶に割当てた直後の実記憶ページの状態を示している。残りをすべて参照した直後の実記憶ページの状態を示す太線部分に該当するものはどれか。

画像(問27)を表示できません
画像(問27ans)を表示できません
解答
解説 順番に追いかけていくとしたのようになります。

画像(問27kai)を表示できません

アルゴリズムがFIFOなので、先に入れたものから順に入れ替えられます。LRUと違っていくら利用されていても、最も古いものがページアウトされます。

問28 入出力装置が主体のタスクをタイプA、CPU処理が主体のタスクをタイプBとする。マルチプログラミング環境で、同数のタイプAとタイプBのタスクを同時に実行する場合、システムのスループットが最も高くなることが期待できるスケジュール方式はどれか。
タイムスライス方式のスケジューリングを採用し、タイムクォンタムはタイプAのタスクを長くし、タイプBのタスクを短くする。
タイムスライス方式のスケジューリングを採用し、タイムクォンタムはタイプAのタスクを短くし、タイプBのタスクを長くする。
優先度方式のスケジューリングを採用し、優先度はタイプAのタスクを高くし、タイプBのタスクを低くする。
優先度方式のスケジューリングを採用し、優先度はタイプAのタスクを低くし、タイプBのタスクを高くする。
解答
解説 まず、2つのスケジューリング方式をまとめます。

タイムスライス方式:CPUを短い時間(タイムクォンタム)に区切って、タスクに順番に割り当てます。
優先度方式:タスクに優先順位をつけて、優先度の高いものから順に処理を行います。(待ち時間も考慮した優先順位にしないと、いつまでも処理されないタスクが発生する可能性があります:スタベーション)

入出力処理が多いタスクは、CPU処理と比べてCPUを使わない時間が多くなるので、CPU処理を多く行うタスクに多くのCPUを使わせる方が全体として効率的であるといえます。一方で、入出力の必要があった場合には、速やかにCPUを使えるようにするべきです。

よって、優先度方式を採用し、タスクAが使える場合はタスクACPUを使わせ、終わり次第、タスクBに使わせるようにするべきです。

問29 図はプロセスの状態と遷移を表している。a、b、cの状態の適切な組合せはどれか。

画像(問29)を表示できません
画像(問29ans)を表示できません
解答
解説 タスクの3状態に関する問題です。


aは、CPUの使用権が与えられたということは、CPUを使って作業ができるということなので、実行状態です。
bは、入力動作が完了したもので、CPUの使用権が与えられるのを待っているので、実行可能状態です。
cは、入出力を行っている最中なので、待ち状態です。

問30 スプーリングの説明として、適切なものはどれか。
キーボードからの入力データを主記憶のキューにいったん保存しておく。
システムに投入されたジョブの実行順序を、その特性や優先順位に応じた決定する。
通信データを直接通信相手の装置に送らず、あらかじめ登録しておいた代理の装置に送る。
プリンタなどの低速な装置への出力データをいったん高速な磁気ディスクに格納しておき、その後に目的の装置に出力する。
解答
解説 スプーリングとは、プリンタなどの低速な出力装置にダイレクトにデータを送ると時間がかかるため、一旦HDD等にデータを入れてそこからプリンタにデータを送ることで、処理効率を向上させる処理方式です。

選択肢アは、バッファリングの説明です。(キーボードから入力されたデータを保存しておく領域をキーバッファといいます。)
選択肢イは、スケジューラ(ジョブスケジューラ)の説明です。
選択肢ウは、プロキシの説明です。(プロキシを専門で行うサーバをプロキシサーバあるいは代理サーバといいます。)

問31 クライアントサーバシステムにおけるRPCの説明として、適切なものはどれか。
遠隔地からコンピュータにアクセスしてくるユーザが、登録済か否かを確認する方式
データベースに対する一連の処理手順を一つにまとめ、クライアントから引数を渡してサーバで処理を行う方式
プログラム間の通信方式の一つで、処理の一部をほかのコンピュータに任せる方式
別の場所にあるコンピュータの磁気ディスクを共有資源として遠隔利用する方式
解答
解説 RPC(Remote Procedure Call:リモートプロシージャコール:遠隔手続き呼びし)とは、別のアドレス空間から、リモート上の関数などを実行可能にする技術のことです。

選択肢アは、リモートログインの説明です。
選択肢イは、ストアドプロシージャ機能の説明です。
選択肢ウは、ファイル共有の説明です。

問32 稼働率0.9の装置を用いて、稼働率0.999以上の多重化システムを作りたい。この装置を最低何台並列に接続すればよいか。
解答
解説 n台を並列に接続し1台でも稼動していれば、全体が稼動であるとみなす場合の稼働率は、以下のようにして計算することができます。

1−(すべてが稼動していない確率)=1−(1台目が稼動していない確率)×(2台目が稼動していない確率)×・・・(n台目が稼動していない確率)となります。

このとき、すべてが同じ稼働率であれば、1−(1−機器が稼動していない確率)n=1−(稼働率)nとなります。
よって、1−0.1n=0.999となればよいので、0.1n=0.001なので、nは3となります。

問33 稼働率が大きくなるものはどれか。
MTBF、MTTRをそれぞれ2倍にする。
MTBF、MTTRをそれぞれ半分にする。
MTBFを2倍にし、MTTRを半分にする。
MTBFを半分にし、MTTRを2倍にする。
解答
解説 まず、MTBFとMTTRについて説明します。
MTBF(Mean Time Between Failure:平均故障間隔)=合計稼働時間/故障回数(信頼性に関係)
MTTR(Mean Time To Repair:平均復旧時間)合計故障時間/故障回数(保守性に関係)

よって、MTBFは長いほどよく、MTTRは短いほどよいので、MTBFを2倍。MTTRを半分にするのが最も稼働率を大きくできるといえます。

問34 フェールセーフ設計の考え方に該当するものはどれか。
作業範囲に人間が入ったことを検知するセンサが故障したとシステムが判断した場合、ロボットアームを強制的に停止させる。
数字入力フィールドに数字以外のものが入力された場合、システムから警告メッセージを出力して正しい入力を要求する。
専用回線に障害が発生した場合、すぐに公衆回線に切り替え、システムの処理能力が低下しても処理を続行する。
データ収集システムでデータ転送処理に障害が発生した場合、データ入力処理だけを行い、障害復旧時にまとめて転送する。
解答
解説 重要なシステム設計法についてまとめて起きます。

フォールトトレラント:障害時に全体が停止するということなく、動作し続けるようなシステムを設計するもの。
フォールトアボイダンス:システムの構成要素の信頼性を高め, 元から故障が極力発生しないように設計すること。
フェールセーフ:障害が発生した場合、常に安全側に制御・停止すること。
フェールソフト:障害が発生した場合、故障した個所を切り離すなどして、稼動を続けること。
フールプルーフ:ユーザが誤った操作をした場合、危険に晒されることがないように、事前に安全策を行うこと。

選択肢イがフェールプルーフの説明です。
選択肢ウがフェールソフトの説明です。
選択肢エがフェールソフトの説明です。

問35 企業の様々な活動を介して得られた大量のデータを目的別に整理・統合して蓄積しておき、意思決定支援などに利用するものはどれか。
データアドミニストレーション
データウェアハウス
データディクショナリ
データマッピング
解答
解説 業務でいままで蓄積してきた大量のデータを目的別にまとめたものをデータウェアハウスといい、そこから、相関関係などを分析することによって、今後の意思決定を支援する技術をデータマイニングといいます。

問36 コンパイラにおける最適化の説明として、適切なものはどれか。
オブジェクトコードを生成する代わりに、インタプリタ用の中間コードを生成する。
コンパイルを実施するコンピュータとは異なるアーキテクチャをもったコンピュータで動作するオブジェクトコードを生成する。
プログラムコードを解析して、実行時の処理効率を高めたオブジェクトコードを生成する。
プログラムの実行時に、呼び出されたルーチン名やある時点での変数の内容を表示するようなオブジェクトコードを生成する。
解答
解説 コンパイラの最適化とは、ソースコードから実行可能ファイルを生成する(コンパイル)するときに、実行時の速度や使用するメモリ量が少なくなるように、プログラムの冗長や非効率な代入などを最適化することをいいます。具体的には、『a=2*3+4をa=10』のようにすることです。
選択肢アは、中間言語コンパイラの説明です。(一般的にコンパイルは何段階か(マルチパス)に分けてコンパイルされることが多いです。)
選択肢イは、クロスコンパイラの説明です。
選択肢ウは、デバッグオプションのことです。

問37 オブジェクト指向モデルの特徴として、適切なものはどれか。
計算順序は制御フローではなくデータの流れによって規定される。命令は、入力となるすべてのデータがそろったときに実行可能となる。
計算の制御は命令から命令へ順次渡されていく。命令間でのデータの受渡しは、“変数”を介するメモリへの参照によって間接的に行う。命令とデータの定義は分離されている。
データは外部から隠ぺいされ、メソッドと呼ばれる手続によって間接的に操作される。プログラムは、データとメソッドをひとまとまりにしたものの集まりである。
プログラムは、入れ子構文の演算式、関数を表現する命令(演算記号)、データによって構成され、“命令実行”に対応するのは“演算式又は関数の値の計算(評価)”である。
解答
解説 オブジェクト指向の概念について下にまとめます。

クラス:データとメソッドを1つにまとめたもの
メソッド:オブジェクトがもっている手続のこと
メッセージ:オブジェクト間でやり取りされる情報のこと
カプセル化:データにメソッドを通じてのみアクセスできること
インスタンス:型であるクラスに実際の値を入れて、具現化すること
抽象化:共通の性質をまとめて定義したもの、一般的にスーパークラスとして定義される。
継承:スーパークラスを取り込むこと。(例:人間クラスを継承して学生クラスを作る)
多相性(多態性):同じメッセージに対して別の振る舞いをすること(例『鳴く』というメッセージに対して、『ワンワン・ニャーニャー』など別の振る舞いをする)

選択肢イは、メソッド・カプセル化の説明をしたものです。これにより、メソッドの中身(プログラムの詳細)をしらなくても、仕様だけを知っているだけでブラックボックス的に利用できるというメリットがあります。

問38 Webアプリケーションサーバの機能として、最も適切なものはどれか。
外部からの不正パケットを排除する。
データベースを管理する。
表示用のHTML文章を動的に生成する。
ホスト名をIPアドレスに変換する。
解答
解説 Webアプリケーションサーバは、CGIやWikiなどで、HTMLを動的に編集、表示するために用いられるサーバで、一般的に外部に向けて公開するのでDMZにおくのが一般的です。

選択肢アは、ファイアウォールの説明です。
選択肢イは、DBMSの説明です。
選択肢エは、DNSの正引き(逆引きはIPアドレスからホスト名)の説明です。

問39 図は構造化分析法で用いられるDFDの例である。図中の“○”が表しているものはどれか。

画像(問39)を表示できません
アクティビティ
データストア
データフロー
プロセス
解答
解説 DFDはデータの流れを視覚的に分かりやすく表現する図です。それぞれの記号は以下のようになっています。

画像(問39kai)を表示できません

問40 オブジェクト指向の考え方に基づくとき、一般に“自動車”のサブクラスといえるのはどれか。
エンジン
製造番号
タイヤ
トラック
解答
解説 継承、集約の関係を下にまとめます。

継承:あるクラスを基にして、別のクラスを作ること。基になったクラスを親クラスやスーパークラス。継承してできたクラスを子クラスやサブクラスという。りんご is a フルーツのように、サブクラス is a スーパークラス
集約:あるオブジェクトがほかのオブジェクトに属するという関係。has aやpart ofの関係が成り立つ。

選択肢アは、自動車 has a エンジン(エンジン part of 自動車)がいえるため、集約の関係といえます。
選択肢イは、クラスの属性(フィールドやメンバ変数などともいいます。)といえます。
選択肢ウは、自動車 has a タイヤ(タイヤ part of 自動車)がいえるため、集約の関係といえます。
選択肢エは、トラック is a 自動車がいえるため、継承の関係といえます。