ハードディスクの仕組みについてですが

一般的に読み込みと書き込みでは読み込みの方が早いです。
書き込みの際にハードディスの回転数を遅くするという話は
聞いたことがありません。
読み込みは1回転でできるが
書き込みは2回転必要という話も聞きません。

同一のハードディスク、同じ回転数、同じ磁気ヘッド。
なのにどうして書き込みのほうが遅いのでしょうか。

回答の条件
  • 1人2回まで
  • 13歳以上
  • 登録:2010/02/21 14:58:14
  • 終了:2010/02/21 17:38:22

ベストアンサー

id:gday No.4

gday回答回数383ベストアンサー獲得回数712010/02/21 17:02:10

ポイント50pt

>同一のハードディスク、同じ回転数、同じ磁気ヘッド

>なのにどうして書き込みのほうが遅いのでしょうか。


この前提が正確に言うと間違っています。

ハードディスクの読み出しと書き込みのヘッドは物理的に違う原理で行います。

そして読み出しの場合は読み出しヘッドを使ってヘッドの位置決めのためのサーボ情報を読みつつデータを読みます。

これに対してデータの書き込みをする場合は読み出し用のヘッドを使って書き込み位置を読み出しの時と同様に行ってから、書き込みヘッドを使って書き込みます。少なくともこの時点で書き込みは読み出しよりも時間がかかります。

さらにちゃんと書き込めたかどうかを読み出しヘッドを使って読み出して比較(ベリファィ)しますのでその場合にはディスクが1回転余分に回る時間が必要になりますので書き込みは必ず読み出しよりも遅くなります。

その他の回答(3件)

id:km1967 No.1

km1967回答回数541ベストアンサー獲得回数402010/02/21 15:23:12

ポイント25pt

ライト時にはベリファイを行うが、

リード時にはキャッシュにヒットする場合もあるので

平均してリードの方が速い。

id:b-wind No.2

b-wind回答回数3344ベストアンサー獲得回数4402010/02/21 16:08:07

ポイント25pt

一般的に読み込みと書き込みでは読み込みの方が早いです

一般的だろうか?

RAID とかならともかく単体ディスクではそれほど極端な差は出ないと思うが。

むしろディスクに搭載されているバッファメモリやOSのディスクキャッシュの影響の方が遙かに大きい。


同一のハードディスク、同じ回転数、同じ磁気ヘッド。

なのにどうして書き込みのほうが遅いのでしょうか。

HDDとメモリとの性能差が絶対的に違うため、HDD単体でも、OSでもキャッシュ機構を持つ。

読み込みに対しては元データ(HDD 内)さえ変わっていなければ高速なメモリから読み込むことでかなりの高速化が見込める。

書き込みに関しては HDD 自体にアクセスすることが必須なためどうしてもその速度がボトルネックになる。

このため「見かけ上」の性能は読み込みが早いことになりやすい。

キャッシュ自体の制御はOSの仕様や HDD のファームウェアの性能に依存する。


ちなみに、手元でベンチマーク走らせると大きなファイルの R/W だと読み込みの方が速く、

小さなファイルの R/W だと書き込みの方が速くなった。


バッファ抜きの RAW デバイスとしての性能の話なら的外れになってしまうが。

id:ARASHI13 No.3

あぐりん(^□^)回答回数16ベストアンサー獲得回数02010/02/21 16:31:32

ポイント10pt

確かに読み込みは早いですよね

自分的に

読み込みはもうそのディスクに入ってる

データをただ読み込むだけだから

早いんだと思います

でも書き込みはからのディスクにデータを入れる(書き込み)?ので

時間がかかるんだと思います

読み込み=入ってるデータを呼び出す

書き込み=なにもないディスクにデータを投入

こういうとこですか

id:gday No.4

gday回答回数383ベストアンサー獲得回数712010/02/21 17:02:10ここでベストアンサー

ポイント50pt

>同一のハードディスク、同じ回転数、同じ磁気ヘッド

>なのにどうして書き込みのほうが遅いのでしょうか。


この前提が正確に言うと間違っています。

ハードディスクの読み出しと書き込みのヘッドは物理的に違う原理で行います。

そして読み出しの場合は読み出しヘッドを使ってヘッドの位置決めのためのサーボ情報を読みつつデータを読みます。

これに対してデータの書き込みをする場合は読み出し用のヘッドを使って書き込み位置を読み出しの時と同様に行ってから、書き込みヘッドを使って書き込みます。少なくともこの時点で書き込みは読み出しよりも時間がかかります。

さらにちゃんと書き込めたかどうかを読み出しヘッドを使って読み出して比較(ベリファィ)しますのでその場合にはディスクが1回転余分に回る時間が必要になりますので書き込みは必ず読み出しよりも遅くなります。

  • id:seble
    HDはベリファイしないんじゃ・・・?
  • id:b-wind
    http://akademeia.info/index.php?HDD#m504f55d
    特定用途向きはしらんが通常の物は常時ベリファイはやってないはず。
    書き込み時のペナルティが大きすぎるからね。

    RAID なんか使ってるとその辺が原因で整合性がとれなくなることも多い。
    http://www.fmworld.net/biz/fmv/support/fmvmanual/0604-0609/option/b6fh9861/chap5.html
    こういう一括でのベリファイは月一程度にはやるようにベンダーから要求されるな。
    http://www.fmworld.net/biz/fmv/support/fmvmanual/0604-0609/option/b6fh9861/chap10.html#1173000
  • id:rxy01073
    べりファイで納得して、回答締め切っちゃいましたけど、
    ベリファイが決定的な要素じゃないって事は、
    書き込み単位であるブロックにする際にかかる演算が問題ってことでしょうかね?
    あ、ちなみにキャッシュは無しでお願いします。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません