連載
» 2005年06月30日 00時00分 公開

基本情報技術者試験講座(2):コンピュータの内部を探る

エンジニアなら避けては通れない、情報処理技術者試験。すべての試験の基礎となるのは、基本情報技術者試験だ。そのうちの午前試験に必要な知識を本連載でマスターし、秋期試験合格を目指そう!

[有限会社 G.F.インフィニティ,Project - ∞]

 「基本情報技術者試験(午前)」を出題範囲に沿って、各種問題を解きながら解説する連載の第2回です。今回は、「2.コンピュータシステム」を取り上げます。

1. コンピュータ科学基礎
2. コンピュータシステム
3. システムの開発と運用
4. ネットワーク技術
5. データベース技術
6. セキュリティと標準化
7. 情報化と経営
8. 監査

コンピュータシステム


確認しておく内容

ハードウェア

  • コンピュータの5大装置
  • メモリの種類
  • メモリへのアクセスの高速化(キャッシュメモリ、CPUの平均アクセス時間)

ソフトウェア

  • オペレーティングシステム(OS)の3大管理
  • 実記憶管理
  • ファイルシステムとファイル編成

コンピュータの5大装置

 コンピュータの持つ主な機能は、「入力」「制御」「記憶」「演算」「出力」です。これらをつかさどる装置を「コンピュータの5大装置」と呼びます。図1にコンピュータの5大装置を示します。

図1 コンピュータの5大装置 図1 コンピュータの5大装置

 「制御装置」「主記憶装置」「演算装置」を合わせて処理装置とも呼び、コンピュータ本体を指します。そのほかの「入力装置」はキーボードやマウスなど、「出力装置」はディスプレイやプリンタなどを指します。

 図1は試験にも頻出しています。装置の名称および役割は必ず覚えておきましょう。

 各装置の役割は下記のとおりです。

表1 コンピュータの5大装置の役割
制御装置 各装置の全般的な制御を行う装置。例えば、主記憶装置の命令を取り出して解釈し、各装置に指示を出して命令が実行されるようにする
主記憶装置 プログラムやデータを記憶する装置
演算装置 演算(四則演算や論理演算など)を行う装置
入力装置 プログラムやデータを主記憶装置へ送る装置
出力装置 主記憶装置に格納されているデータを外部へ出力する装置

 それでは、問題を解いてみましょう。

 ■問題1

下記の図は、コンピュータの基本構成を示しています。図中の(A)および(B)に当てはまる適切な装置を選択してください。

  (A) (B)
a. 補助記憶装置 演算装置
b. 演算装置 主記憶装置
c. 主記憶装置 演算装置
d. 演算装置 補助記憶装置

正解:b

 ■解説

 主記憶装置からデータを受け取り、演算を行い、その結果を戻す(A)は演算装置です。また、入力装置と出力装置の間でデータを流す(B)は主記憶装置です。正しい組み合わせは「演算装置、主記憶装置」となり、正解はbです。

 下記のポイントを覚えておきましょう。上記のような問題で迷うことがなくなると思います。

  • 入力装置から主記憶装置にデータが入力される
  • 主記憶装置から出力装置にデータが出力される
  • 主記憶装置から演算装置にデータが送られ、演算装置から結果が戻される
  • 制御装置はすべての装置を制御する

メモリの種類

 メモリとは、プログラムやデータを記録する装置のことで、一般的には主記憶装置のことを指します。

 メモリは、ROM(Read Only Memory)とRAM(Random Access Memory)の2種類に分類され、ROMでは電源を切っても記憶内容が保持されますが、RAMでは電源を切ると記憶内容が失われます。それぞれの種類は下記のとおりです。

1.ROM(Read Only Memory)

マスクROM 出荷時からプログラムやデータが書き込まれているROM。データの書き換えや消去を行うことはできない
PROM バイポーラROM 1度だけデータの書き込みが行えるROM
EPROM データをビット単位に紫外線で消去して何度でも書き込みが行えるROM
EEPROM データをビット単位に電気で消去して何度でも書き込みが行えるROM
フラッシュメモリ データを一括またはブロック単位で消去して何度でも書き込みが行えるROM

2.RAM(Random Access Memory)

DRAM データを保持するために、一定時間ごとに再読み込み(リフレッシュ)が必要なメモリ。アクセス速度は低速であるが、記憶容量が大きく、コストも小さい。メインメモリに利用される
SRAM リフレッシュの必要なしにデータを保持できるメモリ。アクセス速度が高速であり、消費電力も小さいが、コストが高い。キャッシュメモリに利用される

 ■問題2

DRAMについて正しく説明している文を次の中から選択してください。

a.フリップフロップ回路で作られているため、データを保持するためのリフレッシュが不要なメモリである
b.内部構成が複雑であるため、製造コストが高くなる
c.コンデンサで構成されたメモリで、高集積化に適している
d.アクセス速度が高速であり、消費電力も小さい

正解:c

 ■解説

 2進数を10進数へ変換するには、まず2進数の各けたの重みを10進数に直してみます。重みは基数の乗数で表せますので、右から「1、2、4、8……」となります。

 DRAMは、コンデンサで構成されたメモリです。また、回路が単純であるため、高集積化に適しており、メインメモリに用いられます。正解はcです。

 そのほかの選択肢は、すべてSRAMを説明する文になっています。

 DRAMおよびSRAMに関する知識は正誤問題として出題される頻度が高いので、この問題の選択肢はすべて覚えておきましょう。

メモリへのアクセスの高速化(キャッシュメモリ、CPUの平均アクセス時間)

  • キャッシュメモリ

 キャッシュメモリとは、CPUと主記憶装置の間に、処理を高速にするために設置されるメモリのことです。

 CPUがデータを使用すると、そのデータはキャッシュメモリに置かれ、次に同じデータを使用する場合にはキャッシュメモリ上のデータを読み込みます。主記憶のアクセス速度は遅いので、SRAMであるキャッシュメモリを利用することにより、処理を高速化できます。

  • CPUの平均アクセス時間

使用対象データがキャッシュメモリに存在する確率のことを「ヒット率」と呼びます。関連する用語は下記のとおりです。

ヒット率 データがキャッシュメモリに存在する確率(1−NFP)
NFP データがキャッシュメモリに存在しない確率(1−ヒット率)

 ■問題3

a.主記憶装置内をランダムにアクセスするプログラムでは、キャッシュメモリの効果は低い
b.高速アクセスが可能なキャッシュメモリは、汎用レジスタの代替として用いることも可能である
c.主記憶装置のアクセス時間は、キャッシュメモリの容量に反比例する
d.キャッシュメモリと仮想記憶の転送ブロックの大きさを同じにすることで処理の効率が良くなる

正解:a

 ■解説

 主記憶装置内をランダムにアクセスするプログラムの場合、同じデータ(特定の領域)に繰り返しアクセスすることが少ないので、キャッシュメモリの効果は低いといえます。正解はaです。

 そのほかの選択肢について、不正解の理由は下記のとおりです。

b:キャッシュメモリを汎用レジスタの代替として用いることはありません。

c:キャッシュメモリの容量が大きいほどヒット率が上がり、主記憶装置にアクセスする回数が下がるため、アクセス時間は短くなりますが、反比例の関係にはなりません。

d:キャッシュメモリと仮想記憶には、直接的な関係はありません。

 ■問題4

キャッシュメモリのアクセス時間が10ナノ秒でヒット率が70%、主記憶装置のアクセス時間が70ナノ秒の場合の実効メモリアクセス時間を次の中から選択してください。

a.26
b.28
c.30
d.34

正解:b

 ■解説

 実効メモリアクセス時間(平均読み取り時間)は、

キャッシュメモリのアクセス時間×ヒット率+主記憶装置のアクセス時間×(1−ヒット率)


で計算することができます。

 この問題の実効アクセス時間を上記の公式に当てはめて求めると、下記のようになります。

10×0.7+70×(1−0.7)=28


 正解はbです。

 ■問題5

キャッシュメモリのアクセス時間が主記憶装置のアクセス時間の1/20で、キャッシュメモリのヒット率が0.7の場合、主記憶装置の実効アクセス時間はキャッシュメモリを使用しない場合の何%であるか、次の中から選択してください。

a.35.5%
b.35%
c.34%
d.33.5%

正解:d

■解説

 この問題も、下記の公式により求めることができます。

実効アクセス時間=キャッシュメモリのアクセス時間×ヒット率+主記憶装置のアクセス時間×(1−ヒット率)


 キャッシュメモリのアクセス時間を「1/20x」、主記憶のアクセス時間を「x」として、上記の公式に当てはめます。

実効アクセス時間=1/20x×0.7+x×(1−0.7)

          = 0.035x+0.3x

          = 0.335x


 従って、主記憶装置の実効アクセス時間はキャッシュメモリを使用しない場合の33.5%です。正解はdです。

オペレーティングシステム(OS)の3大管理

 OSが提供する機能の1つに、「制御プログラム」があります。これは、ハードウェアやソフトウェアの動作を制御するプログラムです。この制御プログラムの主な機能である「ジョブ管理」「タスク管理」「データ管理」の3つの管理機能をOSの3大管理と呼びます。

 OSの3大管理の中では、タスクの実行を監視し、CPUや主記憶装置を管理および制御する「タスク管理」についての問題が頻出しています。特に「スプーリング」についての問題がよく出されます。

 ■問題6

スプーリングを行う目的を次の中から選択してください。

a.CPUの処理時間を微小時間に分割して、実行可能状態にあるタスクに順に割り当てる
b.プログラムをセグメントに分割し、必要なセグメントだけをロードして実行することで、主記憶装置の容量よりも大きなプログラムを実行させる
c.主記憶装置と低速の入出力装置間のデータ転送を行う際、高速の補助記憶装置を介することで処理効率を高める
d.補助記憶装置を利用して、実装している主記憶装置の容量よりも大きな仮想記憶を提供する

正解:c

 ■解説

 処理の比較的高速な主記憶装置と低速な入出力装置とでデータのやりとりを行う際、データを逐次転送するのでは、処理終了までにかなりの時間がかかります。そのため、いったん高速なハードディスクなどにすべてのデータを置き、そこから適宜データを転送させます。データ転送と主記憶装置の処理を並列に実行することで、スループットを向上させる機能が「スプーリング」です。

 正解はcです。そのほかの選択肢は、aは「タイムスライシング」、bは「オーバレイ」、dは「仮想記憶システム」についての説明となっています。

 ■問題7

スプーリングを利用してプリンタ出力を行うシステムで、下記の条件を満たすために必要なスプーリングファイルの容量を次の中から選択してください。

条件

  • 1ジョブ当たりの印刷データは1MB
  • スプーリングファイル上では、印刷データは50%に圧縮される
  • 1時間当たり200ジョブを処理
  • 最大3時間分の印刷データをスプーリング

a.150MB
b.300MB
c.450MB
d.600MB

正解:b

 ■解説

 条件より、1ジョブ当たりの印刷データが1MB、これがスプーリングファイル上では50%に圧縮されて0.5MBになります。0.5MBが1時間当たり200ジョブ処理され、最大3時間分の印刷データをスプーリングするので、計算式は、下記のようになります。

0.5(MB/ジョブ)×200(ジョブ)×3(時間)=300(MB)


 正解はbです。

実記憶管理

 コンピュータは、データやプログラムを主記憶装置に読み込んでから実行します。その際、主記憶装置のどの部分に記憶するかという記憶領域の割り当て/解放を管理する必要が出てきます。これを管理する機能のことを「実記憶管理」と呼びます。

 ■問題8

OSが記憶領域の割り当て/解放を繰り返すうちに、細分化された領域が多数発生する場合があります。この現象を次の中から選択してください。

a.フラグメンテーション
b.メモリリーク
c.ガーベジコレクション
d.スワッピング

正解:a

 ■解説

 データやプログラムへの記憶領域の割り当てや解放を繰り返すうちに、主記憶装置の空き領域が細分化される現象のことを「フラグメンテーション」と呼びます。「記憶領域の断片化」と呼ばれることもあります。正解はaです。

 そのほかの選択肢の説明は下記のとおりです。これらも、実記憶管理の中で確認しておくポイントになりますので、用語は押さえておきましょう。

  • メモリリーク

 OSやアプリケーションが動的に確保したメモリ領域が解放されないまま残り、使用可能な主記憶の容量が減っていく現象のことです。

 メモリリークはほとんどの場合、OSやアプリケーションのバグが原因で発生し、PCが不安定になることがありますが、再起動することにより解消できます。

  • ガーベジコレクション

 細かく分断された未使用のメモリ領域を移動し、ひとまとめにすることで、連続した大きな空き領域を作り、使用可能にする処理のことです。

  • スワッピング

 主記憶装置の空き記憶領域が少ない場合に、優先度の低いデータやプログラムを補助記憶装置へ移動させ、補助記憶装置から優先度の高いデータやプログラムを読み込む方式のことです。主記憶装置と補助記憶装置の間で領域の内容を交換することで、システム全体の利用率を向上させることが可能になります。

表2 ファイル編成法
順編成ファイル レコードをファイルの先頭から連続して記録していく方式
直接編成ファイル レコードのキー値から直接格納するアドレスを求め記録する方式
索引順編成ファイル 索引情報も併せて記録するファイル
区分編成ファイル ファイルをいくつかのメンバと呼ばれる区分にし、メンバごとにレコードの変更を行えるようにしたファイル
VSAM編成ファイル 仮想記憶上で使用されるファイル

 ■問題9

直接編成ファイルの説明として適切なものを次の中から選択してください。

a.複数のメンバにより構成され、プログラムの格納に最適である
b.物理的に書き込んだ順番にレコードを記録し、読み出しも順次アクセスのみである
c.レコードを記録する領域とレコードのインデックス情報を記録する領域で構成される
d.各レコードのキー値を計算によってアドレスに変換することで、レコードに直接アクセスできる 4

正解:d

 ■解説

 直接編成ファイルは、レコードのキー値から直接格納するアドレスを求めて記録するファイルであるため、そのアドレスから直接レコードにアクセスすることが可能になります。正解はdです。

 そのほかの選択肢については、aが「区分編成ファイル」、bが「順編成ファイル」、cが「索引順編成ファイル」の説明になっています。

 ■問題10

索引順編成ファイルを構成する領域には3つあります。「基本データ領域」と「索引領域」、もう1つの領域を次の中から選択してください。

a.メンバ領域
b.アドレス領域
c.あふれ領域
d.キー領域

正解:c

 ■解説

 索引順編成ファイルを構成する領域には、索引情報が集められた「索引領域」、レコードが記録される「基本データ領域」、基本データ領域に入りきらなかった(あふれた)レコードを記録する「あふれ領域」があります。正解はcです。

まとめ

下記の内容をチェックしておきましょう。

ハードウェア

  • コンピュータの5大装置(制御装置、主記憶装置、演算装置、入力装置、出力装置)
  • RAMの種類(DRAMおよびSRAM)
  • ROMの種類(マスクROM、バイポーラROM、EPROM、EEPROM、フラッシュメモリ)
  • 実効メモリアクセス時間

  キャッシュメモリのアクセス時間×ヒット率+主記憶装置のアクセス時間×(1−ヒット率)

ソフトウェア

  • スプーリング、タイムスライシング
  • 実記憶管理の用語(フラグメンテーション、メモリリーク、ガーベジコレクション、スワッピング)
  • ファイル編成法(順編成、直接編成、索引順編成、区分編成、VSAM編成)

次回は、「3.システムの開発と運用」および「4.ネットワーク技術」を取り上げます。

IT資格試験の模擬問題をWebベースで学習できる@IT自分戦略研究所の新サービス「@IT資格攻略」では、基本情報技術者試験(午前)をテーマとして取り上げています。「無料お試し版」もありますので、記事と併せてご覧ください。



Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。