ハードディスク(HDD)は、プログラムやデータを記録している大事な装置だ。パソコンの電源をオフにしてもHDD内のデータが消えることはない。HDDはどのようにデータを記録しているのか。Part3ではその仕組みについて解説する。

 プログラムやデータはHDDに記録されている。まずはおさらいを兼ねて、CPUがHDDにアクセスする仕組みを解説しよう。CPUはメモリー空間を介して周辺機器にアクセスするが、HDDも同様だ(図1)。

図1●HDDからのデータ読み出し
図1●HDDからのデータ読み出し
CPUが読み出し命令を発行すると、HDD内のコントローラーはディスク上の目的のデータをバッファーメモリーに読み出す。そのデータはコントローラーによってメインメモリー(RAM)上にDMA転送される。

RAMとの根本的な違い

 メモリー空間にはHDD内にあるコントローラーのレジスターが現れ、CPUはそこに読み出し命令を書き込む。するとコントローラーはディスク上に記録されている目的のデータを読み出し、バッファーメモリーに蓄える。それがメインメモリー(RAM)に転送されてはじめて、CPUがアクセス可能となる。HDDはメモリー素子とは根本的に違う記憶装置なのだ(図2)。なお、バッファーからメインメモリーへのデータ転送はCPUではなく、HDD内のDMAコントローラーが行う。この方式はDMA(Direct Memory Access)転送と呼ばれ、CPUの負荷が軽減される。

図2●パソコンの記録素子の関係
図2●パソコンの記録素子の関係
CPU内の演算ユニットに近いほど、高速な記録素子(装置)が使われる。ただし高速なものは高価なため、容量はあまり大きくできない。メインメモリーと異なり、HDD内のデータにはCPUは直接アクセスできない。HDDはメインメモリーと比べてデータ読み出しがけた違いに遅いが、容量ははるかに大きい。