私の理解では、SD カードなどのストレージ デバイスには、多数の書き込みによるカードの寿命を延ばすためのウェア レベリング ロジックが備わっているようです。
私が混乱しているのは、これを制御するロジックやアルゴリズムはどこにあるかということです。カード自体にあるのでしょうか、それともカードに書き込むコンピューターのファイルシステム ドライバー (Linux など) 内にあるのでしょうか。
答え1
ウェアレベリングには複数のレベルが関係する可能性があります (まったく関係しない可能性もあります)。
- SDカードのフラッシュコントローラ5月ファームウェアに実装されています。すべてのカードに実装されているわけではありません。特に初期の SD カードではほとんどがそうではありませんでした。当時はプロセスが今日よりもはるかに大きく、書き込み速度がはるかに低かったため、フラッシュの消耗はそれほど問題ではありませんでした。
- カード上のファイルシステムには、ウェア レベリングが含まれている可能性があります。最初の SD カードにはウェア レベリングがなかったため、上位レイヤーにウェア レベリングを導入する努力が行われました。しかし、さまざまな OS との互換性が損なわれ、ほぼ Linux 専用の機能となったため、これは行き詰まりに終わりました。
現在でも、ウェアレベリングがまったく行われていない SD カードに遭遇する可能性があります。多くの安価な製品では、カメラが同じカードに何千回も書き込むことができないことを単純に受け入れています。