今回のチップスが使えるエディションは? | ||||
---|---|---|---|---|
エディション | Home Basic | Home Premium | Business | Ultimate |
対応状況 | ○ | ○ | ○ | ○ |
HDDは大容量かつ低価格なことから、PCに欠かせない記録装置として定着している。しかし、ドライブの内部でディスクが高速回転する構造のHDDは、PCを構成する記録装置の中では最も低速な部類に入る。一般的には、CPUに内蔵された1次キャッシュ、2次キャッシュ、メインメモリ、HDDの順にデータ転送速度が遅くなっていく。モバイルノートPCなどで採用例が増えつつあるSSDについても、現状ではHDDから劇的に速度が向上するわけではない。
規格上の数値を比較すると、メインメモリは数ギガバイトの転送速度があるのに対し、HDDの転送速度は数十メガバイトであり、圧倒的な速度差がある。しかし、メインメモリは揮発性で電源をオフにすると内容が消えてしまうこと、容量に限界があることなどから、プログラムやデータのほとんどはHDDに格納される。つまり、プログラムを起動したり、データを読み書きするためにはHDDにアクセスする必要があるわけだ。
HDDの遅さを補うため、多くのOSはキャッシュ機構を備えている。データを読み出す場合、HDDから読み出したデータを、HDDより高速なキャッシュ用のメモリに書き込み、2度目以降のアクセスはHDDではなく、キャッシュメモリからデータを取得する。
HDDにデータを書き込む際には、キャッシュメモリとHDDにデータを同時に書き込んでおき、該当データへのアクセスはHDDではなく、キャッシュメモリからデータを取得する。この同時にデータを書き込む動作はライトスルーキャッシュと呼ばれる。読み出す場合はキャッシュメモリからデータを取得すればよいので、HDDからの読み出し速度を見かけ上向上させることが可能だ。
一方、HDDへの書き込みを見かけ上向上させる動作はライトバックキャッシュと呼ばれ、実際にHDDに書き込む代わりに、キャッシュメモリだけに書き込んでプログラムに処理を戻す。HDDへの書き込みは、OSが任意のタイミングで行う。
ライトスルーキャッシュは不意の電源断などでデータの不整合を起こすことはないが、ライトバックキャッシュは不意の電源断などでデータを失う可能性がある点は注意が必要だ。
※記事初出時、ライトスルー/バックキャッシュの説明に誤りがありました。おわびして訂正いたします(2009年4月20日)
ちなみにOSだけでなく、HDD自体も性能向上のためにキャッシュ用のバッファを搭載している。OSのキャッシュ機構と同様に、ライトスルーキャッシュとライトバックキャッシュを利用できるのが一般的だ。しかし、Windows Vistaの場合、HDDのキャッシュはライトスルーキャッシュのみ有効で、ライトバックキャッシュは無効になっている。これは、突然の停電などでデータが失われるのを極力避けるための措置だ。
VistaでHDDのライトバックキャッシュを有効にすれば、データ喪失のリスクを背負うことになるが、パフォーマンスの向上が期待できる。HDDのライトバックキャッシュは、「デバイスマネージャ」で有効にすることが可能だ。
ただし、HDDのライトバックキャッシュは、バックアップの電源供給がある場合のみ有効にすることが推奨されている。例えば、デスクトップPCの電源をUPSから供給している場合や、ノートPCのようにバッテリーを利用できる場合では、安全性は増すというわけだ。
Copyright © ITmedia, Inc. All Rights Reserved.