Можно ли как-то ускорить функцию USB Plug n play в Windows (на USB-концентраторе/коммутаторе)?

Можно ли как-то ускорить функцию USB Plug n play в Windows (на USB-концентраторе/коммутаторе)?

Я использую настройку, похожую на KVM-переключатель, для совместного использования клавиатуры и мыши на компьютере с Windows и компьютере с Linux.

У меня есть мышь Logitech и клавиатура Corsair (K95-RGB) (по иронии судьбы оба устройства созданы и оптимизированы для Windows с поддержкой только официальных драйверов Windows...), и проблема в том, что когда я переключаю устройства из Windows (или автономного режима) в Linux, Linux определяет, что устройства подключены, и немедленно активирует их. Я могу использовать устройства в течение 1 секунды, независимо от того, как давно я переключался в последний раз или в каком состоянии они находились до этого.

Когда я переключаюсь с Linux (или автономного режима) на Windows, Windows может потребоваться ужасно много времени для первого обнаружения устройств и еще ужасно много времени для их фактического включения...

Согласно моим часам Windows (я подсчитал), примерно 38 секунд ушло на обнаружение устройства (включение) и еще 17 секунд (обновление: при повторном тестировании позже я обнаружил, что мышь активируется примерно через 15 секунд, а клавиатура — через 5 секунд, или примерно через 20 секунд) на активацию устройства (например, для корректной работы драйвера, поэтому с момента переключения в Windows мне пришлось ждать 55 секунд, прежде чем я смог использовать устройства). Это время было одинаковым для клавиатуры и мыши, несмотря на то, что они использовали разные драйверы и были совершенно разными устройствами.

То, на что Linux фактически тратит около 1 секунды, Windows тратит до 1 минуты, обычно это занимает от 40 до 60 секунд, исходя из моего опыта более чем за полмесяца.

Для дальнейшего прояснения ситуации. Первые 35-40 секунд, которые требуются Windows для включения/обнаружения устройств, происходят только в том случае, если устройства были недавно отключены. По сути, происходит следующее: когда я отключаю устройства (переключаюсь из Windows), Windows требуется 35-40 секунд, чтобы подтвердить, что устройства были отключены (издавая звук отключения устройства). Если я переключаюсь обратно в Windows после этого момента, устройства обнаруживаются/включаются немедленно, но все равно требуется около 15-20 секунд, чтобы стать пригодными для использования (для работы драйверов).

Вопрос №1: можно ли как-то ускорить включение драйверов для устройств после их обнаружения и включения? (Может быть, как-то предотвратить полную выгрузку драйверов в первую очередь? Или выгрузить их на RAMDisk для более быстрой загрузки? Что-то еще?)

Вопрос № 2. Можно ли как-то сократить время(время ожидания?) перед тем, как Windows отключит устройства после их отключения (переключения на другой компьютер)? Я бы предпочел, чтобы это было как можно ближе к мгновенному.

Дополнительная информация:

Моя настройка выглядит следующим образом (от компьютера до устройств):

  1. USB-порт 2.0
  2. USB 1.X USB-переключатель
  3. USB 2.0, 4-портовый USB-концентратор Manhattan Powered
    1. Клавиатура Corsair K95-RGB (использует 2 порта USB, один для дополнительного питания)
    2. Мышь Logitech G402 Hyperion Fury
    3. Планшет Wacom CTH-680.

Тесты:

Я протестировал ту же настройку коммутатора/концентратора на Linux и в UEFI BIOS, никаких проблем на Windows не наблюдалось (за исключением того, что клавиатура и только клавиатура требуется несколько секунд для повторного обнаруженияводитель цкб, это означает, что макросы/дополнительные клавиши не работают до тех пор, пока не пройдет несколько секунд на Linux для клавиатуры. В противном случае все работает отлично в <1с)

Я решил протестировать подключение мыши напрямую, так как это самый простой способ, и при первом подключении она показала похожее поведение примерно ~50-секундного ожидания, прежде чем мышь стала пригодной для использования (большая часть этого времени снова ушла на ожидание ее обнаружения и включения). Если я повторил этот тест после этого, отключив мышь и подключив ее снова, она мгновенно активировалась/становилась пригодной для использования, и аналогично, если я отключил ее затем и подключил к уже активному USB-концентратору, она снова мгновенно активировалась. Но если я использовал переключатель для выключения/включения устройств, он возвращался к той же схеме, что и раньше. (Plug and play работает лучше всего, если вы не отключаете/не подключаете весь концентратор с несколькими подключенными устройствами)

Я попробовал выключить USB-переключатель в Windows, дождаться, пока Windows отключит устройства (~40 с) и воспроизвести звук отключения устройства, после чего я снова переключился в Windows, устройство было обнаружено мгновенно, но загрузка драйвера все еще заняла 15–20 секунд. (Wacom не тестировалось) мышь и клавиатура стали доступны для использования одновременно, несмотря на то, что драйвер клавиатуры, по-видимому, более сложен и, вероятно, должен загружаться дольше, чем мышь (это похоже на то, что ни одно устройство не может работать, пока не будут загружены драйверы всех устройств, подключенных к концентратору, хотя это может быть просто совпадением).

Я попробовал загрузиться в безопасном режиме (только общие драйверы), в этом случае отключение устройства все еще заняло ~40 с, но активация драйвера после обнаружения заняла <1 с для мыши и <5 с для клавиатуры (гораздо быстрее, чем ~17 с для обоих; но в свете этого я решил повторно протестировать время активации после обнаружения для обоих устройств после загрузки из безопасного режима, и действительно, на этот раз клавиатуре потребовалось примерно на 5 секунд больше времени, чем мыши, чтобы загрузить драйверы (мыши ~15 с, клавиатуре ~20 с).

Я провел еще один тест после удаления Corsair Utility Engine (драйверов клавиатуры), клавиатура не инициализировалась быстрее (все еще занимало ~20 с). После перезапуска клавиатура активировалась почти так же быстро, как в безопасном режиме. Затем я переустановил Corsair Utility Engine и попробовал еще раз, и с активными драйверами corsair она снова стала быстрой. Я перезагрузился, и все вернулось к тому, как было раньше. Я снова удалил Corsair Utility Engine, и, несмотря на его удаление, клавиатура больше не инициализируется быстро. Дальнейшее тестирование привело меня к выводу, что я могу удалить драйверы клавиатуры Corsair и использовать вместо них универсальные (при этом Corsair Utility Engine все еще работает и активирует светодиоды), и это дает мне достаточное ускорение, так что включение драйвера занимает 5 с (мышь) и ~10 с (клавиатура), однако это решение для меня не вариант, поскольку это означает, что моя клавиатура не будет работать правильно.

решение1

Резюме вышеизложенных комментариев:

  • Проблемными устройствами являются мышь и клавиатура.
  • Удаление драйверов и использование универсальных драйверов Windows значительно сократило время переключения.
  • Оставшаяся проблема заключается в том, что универсальный драйвер клавиатуры не может обрабатывать специальные клавиши, для чего я рекомендовал использовать SharpKeysи/илиAutoHotkeyчтобы сопоставить их с полезными функциями.
  • Следите заЗагрузки Corsairстраница для новых обновлений
  • Пытаюсь связаться сСлужба поддержки клиентов Corsairможет (а может и нет) помочь.

решение2

Есть сообщения о сокращении времени повторного подключения, если вы отключитеРазрешить компьютеру отключать это устройство для экономии энергиипод Device Manager- Properties- Powerдвух USB-устройств.

Попробовать стоит, но Windows любит не торопиться.

решение3

Я только что узнал, что в Windows 10 этой проблемы нет, у меня обычно переключение происходит мгновенно. Моя проблема была в основном связана с Windows 7, так что это не полный ответ, но я думаю, что мне придется использовать Windows 10 некоторое время, пока я не смогу полностью отказаться от Windows... просто еще один драйвер, который нужно исправить...

Но да, это так. Если вы используете Windows 7 и столкнулись с той же проблемой, знайте, что понижение версии до Windows 10 может потенциально решить ее.

Связанный контент