49

Я всегда годами отключал USB-накопители от компьютера, и ничего плохого не произошло; но я слышал, что вы должны использовать « Safely Remove Hardware » перед удалением диска. Что делает программа « Safely Remove Hardware » (помимо очистки буфера вывода)?
Рекомендуется ли это просто для того, чтобы гарантировать, что вся передача данных на устройство остановлена, или есть другая причина?

3 ответа3

75

Это зависит от того, какие настройки вы установили для накопителя. Например, если вы посмотрите в диспетчере устройств для самого диска, вы увидите что-то вроде этого:

Пример диспетчера устройств

Если выбран первый вариант (быстрое удаление), то извлечение диска просто размонтирует раздел и больше не позволяет программам обращаться к диску.

Если вы выберете второй вариант (лучшая производительность), то извлечение диска сбрасывает все кэши, которые ОС имеет в памяти, отключает файловую систему (которая также может сбрасывать несколько буферов) и очищает буферы на устройстве.

8

Новые данные не сразу сохраняются на USB-накопитель, они некоторое время хранятся в оперативной памяти. Основной мотивацией этого appoarch является достижение некоторой производительности на страницах, многократно переписанных на месте.

Таким образом, небезопасное отключение от сети приводит к некоторому риску того, что недавно написанные страницы, временно хранящиеся в ОЗУ, никогда не попадут на диск.

Это может повлиять не только на данные, но и на метаданные - целые каталоги могут исчезнуть, показать мусор и т.д. Это менее вероятно в NTFS, поскольку NTFS имеет журнал транзакций для метаданных. Поэтому в NTFS вы просто повреждаете пользовательские данные в файлах и откатываете изменения метаданных, если вам не повезло при небезопасном отключении.

3

Именно это все и делает. Он очищает все буферы и гарантирует, что ничто не сможет получить доступ к USB-накопителю, отключив его от системы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .