HOME»ITパスポート掲示板»ハードディスク装置
投稿する

ハードディスク装置 [0769]

 ましろさん(No.1) 
理解がなかなかできない問題なんですが、どなたか解説付きで説明してくれませんか(>_>)
[ハードディスクの仕様]
1パックあたりのシリンダ数 3000
1シリンダあたりのトラック数 20
1ト ラックあたりのセクタ数 40
1セクタあたりのバイト数 512バイト
[問題]
1レコードに800バイトのレコードを記憶すると何レコード記憶できるか。
[分からないところ]
①単位の大きい順で並べると、パック→シリンダ→トラック→セクタ→バイト、という並びでいいのでしょうか?
②この問題の解答は1レコードに必要なセクタ数から計算して求めていますが、800バイト÷512バイトをすると何故セクタ数が求まるのですか?そういう手順だという風に捉えたほうがいいですか?

質問をうまくまとめられていませんが、回答お願いします
2015.03.22 14:07
ポニョ部長さん(No.2) 
まず、ハードディスクなどの時期ディスク構造は頭にきちんとイメージできてますか
>単位の大きい順で並べると、パック→シリンダ→トラック→セクタ→バイト、という並びでいいのでしょうか?
パック、シリンダ、トラック、セクタは構造上の単位
バイトは容量の単位です。

>この問題の解答は1レコードに必要なセクタ数から計算して求めていますが、800バイト÷512バイトをすると何故セクタ数が求まるのですか?そういう手順だという風に捉えたほうがいいですか?

800バイト÷512バイトでこのレコードに必要なセクタ数は求まります。
(この問題の場合はブロックが考慮されてないので端数はそのまま利用です)
ただ、レコードに必要なセクタ数を求める方法でも計算はできますが面倒です。

普通はこうするだろうという方法
ハードディスク全体の容量を出す式をまず書きます

3000(シリンダ数)*20(トラック数)*40(セクタ数)*512バイト
これで問題に提示されてる仕様のハードディスクの容量が算出できるのでこれを
1レコードの容量800バイトで割れば答えは出ます。
ここでハードディスクの容量を出す式を見て何か気づきませんか?
トラック数とセクタ数を掛けた値が1レコードの容量と同じなので通分できて計算が簡単になります。

この問題はレコードの仕様にブロックの話が出てきてないので総容量を求めて1レコード分の容量で割れば総レコード数は求まります。たぶんITパスポートレベルではレコードのブロックの話は出てこないかと思われるのでまずはハードディスクの構造を頭に描けるようにした上で仕様を見て容量を算出できるようにする必要があるかと思います。
2015.03.23 10:44
 ましろさん(No.3) 
解答ありがとうございます!助かります。

こんな難しい問題も時間をかけずに解かないといけないのか…と思っていましたが、
そういった方法があるのですね。
2015.04.11 21:33

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。
© 2009-2024 ITパスポート試験ドットコム All Rights Reserved.

Pagetop