web-dev-qa-db-ja.com

コンピュータがサスペンドされているときにUSBメディアを削除しても安全ですか?

USBドライブが現在読み書きされている場合、USBドライブを取り外さないように注意することがよくあります。コンピュータがサスペンド、ハイバネーション、またはスリープ状態のとき、明らかにデータが書き込まれていません。読み取り/書き込みの途中だった可能性がありますが、そのような操作は保留されます。

アームが動いていない(USBハードドライブの場合)か、ドライブのバイトが点滅している(フラッシュドライブの場合)ので、ドライブを取り外しても「安全」ですか?

データが書き込まれている場合でもこれは当てはまりますが、操作は一時的に「一時停止」されますか? (特定のファイルがドライブに半分だけ書き込まれたことを気にしないと仮定します)

23
IQAndreas

実際に転送は行われていませんが、ハードウェアを安全に取り外すダンスを行う理由は転送が原因ではないです。

ファイルシステムを完全にマウント解除するためにこれを行っています—プログラムがドライブをまだ使用している可能性があり、それらを使用しているアプリケーションを閉じた後でも、一部のファイルがディスクにまだ書き込まれていない可能性があります。これが同じ休止状態にしてオペレーティングシステムを切り替えるだけではない理由です。マウントされたファイルシステムが一貫した状態であることが保証されることはありません。

フロッピーを使用しているときにOSがなぜクロールまで遅くなるのか疑問に思ったことはありませんか?これは、各セクタの書き込み後にキャッシュがフラッシュされるため、フロッピーは使用していないときにいつでも削除できるためです。

(それでも、後ろから取り外されたフロッピーにアクセスしようとすると、ダイアログが表示され、プログラムがハングします。フロッピーを後ろに挿入して実行してください。別の識別子を取得するため、これはUSBドライブでは機能しません毎回—プログラムがクラッシュするだけで、ドライバーがファイルにアクセスしていた場合、OSもクラッシュする可能性があります)

9
kinokijuf

Windowsには、単純に意のままにプラグを抜く機能に影響を与える2つのオプションがあります。 1)USBデバイスに書き込む前にハードドライブにキャッシュすることにより、高速なファイル書き込み(技術的には嘘)に最適化します。 2)Windowsがすべての書き込みをUSBドライブに即座にフラッシュするようにすることで、迅速な削除を最適化します。

USBドライブが最初に導入されたとき、オペレーティングシステムは高速エクスペリエンスを提供するために最初にハードドライブに書き込んだファイルをキャッシュするため、安全にハードウェアを取り外す機能を使用する必要がありました。 USB 1.0デバイスは非常に低速でした。ハードウェアを安全に削除するためにクリックすると、オペレーティングシステムは、マウントを解除する前に、USBドライブへのローカルキャッシュのコピーが完了したことを確認します。

Web USB 2.0ドライブが登場し、ほぼリアルタイムでデュークを書き込むのに十分な速さでした。 Windowsの環境設定は、デフォルトでUSBクイック取り外しオプションに変更されました。それ以降、USBデバイスを接続し、オプションを手動でキャッシュモードに変更しない場合、ドライブはすでにすばやく削除できるように設定されています。つまり、書き込みが停止するとすぐに、それを取り出すことができます(ドライブのライトが点滅しなくなります)。

1
damccull