平成16年春期試験問題 午前問22
問22解説へ
表の仕様の磁気ディスク装置に,1レコード200バイトのレコード10万件を順編成で記録したい。10レコードを1ブロックとして記録するときに必要なシリンダ数は幾つか。ここで,一つのブロックは複数のセクタにまたがってもよいが,最後のセクタで余った部分は利用されない。

- 103
- 105
- 106
- 132
広告
解説
セクタ、トラック、シリンダの関係は次のようになっています。シリンダについては少しわかりづらいですが、磁気ディスク装置を構成する各ディスク上の同一半径のトラックをひとまとめにした単位です。
1ブロックは10レコードからなり、1レコードのデータ量は200バイトなので、1ブロックのデータ量は「200×10=2,000バイト」です。1セクタには256バイトを記録できるため、1ブロックの記録に必要なセクタ数は次のように計算できます。
2,000バイト÷256バイト=7.8125セクタ
余った部分は使われないので、1ブロックの記録には8ブロックが必要とわかります。
10万件のレコードは記録するときに1万ブロックにまとめられるので、必要なセクタ数は、
10,000ブロック×8セクタ=80,000セクタ
1トラックは40セクタで構成されるので、80,000セクタの記録に必要なトラック数は、
80,000セクタ÷40セクタ=2,000トラック
1シリンダは19トラックで構成されるので、2,000トラックの記録に必要なシリンダ数は、
2,000トラック÷19トラック=105.2…シリンダ
したがって、必要なシリンダ数は端数を切り上げて「106」となります。

2,000バイト÷256バイト=7.8125セクタ
余った部分は使われないので、1ブロックの記録には8ブロックが必要とわかります。
10万件のレコードは記録するときに1万ブロックにまとめられるので、必要なセクタ数は、
10,000ブロック×8セクタ=80,000セクタ
1トラックは40セクタで構成されるので、80,000セクタの記録に必要なトラック数は、
80,000セクタ÷40セクタ=2,000トラック
1シリンダは19トラックで構成されるので、2,000トラックの記録に必要なシリンダ数は、
2,000トラック÷19トラック=105.2…シリンダ
したがって、必要なシリンダ数は端数を切り上げて「106」となります。
広告