Как Windows 10 определяет, должно ли обновление драйвера вызвать перезагрузку?

362
smwikipedia

Я использую Windows 10. В моем Device Manager, у меня есть несколько Device Firmwareперечисленных под Firmwareузлом.

Я создал для них фиктивный драйвер прошивки устройства.

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

После перезагрузки в Windows я вижу, что мой драйвер работает, и версия драйвера - 0.0.0.1.

Затем я назначаю этому же фиктивному драйверу более высокий номер версии, скажем, 0.0.0.2. И обновите прошивку устройства.

Но на этот раз система не требует перезагрузки.

И я попытался понизить рейтинг до 0.0.0.1. Все еще нет перезагрузки.

И в журнале событий -> Система, я вижу что-то вроде этого:

Управление драйвером завершило процесс установки драйвера ... со следующим статусом: 0x0.

А также

Устройство ... было настроено.

Outranked Drivers: ...

Когда я переключаю драйверы, они просто обгоняют друг друга без перезапуска.

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

Так почему бы не перезагрузить?

0

1 ответ на вопрос

1
Mokubai

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

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

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

Благодарю. Но в моем сценарии я обновляю прошивку устройства. Новая прошивка должна быть записана во флэш-память. Может ли Windows 10 записывать на флэш-память без перезагрузки? smwikipedia 5 лет назад 0