4

На моем сервере я пытаюсь установить новый USB-накопитель, но все, что происходит, это то, что система начинает использовать огромное количество процессорных циклов с помощью services.exe. При ближайшем рассмотрении с помощью проводника процессов появляется поток под названием umpnpmgr.dll, использующий большую часть процессорного времени services.exe.

Я оставил это в течение получаса, и все еще ничего не случилось.

Перезагрузился и попробовал еще раз, тот же результат.

Пробовал другой usb диск, потом флешку но все та же проблема.

Попытка обновления драйвера, но он сказал, что функция обновления уже работает.

Я использовал Process Explorer, чтобы убить поток сейчас, чтобы сервер все еще мог выполнять свои функции.

Любое устройство, которое было ранее установлено до того, как это произошло, все равно будет работать, но любое устройство, новое для системы, не будет.

Мой вопрос (ы):

Есть ли способ вручную установить устройство в реестр, чтобы Windows считала его ранее установленным устройством?

Или эту проблему можно исправить с помощью чего-то другого, кроме переустановки? Выполнение переустановки означало бы резервное копирование больших объемов данных, что сложно на USB-диске и недостаточно места на всех других сетевых машинах.

Любая помощь будет принята с благодарностью.

Уильям

6 ответов6

5

Обновление: Windows 7 Service Pack 1 содержит исправление:

KB981214: высокая загрузка ЦП при использовании аудиоустройства USB, подключенного к хост-контроллеру EHCI USB 2.0

В этом случае вы заметите, что на компьютере наблюдается высокая загрузка ЦП примерно каждые 15 секунд. Кроме того, вы можете пропустить воспроизведение звука с аудиоустройства, когда общее использование процессора достигает 100%.

Посмотрите, исправит ли SP1 проблему.


Используйте Process Explorer, чтобы посмотреть на поток, который работает, и посмотрите на его трассировку стека. По крайней мере, вы можете увидеть службы, размещенные внутри services.exe.

альтернативный текст

Я предполагаю, что в это время машина связана с процессором, а не с IO. Если он связан с вводом / выводом, вы можете увидеть, что он делает, с помощью Process Monitor - это может привести к некоторому пониманию.


я вижу на вашем скриншоте Process Explorer, что процесс занимает 50% процессорного времени. Я предполагаю, что это двухъядерный компьютер, и он занимает одно ядро. Так что процессор застревает, что-то делает.

Глядя на трассировку стека:

альтернативный текст

То , что я на ключевом (я не эксперт, просто они пробудили мой интерес) , являются:

  • VerifyCatalogFile
  • Настройка FindNextMatchLine W
  • SetupDi EnumDeviceInterfaces

Из термина "файл каталога" мне кажется, что он проходит через все установленные INF. я не знаю, что делают эти функции, но я могу проверить:

VerifyCatalogFile

Проверяет один файл каталога.

SetupFindNextMatchLine

Функция SetupFindNextMatchLine возвращает местоположение следующей строки в INF-файле относительно ContextIn.Строка, соответствующая указанному ключу.

SetupDiEnumDeviceInterfaces

Функция SetupDiEnumDeviceInterfaces перечисляет интерфейсы устройства, которые содержатся в наборе информации об устройстве.

Так это звучит , как это происходит через все INF - файлы, тыкая через каждый из них, а затем делать вещи на основе того, что он находит.

Следующий вопрос: он застрял в одном INF-файле, или их много , или он повторяется , или у него нет доступа к одному, или ... кто знает.

Следующее, что я хотел бы сделать, это загрузить Process Monitor и настроить его на отображение только файловой активности с помощью services.exe. Затем вы можете увидеть масштабирование всех файлов inf. Надеюсь , вы можете увидеть одно это застревание на (надеюсь , это просто застрять на одном). Тогда, возможно, вы можете переименовать / скрыть этот нарушающий INF-файл.


Обновление Два

Пример монитора процесса.

На панели инструментов отключите параметры, кроме Действия с файловой системой:

альтернативный текст

Затем добавьте фильтр:

Process Name
is
services.exe
Include

и нажмите Добавить:

альтернативный текст

1

Проверьте, включен ли режим ожидания USB-опросов. Для получения дополнительной информации см. Http://www.pctools.com/guides/registry/detail/1210/. Кроме того, если вам не нужна служба ввода пользователя HID (см. Ваши службы через Пуск -> Выполнить -> services.msc), вы можете отключить ее.

0

Может ли это быть автозапуск мешать? Попробуйте отключить его или удерживать нажатой клавишу shift при первом подключении устройства.

0

Некоторые идеи:

  1. Проверьте в диспетчере устройств, свойства USB-устройства, согласится ли Windows сделать драйвер отката.
  2. Попробуйте удалить устройство USB из диспетчера устройств и перезагрузиться (лучше сначала сделать резервную копию системы).
  3. Попробуйте также отключить контроллер USB, чтобы увидеть, останавливает ли это обновление драйвера.
  4. Вы пытались вынуть устройство USB и перезагрузиться? Возможно, просто новое устройство сломано. Вы можете попробовать его на другом компьютере и более новой ОС, чем W2K3.
0

не решение проблемы, но чтобы исключить неисправное оборудование, подключите USB-накопитель, затем загрузите дистрибутив Linux с компакт-диска и проверьте, обнаружен ли USB-накопитель и работает ли он нормально.

0

Лучше сначала установить диск, затем подключить его к вашей системе, и иногда необходимо отключить антивирус или брандмауэр, затем установить драйвер и затем подключить устройство. и иногда вы должны установить в безопасном режиме для лучшей работы. но мой совет не подключайте устройство сначала, а после этого хотите установить драйвер.

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