【基本情報技術者試験】磁気ディスク装置の構造セクタ・ トラック・シリンダについて

磁気ディスク装置セクタ・トラック・シリンダについて
少年T(疑問)
少年T

基本情報技術者試験の過去問を解いていたら「セクタ」「トラック」「シリンダ」という知らないカタカナ言葉がたくさん出てきて困っています!!

ぺぺアイコン
ぺぺ

セクタやトラックは磁気ディスクの記憶領域の単位のことだよ!

少年T(疑問)
少年T

磁気ディスクの構造についても詳しく教えて下さい。。。

ぺぺアイコン
ぺぺ

よし、じゃあ今回は磁気ディスクの構造、セクタ・トラック・シリンダについて解説していくよ!!

この記事でわかること
  • 磁気ディスクとは
  • 磁気ディスクを構成する要素「セクタ」「トラック」「シリンダ」
  • この記事を読んで解けるようになる過去問解説

磁気ディスク装置とは

磁気ディスク装置とは

磁気ディスク装置とは、アルミニウムやガラスの円盤に磁性材料を塗ったディスクを取り付けることでデータを読み書きする装置のことです。

磁気ディスク装置と聞くとなかなか聞きなれていないかもしれませんが、「HD(ハードディスク)」とか「HDD(ハードディスクドライブ)」なら聞いたことあるのではないでしょうか?

データを読み書きするためには磁気ディスク装置を使うことが多く、コンピュータには必ずハードディスクと呼ばれる、磁気ディスク装置が備わっています。

一昔前はフロッピーディスクと呼ばれる磁気ディスク装置も使われていましたがデータ容量が小さいため最近ではハードディスクが使われています。

磁気ディスク装置の構造

磁気ディスク装置の構造

磁気ディスク装置は磁気ヘッド・磁気ディスク(プラッタとも呼びます)・アクチュエータから成り立っており、それぞれに以下のような役割があります。

  • 磁気ヘッド・・・データを読み書きするのに使われる部品(ペン)
  • 磁気ディスク(プラッタ)・・・データを読み書きする場所(ノート)
  • アクチュエーター・・・磁気ヘッドを目的の位置まで動かす装置

更に磁気ディスク装置の中の磁気ディスクは記憶領域の単位ごとに名称がセクタ・トラック・シリンダなどと名称分けされています。

基本情報技術者試験などでそれぞれの名称を覚えていれば楽に解けるような問題がしばしば出題されていますのでしっかり解説していきます。

セクタ

セクタとは

セクタは磁気ディスクの記憶領域の最小単位の名称で、セクタが複数集まったものをブロックと呼ぶこともあります。

例えば、「セクタ4つを1ブロックとして管理されるシステムがある。」などと表現されることがあります。

トラック

トラックとは

セクタやブロックが複数集まっている同心円状の部分、もっと平たく言うと1周するドーナツ状の部分をトラックと呼びます。

例えば、「セクタ20個が1トラックとなる磁気ディスク装置がある。」などと表現されることがあります。コレはドーナツが20等分されているようなイメージを持っていただければ良いです。

シリンダ

シリンダとは

データの容量が大きいときは磁気ディスクは何枚か重なっています。そして複数のトラックが集まったものをシリンダと呼びます。

例えば、「この磁気ディスク装置はシリンダ1つにつき20個のトラックを持つ」などと表現されることがあります。

【基本情報技術者試験】セクタ・トラック・シリンダの知識が必要な問題が出る?

基本情報技術者試験の3分野

先でも述べたように今回解説した「セクタ・トラック・シリンダ」などの名称や磁気ディスクの構造がわかっているかどうかを問われるような問題が基本情報技術者試験にしばしば出題されています。

基本情報技術者試験には「テクノロジ系」「ストラテジ系」「マネジメント系」の3つの分野に大きく分けられます。その中で今回の磁気ディスクに関する知識を問われる問題はテクノロジ系の分野に属します。

基本情報技術者試験はプログラマーを目指している人が取るのにふさわしい登竜門のような国家資格ですので、興味のある方は学習して資格取得を目指してもいいと思います。

基本情報技術者試験の③つの分野
  • テクノロジ系(IT技術に関する分野) ➡磁気ディスク装置に関する問題はココ!
  • ストラテジ系(経営全般に関する分野)
  • マネジメント系(IT管理に関する分野)


基本情報技術者試験については詳しく下記のサイトでまとめています。

磁気ディスクやセクタ・トラック・シリンダに関する過去問にチャレンジ

過去問にチャレンジ!

それでは実際に磁気ディスクや、セクタ、トラック、シリンダの知識が問われた過去問にチャレンジしてみましょう。

ヘッドが移動するシリンダの総数を求める問題

磁気ディスク装置のヘッドが現在シリンダ番号100にあり,待ち行列にシリンダ番号120,90,70,80,140,110,60への入出力要求が並んでいる。次の条件のとき,ヘッドが移動するシリンダの総数は幾らか。

〔条件〕

  1. 入出力要求を並べ替えて,できるだけヘッドを一方向に動かし,シリンダ番号順に処理する,シーク最適化方式である。
  2. 現在のヘッドの移動方向は,シリンダ番号が増加する方向にある。
  3. 現在のヘッドの移動方向のシリンダに入出力要求がなくなったとき,ヘッドの移動方向を変える。
  4. 入出力要求の処理順序を変更しても,処理結果に影響はない。
  5. 処理中に新たな入出力要求は発生しない。

ア.80 イ.120 ウ.160 エ.220

出典:平成23年秋期 問14

まず一問目は条件を読んで磁気ディスク装置の構造を理解し、磁気ヘッドが移動するシリンダの総数を求める問題です。まず問題文と条件を読んで磁気ディスク装置の構造を理解するところから始めます。

まず問題文から、シリンダには番号が振られていて、複数のシリンダの中から入出力要求されてヘッドが止まる(処理を行う)シリンダが「60・70・80・90・100・110・120・140」の7つだということがわかります。(他にもシリンダはあるけど、用事があって止まるのがこの7つって感じです。)

磁気ヘッドが効率よく移動するために、条件1、条件2のように磁気ヘッドはシリンダ番号100からまずはシリンダ番号が増加する方向に一方向に移動していきます。つまりまず磁気ヘッドが移動するのはシリンダ番号「100➡110➡120➡140」と移動していきます。

条件3、4、5より磁気ヘッドはシリンダ番号が減少する方向に一方向に移動していくが、処理中に新たな入出力要求は発生しないので、「140➡90➡80➡70➡60」へと移動して処理が終わります。

つまり、(140-100)+(140-60) = 120

答えはとなります。

セクタの合計数を求める問題

500バイトのセクタ8個を1ブロックとして,ブロック単位でファイルの領域を割り当てて管理しているシステムがある。2,000バイト及び9,000バイトのファイルを保存するとき,これら二つのファイルに割り当てられるセクタ数の合計は幾らか。ここで,ディレクトリなどの管理情報が占めるセクタは考慮しないものとする。

ア.22 イ.26 ウ.28 エ.32

出典:平成21年秋期 問13

2問目はファイルの保存に必要なセクタの数を求める問題です。

500バイトのセクタ8個を1ブロックとするので、1ブロックは4000バイトのファイルを保存します。

この問題で重要なのは「ブロック単位でファイルの領域を割り当てて」とあるので2000バイトのファイルを保存するのに、1ブロック使うため、セクタ数は8個となり、9000バイトのファイルを保存するには3ブロック必要なため、セクタ数は 3ブロック × 8個 = 24個

つまり答えは8個 + 24個で 32個 のとなります。

データを記憶するときに必要なシリンダ数を求める問題

表の仕様の磁気ディスク装置に,1レコードが500バイトのレコード50万件を順編成で記録したい。50レコードを1ブロックとして記録するときに必要なシリンダ数は幾つか。ここで,一つのブロックは複数のセクタにまたがってもよいが,最後のセクタで余った部分は利用できない。

トラック数/シリンダ20
セクタ数/トラック25
バイト数/セクタ512

ア.960 イ.977 ウ.980 エ.1,000

出典:平成17年秋期 問2

最後はレコードにデータを記録する時に必要なシリンダ数を求める問題です。

500バイト × 50レコード = 25000バイト ➡1ブロックのデータ量

表より、バイト数/セクタが 512 となるので、25000 ÷ 512 = 48.82・・・
最後のセクタで余った部分は利用できないので、1ブロック当たり49セクタ必要ということがわかります。

50万レコード記録するのに必要なブロック数は 50万レコード ÷ 50レコード =1万ブロックより、49万セクタ必要ということがわかりました。

あとは表に従って計算していきます。49万セクタ ÷ トラック = 25 よりトラック数は19600個。
19600トラック ÷ シリンダ = 20 より シリンダ数は980とわかります。

よって答えはとわかります。

中丸アイコン
中丸

この問題で、間違えやすいのは先に1レコード500バイトを50万レコード記録するなら、250,000,000バイト必要と求めてしまうと、ブロック単位で記録するのにセクタで考えてしまうことになるので計算がズレて間違えてしまうよ!

まとめ

今回は磁気ディスク装置の構造、特に磁気ディスクの記憶領域であるセクタ・トラック・シリンダについて解説していきました。

もし基本情報技術者の資格取得を考えているなら、磁気ディスク装置の問題はアクセス時間を求める問題などと合わせると出題率も高いので、磁気ディスク装置の構造はしっかり理解しておきましょう。

まとめ
  • 磁気ディスク装置(ハードディスク)はデータを読み書きするための装置
  • 磁気ディスク装置は3つの部品でできている
    • 磁気ヘッド ➡ 読み書きするペンのような役割
    • 磁気ディスク ➡ 読み書きされるノートのような役割
    • アクチュエータ ➡磁気ヘッドを指定の位置に運ぶのような役割
  • 磁気ディスクの記憶単位で3つの名前がついている
    • セクタ ➡ 記憶領域の最小単位
    • トラック ➡ ドーナツ状の記憶単位
    • シリンダ ➡ トラックがたくさん重なっている筒状になったもの

-基本情報技術者試験
-, ,