ウェアレベリング
ハードウェアレベルのウェアレベリングは、具体的には記憶素子の各ブロック毎の更新回数をデバイスで記録、管理しておき、(例えばファイルシステムの管理情報などの)更新が頻繁なブロックと、変更回数が少ないまたは空きのブロックとを物理的に「スワップ」することである。つまり、あるブロックについての更新回数の値が、全ブロックの状態から計算される値など一定値を下回った場合に当該ブロックの内容を空きブロックに転送し、移動させる(空きブロックが少ないか無い場合は、変更回数が少ないブロックとの間でブロックを転送し、入れ替える)。このようにして記憶媒体全体の変更回数を平準化させ、該当ブロックを「スワップ」した後は前述のアドレス変換テーブルを更新する。これにより、ソフトウェアからはウェアレベリング動作を(積極的には)関知せずに読み書きを続けられる。
以上のことから、ウェアレベリングのアルゴリズムにもよるが、更新頻度の高いデータブロックほど記憶媒体全般の記憶ブロックに渡って書き込みが行われることになるため、データの完全消去の観点からするとHDDに対する従来の伝統的な消去手法は適用できないことになる。