Почему USB-накопитель так сильно нагревается при подключении к компьютеру под управлением Windows?
У меня есть ноутбук. Если на нем установлена ОС Windows 10, даже если данные не считываются и не записываются, флэш-накопитель USB сильно нагревается при подключении к компьютеру.
Однако с тем же компьютером, на котором установлен Linux, ситуация совершенно иная. Когда я интенсивно записываю и считываю данные с и на флешку, эта флешка становилась чуть теплее.
После того как я обнаружил это явление, я протестировал различные USB-флешки на своем настольном компьютере, ноутбуке... с теми же операционными системами Linux и Windows. Ситуация похожа.
В среде Linux я использую
dd if=/dev/urandom of=/path/to/my/flash/parent/folder/test.bin bs=1024M count=4
проверить большой файл записи. Для тестирования записи большого количества маленьких файлов я использую:
parallel dd if=/dev/urandom of=/path/to/my/flash/parent/test-{}.bin bs=1M count=1 ::: {0001..4096}
В среде Windows 10 я просто подключаю USB-накопитель и ничего не делаю (специально не запускаю приложение с интенсивным вводом-выводом), но жду 10 минут. ПРИМЕЧАНИЕ. Среды Windows 10 на всех тестовых компьютерах были недавно установлены, и не было сторонних приложений (я использую Education Edition и отключаю защиту в режиме реального времени при запуске компьютера перед тестированием. Однако я просто снимаю флажок в Диспетчер графических настроек Windows. Я не знаю, нужна ли перезагрузка, чтобы изменения вступили в силу).
Обновление 1:
Это может быть связано с самой USB-флешкой. Вот модель флешки, которую я использую в этом тесте.(Это не реклама, я не отношусь к этим товарам)
Update2:
Есть ответ, который учитывает влияние буфера системы Linux.
Но для дистрибутива Linux, который я использовал, когда DD был закончен, я набрал sync
и это заняло почти нулевое время, чтобы выполнить. Следовательно, эффект этого не значителен.
Зачем? Это потому, что Windows всегда делает бесполезный доступ к флешке?
Кроме того, когда мне нужно использовать Windows, есть ли практичный способ сделать USB-накопитель кулером?
5 ответов
На моем ноутбуке порт USB 3.0 физически очень близок (~ 2 дюйма) к блоку вентиляторов:
В результате любое USB-устройство, подключенное к этой стороне, ощущает примерно такую же температуру, как и наружная сторона вентилятора (!).
Мой ноутбук тоже немного медленный. Следовательно, Windows 10 на холостом ходу значительно нагревается, чем Ubuntu, и я заметил, что флешки также сильно нагреваются в Windows.
Вы также можете проверить, так ли это для вас, запустив в Ubuntu программу с высокой нагрузкой на процессор (скажем, 4-ядерную сборку) и наблюдая, не нагревается ли подключенная флэш-память в это время.
Изменить: я только что видел комментарий Джастина. Я надеюсь, что это дает достаточно информации, чтобы стоять самостоятельно.
В Windows есть такая вещь, где вы можете "использовать USB-накопители для ускорения работы вашего компьютера". Это достигается за счет использования в качестве кеша неиспользуемой памяти в качестве кеша, что уменьшает дисковый ввод-вывод. Возможно, эта дополнительная деятельность генерирует избыточное тепло.
Можно проверить это, отключив эту опцию, и посмотреть, нагревается ли флешка
Здесь есть несколько возможностей.
- Windows действительно имеет больше программного обеспечения, которое автоматически сканирует, проверяет целостность, управляет питанием и обычно использует USB-накопители. Это может привести к тому, что диск будет активнее в Windows, чем в Linux, при условии установки каждого из них по умолчанию.
- Драйверы Linux могут использовать диск в качестве диска, подключенного к USB 2.x, тогда как Windows может иметь драйвер 3.x и порт 3.x. Это увеличит скорость использования и тепло.
- Windows предполагает, что для большого диска требуется питание через USB-порт, и через порт подается больше, даже если в этом нет необходимости. Точнее, устройство запрашивает больше мощности от порта, чем требуется. Это маловероятно, но может произойти, если прошивка для материнской платы является разрешающей, а программное обеспечение драйвера для материнской платы и / или задействованных устройств прослушивается / не функционирует должным образом. Я видел, как это происходит со старыми материнскими платами и некоторыми нестандартными USB-устройствами. Это также может произойти, если используется расширение USB или адаптер, и кабель поврежден внутри или при прямом соединении, у самой интерфейсной платы возникают проблемы. Теоретически, Windows 10 поймает это и сообщит о скачке напряжения в порту, особенно если кабель поврежден, но не всегда успешно деактивирует порт при его возникновении.
- Антивирусное программное обеспечение Windows может выполнять сканирование диска, когда он не используется.
Согласно ОП, разница в температуре происходит на одном и том же ноутбуке, на одном и том же оборудовании, поэтому любая близость к тепловыделению не имеет значения.
Разница, вероятно, связана с различной обработкой управления питанием LPM. LPM - более сложная версия функции USB SUSPEND. Запоминающие устройства USB 3.0 нагревались, когда хост-контроллер USB отключает LPM (или LPM не включен на USB-устройстве, это взаимная вещь). Очевидно, что ОС Windows каким-то образом испытывает трудности при настройке контроллера xHCI для запуска LPM (или он отключен), в то время как у Linux нет проблем с этим.
Чтобы проверить конфигурацию Windows для LPM, эта ссылка может помочь.
Другая возможность заключается в том, как Linux и Windows обрабатывают запись на съемный диск. Windows по умолчанию заставит все записи произойти как можно скорее, в случае, если вы удалите диск. Linux, с другой стороны, ожидает, что вы отключите диск перед его удалением, и, таким образом, сохранит кэш записи в памяти.
Следовательно, вполне возможно, что ваш диск в данный момент фактически используется меньше в Linux, так как записи будут более распределенными, и может потребоваться еще меньше записей (если вы изменяете файл, который еще не был записан на диск.)