SSDとは、
本項では1について述べる。
SSD(Solid State Drive)とは、半導体メモリ(基本的にフラッシュメモリ)を記憶媒体として用いた記録装置であり、HDDと同じ接続インタフェース(ATA規格)で利用できるようになっている。OS側からはHDDとして認識されるのでブートドライブとしても使用可能である。簡単に言えば、「USBメモリを大容量化、高速化し、HDDと同じ扱いができるようにしたもの」である。
以前はPCのメインメモリと同じSDRAMをスタック搭載して、不揮発化するバックアップ電源を備えた製品があった。いわゆる「RAMディスク」をHDDと同様に扱うためのものだが、これも定義に照らし合わせればSSDと呼べるだろう。しかしながらコストパフォーマンスは非常に悪く(当時の価格で8000円超/GB)、ごくごく一部のマニアの探求欲を満たす製品でしかなかった。
ちなみにEeePC等の一部のPCには純正採用されているが、これらのSSDはコスト重視で並列アクセスなどの工夫は最小限に留められている。必ずしも「SSD=高速」という訳ではないので注意。
以下のような特徴をもつことから、一度書き込むとほとんど上書き(書き換え)されることの少ないブートドライブ、もしくは衝撃の多いモバイルPCや車載PCでの使用に適している。
現在の大多数のSSDで使用されているメモリチップはNANDフラッシュメモリである。このフラッシュメモリの特性として、HDDやDRAMと決定的に違うのは上書きが不可能であるという点である。つまり、上書きするためには「消去→書き込み」という手順を踏まなければならない。
多くのフラッシュメモリは「読み書きはページ単位、消去はブロック単位」という仕組みを取っている。例としてページサイズが2kB、ブロックサイズが256kBといったフラッシュメモリの1ページを上書きする場合、最悪のケースでは残りの254kB分のデータをキャッシュし、1ブロックを消去、上書きするデータとキャッシュしたデータを合わせた256kBを書き込むという手順が必要になる。これはわずか1ビットのデータを書き換えるのに127回の読み出し、1回の消去、128回の書き込みが発生することに他ならない。
加えてほとんどの製品で複数チップの並列アクセスによる高速化がなされており、例えば8チャンネル並列アクセスの場合、ページサイズは16kB、ブロックサイズは2MBといった扱いになり、ランダムライトに対する効率が低下する。
新品時は空きブロックに順次書き込むだけで済むが、使用を重ねるにつれてブロック消去時のデータ退避に伴うオーバーヘッドが顕在化する。ちなみにOSから論理フォーマットすることはフラッシュメモリチップの消去には繋がらず、これに対する解決法とはならない。根本的な解決策としては SecureErase が挙げられ、これを行うことで SSD 上の全物理ブロックが消去され、新品時の速度を取り戻す事ができる。[3]
ちなみにJMicron製 JMF601/602 系列のチップは、先述のオーバーヘッドの顕在化によるアクセス急増に対して力不足が指摘されており、これがプチフリーズの一因とされている。しかしながらフリーズに至らずとも新品時よりも明らかに速度が低下したと言う情報が、Intel 製等上位の SSD を使用するユーザーの間からも挙がっている(空き容量によって速度が変化するとイベントにおいて Intel 関係者が公言している)。
まだまだSSDは発展途上の技術であり、前述のSSDの特性を考慮したファイルシステム、OSやコントローラ等の独自のコマンドも模索中である。現時点はさながら「高速なHDDに見えるストレージ」に過ぎないが、それでもHDDに対するSSDのパフォーマンスの高さは体験可能で、一部のユーザーを魅了している。SSDを活かす技術体系が完成すれば、より一層の普及が見込まれるであろう。
急上昇ワード改
最終更新:2024/05/04(土) 02:00
最終更新:2024/05/04(土) 02:00
ウォッチリストに追加しました!
すでにウォッチリストに
入っています。
追加に失敗しました。
ほめた!
ほめるを取消しました。
ほめるに失敗しました。
ほめるの取消しに失敗しました。