Можно ли как-то ускорить функцию Windows Plug-n-play в Windows (на USB-концентраторе / коммутаторе)?
850
Cestarian
Я использую KVM-переключатель, подобный установке, чтобы разделить клавиатуру и мышь между машиной с Windows и машиной с Linux.
У меня есть клавиатура Logitech Mouse and Corsair (K95-RGB) (по иронии судьбы оба устройства созданы и оптимизированы для Windows только с официальной поддержкой драйверов Windows), и проблема в том, что когда я переключаю устройства из Windows (или в автономный режим) в Linux Linux обнаруживает, что устройства подключены и немедленно активирует их. Я могу использовать устройства в течение 1 секунды, независимо от того, как недавно я последний раз переключался или в каком состоянии были устройства ранее.
Когда я переключаюсь с Linux (или в автономном режиме) на Windows, Windows может потребоваться очень много времени, чтобы сначала обнаружить устройства, и еще очень много времени, чтобы фактически включить их ...
Согласно моим часам Windows (я посчитал), примерно 38 секунд для обнаружения устройства (включение) и еще 17 секунд (обновление: позже при повторном тестировании я обнаружил, что мышь активируется через ~ 15 секунд, а клавиатура через 5 секунд, или через ~ 20 секунд) для активации устройства (например, чтобы драйвер включился должным образом, поэтому с момента переключения на окна я подождал 55 секунд, прежде чем смог использовать устройства), это время было одинаковым для клавиатуры и мыши, несмотря на использование отдельных Драйвер программного обеспечения и совершенно разные устройства.
Таким образом, для того, чтобы эффективно работать с Linux, требуется около 1 секунды, а окнам - до 1 минуты, обычно от 40 до 60 секунд, исходя из моего опыта в течение примерно полугода.
Для дальнейшего уточнения вещей. Первые 35-40 секунд, которые требуется Windows для включения / обнаружения устройств, происходят только в том случае, если устройства были недавно отключены. В основном происходит то, что когда я отключаю устройства (переключаюсь из Windows), окнам требуется 35-40 секунд для подтверждения того, что устройства были отключены (звук устройства отключается). Если после этого момента я переключаюсь обратно в окна, устройства обнаруживаются / включаются немедленно, но все еще требуются хорошие 15-20 секунд для использования (для работы драйверов).
Вопрос № 1: могу ли я как-то ускорить включение драйверов для устройств после того, как они были обнаружены и включены? (Может быть, каким-то образом предотвратить загрузку драйверов в первую очередь? Или разгрузить их на RAMDisk для более быстрой загрузки? Что-то еще?)
Вопрос 2. Можно ли как-то сократить время (вне?) До того, как Windows отключит устройства после того, как они были отключены (переключены на другой компьютер)? Я бы предпочел, чтобы это было как можно ближе к моменту.
Дополнительная информация:
Моя установка выглядит следующим образом (с компьютера на устройства)
Порт USB 2.0
USB 1.X USB-переключатель
USB 2.0, 4-портовый USB-концентратор на Манхэттене
Клавиатура Corsair K95-RGB (используется 2 порта USB, один для дополнительной мощности)
Мышь Logitech G402 Hyperion Fury
Wacom CTH-680 Tablet.
тесты:
Я протестировал ту же настройку коммутатора / концентратора в Linux и в UEFI BIOS, ни одна из проблем в Windows не наблюдалась (за исключением того, что клавиатуре и клавиатуре требуется несколько секунд для повторного обнаружения драйвером ckb, что означает что макро / дополнительные клавиши не работают до тех пор, пока в Linux через несколько секунд не получится клавиатура. В противном случае все отлично работает в <1s)
Я решил протестировать подключение моей мыши напрямую, так как это самая простая процедура, и при первом подключении она показала аналогичное поведение примерно в ~ 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, и, несмотря на то, что она удалена, клавиатура больше не инициализируется быстро. Дальнейшее тестирование привело меня к выводу, что я могу удалить специальные драйверы клавиатуры для Corsair и использовать вместо них общие (с утилитой Corsair, все еще работающей и активирующей светодиоды), и это дает мне прирост скорости, так что включение драйвера занимает 5 секунд (мышь) и ~ 10 с (клавиатура),
Если вы подключаете их непосредственно к ПК, к тем же портам, к которым подключен KVM, это поведение по-прежнему проявляется?
Ramhound 8 лет назад
0
@ Ramhound Я, вероятно, должен уточнить мои настройки, у меня есть переключатель USB (1.0), который я подключил к концентратору USB (2.0, 4 порта, питание), к которому подключены мои устройства (USB 2.0). Я решил протестировать подключение моей мыши напрямую, так как она самая простая (клавиатура использует 2 порта), и она показала аналогичное поведение примерно 40 секунд ожидания, прежде чем мышь можно было использовать. Я не удивлюсь, если продолжительность этого окна отчасти объясняется тем, что он может пытаться сначала обнаружить и активировать USB-концентратор, прежде чем он продолжит активировать HID, которые я к нему подключил (увеличив время на 20 с)
Cestarian 8 лет назад
0
Ваша клавиатура использует 2 порта USB? После того, как вы сделали этот первоначальный тест, повторили ли вы тест, Windows, как предполагается, создаст каталог USB-устройств на основе порта.
Ramhound 8 лет назад
0
@ Ramhound да, у меня есть клавиатура Corsair K95-RGB, ей нужен один порт для питания, один порт для HID, разъемы являются взаимозаменяемыми (например, любой из них может выступать в качестве входа и питания, или только питание в зависимости от того, в каком порядке они находятся подключен) Я не повторял тест, но позвольте мне сделать это сейчас ... Да, я подключил мышь (на этот раз к другому порту), и на этот раз она была активирована почти мгновенно (<2 с). Забавно, но потом я снова подключаю его к концентратору, и он снова активируется почти мгновенно, мы можем найти решение ... Или в любом случае на правильном пути.
Cestarian 8 лет назад
0
@Ramhound Я снова попытался включить и выключить USB с помощью переключателя, после того как снова подключил мышь, но на этот раз для активации мыши потребовалось столько же времени, сколько и раньше (столько же, сколько для клавиатуры). Я заметил, что в течение большей части этой продолжительности (например, 38 секунд в моем первом посте) устройства даже не включаются, что должно быть временем, которое Windows берет, чтобы обнаружить и активировать концентратор, прежде чем он перейдет к устройствам. которые активируются быстрее.
Cestarian 8 лет назад
0
Я подозреваю, что проблема в самом Switch, а не в клавиатуре и мыши. Задержка должна быть ожидаемой, но, похоже, коммутатор ведет себя как совершенно новое устройство каждый раз, когда вы переключаетесь между подключенными ПК. Альтернатива - это проблема, связанная только с мышью, я подозреваю, что клавиатура вызывает проблемы со связью. чтобы мышка усвоила 60 секунд
Ramhound 8 лет назад
3
@ Может быть, это и так, но это звучит как проблема, которую можно как-то обойти. Я не против задержки, просто ... желательно до 10 секунд. (Linux никогда не дает мне никакой задержки, так что это не так, как это невозможно)
Cestarian 8 лет назад
0
@ Ramhound, подождите, я действительно кое-что заметил только сейчас. Как я уже говорил ранее, более половины времени я жду, когда устройства выключатся. Это происходит, если я выключаю устройства, а затем снова включаю. Однако, если я выключу и подожду, пока Windows обнаружит отключение устройства (т. Е. Заставит «отключить» звуковое оповещение), а затем снова включится, устройства включатся (например, будут обнаружены), мгновенно оставив только гораздо более терпимое (но все же вроде медленно) 15-20 секунд для активации драйвера. Есть ли способ, которым я могу оптимизировать это? (Заставить Windows быстрее обнаруживать отключение USB?)
Cestarian 8 лет назад
0
Если вы возьмете эту необычную клавиатуру с процессором из уравнения. Что-нибудь меняет. У меня есть проблемы с самим переключателем или (теперь, когда я его посмотрел) клавиатура вызывает задержку. Если у мыши нет задержки, с переключателем, то вы подтвердили проблему.
Ramhound 8 лет назад
0
@ Ramhound с отключенной клавиатурой, тот же тест, что и выше (т. Е. Быстрое выключение / включение с помощью USB-переключателя) занял чуть более 30 секунд с помощью мыши (а также планшета WACOM, который подключен к 4-му порту концентраторов, у меня есть не проверял, это скорость обнаружения, он может быть быстрее, чем другие) подключил клавиатуру обратно, получил скорость примерно те же 55 с, как и раньше, кажется, что Windows занимает больше времени, чтобы обнаружить отключение клавиатуры Corsair, что в свою очередь добавляет, казалось бы, Задержка 20-25 секунд в этом тестовом сценарии (минимальная задержка, если отключение устройства уже обнаружено) 30 секунд - 2 медленных.
Cestarian 8 лет назад
0
Попробуйте загрузить Windows в безопасном режиме, чтобы узнать, вызвано ли это сторонним драйвером.
harrymc 8 лет назад
0
@harrymc попробовал это, получил очень хорошие результаты по времени загрузки драйверов на универсальные драйверы (<1 с для мыши <5 с для клавиатуры, в очень приемлемом для меня диапазоне), но отключение устройства заняло столько же времени (~ 40 с). Поскольку в uefi bios есть только общие драйверы, возможно, поэтому у него нет проблем, и я думаю, что Linux сначала загружает универсальный драйвер клавиатуры для клавиатуры, а затем выгружает его в мой драйвер пользовательского пространства (или интерфейсы драйвера пользовательского пространства с универсальным драйвером клавиатуры), что поэтому он так быстро активируется и там.
Cestarian 8 лет назад
0
Посмотрите, какие драйверы установлены для этих устройств. Однако это также может быть вызвано другим установленным сторонним драйвером, который не подключен к KVM.
harrymc 8 лет назад
0
@harrymc посмотри как? На клавиатуре установлены официальные драйверы, мышь использует универсальные драйверы, драйверы wacom еще не установлены. У меня подключены другие HID, хотя (они всегда есть), это мастер Logitech MX и Razer BlackWidow, у них есть свои собственные драйверы.
Cestarian 8 лет назад
0
Вы можете увидеть драйвер проблемного устройства в диспетчере устройств. Если производительность в безопасном режиме приемлема, это означает, что устройство использует сторонний драйвер. Удалите драйвер с компьютера, чтобы принудительно использовать универсальный Microsoft.
harrymc 8 лет назад
0
@harrymc, это сложно ... У меня подключено много HID, и все, кроме одного (не связанного с этим), имеют общие имена в диспетчере устройств ...
Cestarian 8 лет назад
0
Вы делаете это только для одного или двух проблемных устройств, а не для всех подключенных устройств. См. Статью [Использование диспетчера устройств для удаления устройств и пакетов драйверов] (https://msdn.microsoft.com/en-us/library/windows/hardware/ff553572%28v=vs.85%29.aspx?f=255&MSPPError = -2147217396) где вы хотите "Удалить пакет драйверов из хранилища драйверов". Убедитесь, что у вас есть носитель для переустановки стороннего драйвера в случае проблем с общим драйвером.
harrymc 8 лет назад
0
@harrymc Кажется, что только у моей клавиатуры есть определенный драйвер, мышь использует универсальный драйвер. Я успешно удалил его драйвер, устройства инициализируются заметно быстрее (мышь меньше 5 секунд, клавиатура 10 секунд), но не так быстро, как в безопасном режиме. Я попытался переустановить драйвер после этого, и (без перезагрузки) он остается быстрее.
Cestarian 8 лет назад
0
@harrymc Кажется, что только у моей клавиатуры есть определенный драйвер, мышь использует универсальный драйвер. Я успешно удалил его драйвер, устройства инициализируются заметно быстрее (мышь меньше 5 секунд, клавиатура 10 секунд), но не так быстро, как в безопасном режиме. Я попытался переустановить драйвер после этого, и (без перезагрузки) он остается быстрее; однако все еще использует общие драйверы (так как такие клавиши клавиатуры не работают). Исходя из этого, я думаю, что мы можем легко понять, что мои драйверы клавиатуры Corsair занимают некоторое время, чтобы инициализировать и удерживать мышь во время выполнения.
Cestarian 8 лет назад
0
Используете ли вы [последнюю версию Corsair Utility Engine от марта 2016 г.] (http://www.corsair.com/en-us/support/downloads)? (Содержит ли этот «движок» драйвер?) Вы также можете обратиться в службу поддержки клиентов Corsair (https://corsair.secure.force.com/home/home.jsp).
harrymc 8 лет назад
0
@harrymc да, да, да, и да, я спрошу их (хотя я сомневаюсь, что многое из этого получу, хотя, это может быть просто плохой код)
Cestarian 8 лет назад
0
До этого вы можете использовать универсальный драйвер. Для специальных клавиш вы можете использовать такие программы, как [SharpKeys] (http://www.randyrants.com/category/sharpkeys/) и / или [AutoHotkey] (https://autohotkey.com/), чтобы сопоставить их с полезные функции.
harrymc 8 лет назад
0
@harrymc Служба поддержки Corsair потерпела крах, они сказали: «Пожалуйста, подключите клавиатуру напрямую к компьютеру, как и положено». Не собираюсь снова покупать продукты у этих придурков, я, по крайней мере, ожидаю более вежливого отказа в обслуживании, чем этот ...
Cestarian 8 лет назад
0
Вы пробовали [Отключение поиска Центра обновления Windows для драйверов устройств] (https://technet.microsoft.com/en-us/library/cc730606 (v = ws.10) .aspx)? Параметр находится на вкладке «Оборудование» окна «Свойства системы».
Atoadaso 8 лет назад
0
@Atoadaso уже был выключен.
Cestarian 8 лет назад
0
3 ответа на вопрос
0
harrymc
Резюме вышеприведенных комментариев:
Проблемными устройствами являются именно мышь и клавиатура.
Удаление их драйверов и обращение к общим драйверам Windows значительно улучшило время переключения.
Оставшаяся проблема заключается в том, что универсальный драйвер клавиатуры не может обрабатывать специальные клавиши, для которых я рекомендовал использовать SharpKeys и / или AutoHotkey для сопоставления их с полезными функциями.
Ну, ты забыл одну часть вопроса. Сокращение (или удаление) тайм-аута между физическими разъединениями устройства и временными окнами, регистрирующими разъединение.
Cestarian 8 лет назад
0
также я (очень) очень сомневаюсь, что острые клавиши или autohotkey могут быть использованы для отображения G-клавиш. Обычно на клавиатурах, подобных этим, клавиши G либо вообще не регистрируют нажатия клавиш, либо регистрируют заранее определенные нажатия клавиш (например, F1-F12), но не являются уникальными. Они не могут заменить реальный драйвер, драйвер должен выдерживать аппаратный код, указанный при каждом отдельном нажатии клавиш, а универсальные драйверы не понимают «G1-G18» или «MR, M1, M2 и M3». Они бы сделали, если бы производитель сопоставил их с разными клавишами (например, F13-F24 ..), но они обычно этого не делают.
Cestarian 8 лет назад
0
Время задержки переключения: для уменьшения необходимо поменять KVM. Существует технология, называемая DDM (динамическое сопоставление устройств), которая должна уменьшить задержку, но обычно она является дорогостоящей ([пример] (http://www.amazon.com/StarTech-com-Switch-Switching-Technology-SV431DVIUDDM). / дп / B00NIX4EOY / исх = sr_1_1? т = UTF8 & QID = 1461047788 & стер = 8-1 & ключевые слова = KVM + быстрое переключение +)). У меня нет опыта с этим, и я не знаю, насколько хорошо это работает.
harrymc 8 лет назад
0
Назначение клавиш: это зависит от клавиатуры. Обычно клавиатура генерирует скан-код, который интерпретируется сторонним драйвером. Я не знаю вашу клавиатуру, но я полагаю, что потребуется сотрудничество Microsoft для такой глубокой интеграции в Windows, чтобы полностью справиться с клавиатурой. Скан-код гораздо проще обрабатывать в программном обеспечении.
harrymc 8 лет назад
0
Это проблема с драйверами - я считаю, что драйверы Linux являются более общими. Более развитый KVM будет имитировать постоянное присутствие устройств, так что будет нулевая задержка. Я могу удалить этот ответ, если вы не считаете его полезным.
harrymc 8 лет назад
0
Нет, это определенно принадлежит.
Cestarian 8 лет назад
0
0
emk2203
There are reports of a reduced reconnect time if you shut off the Allow computer to turn off this device to save power under Device Manager - Properties - Power of the two USB devices.
It's worth a try, but Windows just likes to take its sweet time.
Я уже пробовал это, единственные устройства, где я мог переключить эту опцию, были для USB-концентраторов, а не сами устройства. Казалось, не имеет никакого эффекта. Я пытаюсь это снова подтвердить, но не ожидаю многого. (Я отключил его для всех USB-концентраторов) Обновление: Да, никакого эффекта.
Cestarian 8 лет назад
0
Поскольку устройства не спят, а скорее исчезают, этот параметр не должен применяться.
harrymc 8 лет назад
0
0
Cestarian
Я только что обнаружил, что Windows 10 не имеет этой проблемы, она обычно переключается мгновенно для меня. Моя проблема была в основном связана с Windows 7, хотя это не полный ответ, но я предполагаю, что мне просто придется некоторое время использовать Windows 10, пока я не смогу полностью сбросить Windows ... просто еще один драйвер, который нужно исправить ... ,
Но да, это так. Если вы работаете в Windows 7 и сталкиваетесь с той же проблемой, знайте, что переход на Windows 10 может решить ее.