メモリカードのパフォーマンスと不良セクターをテストするにはどうすればよいですか?


10

DSLR用に新しいCFカードを購入しました。Xbench(Mac OS X)を使用してテストしたところ、期待どおりに動作しました。ただし、「サーフェススキャン」(移動する大皿の用語)を実行して、「不良セクター」(移動する大皿の用語)をチェックしたいと思います。ddを使用してプロセスのスクリプトをbashすることもできましたが、もっと良い方法があると感じています。私の目標は、メモリカード(CF、SDなど)が写真撮影で安全に使用できることを最終的に知ることです。これは、30日間のベンダーポリシーウィンドウが期限切れになる前に返却する必要はありません。

私は間違いなくここに与えられたMacソリューションを求めています。Linuxの提案もいくつか受けたいと思います。この1つの質問で全員のニーズを満たすことができるように、Windowsユーザーに骨を折ってみましょう。


ソリッドステートメモリは回転するプラッタとは異なることを理解しています。レッスンは必要ありません。必要なのは、所有しているデバイスを確認する方法です。手順は簡単です。デバイスに既知のコンテンツを入力します。デバイスから読み取り、内容を確認します。読み取りまたは書き込みエラーが発生した場合は、明らかな失敗です。読んだ内容が書き込んだ内容と異なる場合、それはあまり明白な失敗ではありません。日付はランダムで、複数のサイクルを使用する必要があります。私が必要なのは、それを行うツールです。私は書きましたが、それはハックです。
Bruno Bronosky、2012

回答:


8

コントローラーはブロックを好きな場所に移動できるため(ウェアレベリングを参照)、読み取り/書き込みテスト全体がディスクをいっぱいにして比較する唯一の機会です。もちろん、確かに異なるパターンで数回。

また、コントローラーにスペアがある限り、コントローラーによって隠されているため、障害のある領域をキャッチすることはありません。


6

フラッシュメモリは、プラッタを備えたディスクと同じようには機能しません。「不良セクタ」の概念は、フラッシュメモリには実際には存在しません。最近では、フラッシュメモリとSSDを備えた内蔵コントローラーが、使用できないメモリブロックの識別とマーク付け、データの動的な移動によるブロック書き込み制限の緩和などを行っています。これらの機能はSSDで広く普及していますが、高品質のフラッシュカード(SanDiskなど)に存在します。

ほとんどのファイルシステムチェックツールは、ストレージデバイスの物理構造(つまり、プラッターベース、物理シリンダー、セクター、クラスターなど)について特定の仮定を行うか、抽象化されたレベルで動作し、ファイルまたはディレクトリを使用して「実質的に」修復します。テーブル。フラッシュメモリデバイスの不良ブロックをマークするために特別に設計されたツールが必要になります。それ以外の場合は、より多くの問題を引き起こす(プラッターベースのデバイスと同じように問題を修正できると想定して)か、仮想化するためです。フラッシュの動的なハードウェアレベルの機能を考慮しない修正。特定の「セクター」または「クラスター」を「不良」としてマークすることができたとしても、それらの物理的概念は実際にはフラッシュメモリに存在しないため、必ずしも効果があるとは限りません。フラッシュデバイスがより高度であり、データを動的に移動して、不良ブロックを自動的にバイパスし、書き込み制限を緩和する場合、データの物理的な場所は、不良ブロックに一時的に存在し、しばらくすると良好なブロックに存在する可能性があります。(フラッシュメモリの「不良」ブロックの概念は、プラッターディスクの場合よりもあいまいです...フラッシュメモリブロックは、突然ではなくゆっくりと消滅する傾向があり、読み取り可能/非読み取り間で「ちらつき」が発生する場合があります。完全に使用できなくなる前に少し。)

一般的に言って、フラッシュに関しては、デバイスに悪いブロックの観点からそれ自体を管理させます。製造元が異なれば、データの構造と保存方法も異なります。また、フラッシュメモリの制限を回避するためにデータを移動する動的な動作のレベルと量がそれぞれ異なる場合があります。自分で管理しようとすると、解決よりも多くの問題が発生する可能性があり、長期的にはフラッシュディスクが役に立たなくなる可能性があります。

フラッシュカードの不良を避けたい場合は、信頼できるブランドを使用することを強くお勧めします。私は過去にさまざまなフラッシュカードを試しましたが、少なくともこれまでに失敗したことがない、私が使用した唯一のブランドはSanDiskです。かなり頻繁に使用する4、8、16ギガのSDHCカードがいくつかあり、カメラから定期的に取り出してラップトップまたはコンピューターに挿入しても、それらはまだ完全に動作しています。(数年前の方もいます。)


1
不良ブロックはどのブロックデバイスにも存在する可能性があります。特定のブロックにデータを書き込んでも、それを読み返すことができない場合、それは不良ブロックです。コントローラは、データを別の場所に書き込むことで、書き込みではこの問題を隠蔽できますが、読み取りでは隠せません。
Vaddadi Kartick 2014

3

Linuxでは、必要なコマンドはですbadblocksこのext2-for-os-xポートの一部として、このポートがMac OS Xに移植されている/usr/local/sbin/badblocksようです。すべてをインストールして、コマンド以外はすべて無視してください。

そうは言っても、これはテストに役立ちますが、最初はレオニダスが言うように、実際にはフラッシュメモリに直接アクセスできないため、完全なスキャンを実行するのが難しいため、最終的な結果になるとは思いません。テスト後に新しい障害が発生する可能性があり、それが原因である可能性もあります。


1

質問の下のコメントを読んで、私はF3があなたが望んでいることを正確に実行すると信じています。Linux / Mac OS Xでコンパイルされ、Homebrewからも入手できます。


-1

私はこれをグーグルで見つけました、カメラのストレージにsdカードを使用していませんが、代わりに、samsung galaxy S2で2年未満使用した後、クラス10 32ギグsdhc sandiskが完全に破損しました。

私は最初のバッドブロックがどこから始まるかを確認するためにバッドブロックを使用しており、可能であればその領域の周りにパーティションを作成します。これは私の現在の非常に非常に悪い解決策です:/


答えを詳しく説明していただけませんか?クイック検索に基づいて、「badblocks」はLinuxプログラムだと思いますか?OPが必要とすることを行いますか?
MikeW
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.