
私は Windows 10 を使用しています。 私の ではDevice Manager
、ノードDevice Firmware
の下にいくつかリストされていますFirmware
。
私はそれらのためにダミーのデバイス ファームウェア ドライバーを作成しました。
次に、ダミー ドライバーにバージョン番号 (たとえば 0.0.0.1) を割り当てます。次に、それを使用してファームウェア デバイスの 1 つを更新します。システムから再起動を求めるプロンプトが表示されます。
Windows を再起動すると、ドライバーが動作しており、ドライバーのバージョンが 0.0.0.1 であることがわかります。
次に、同じダミー ドライバーに、たとえば 0.0.0.2 などのより高いバージョン番号を割り当てます。そして、ファームウェア デバイスを再更新します。
しかし今回は、システムが再起動を促しません。
そして、0.0.0.1 にダウングレードしようとしました。それでも再起動しません。
イベント ログ -> システムには、次のような内容が表示されます。
ドライバー管理は、ドライバーのインストール プロセスを次のステータスで完了しました: 0x0。
そして
デバイス...が設定されました。
上位ドライバー: ...
ドライバーを切り替えても、上位再起動せずに相互に接続できます。
ここでの意味がよく分かりませんoutrank
。私は毎回変化ドライバーのバージョンによっては、再起動が必要になります。
では、なぜ再起動しないのでしょうか?
答え1
再起動が必要になるのは、ドライバーに必要なファイルが開いていてロックされており、現在使用中であり、それを使用しているソフトウェアによって解放できないために置き換えることができない場合のみです。
プログラムがデバイスに対してロックを解除することなく、デバイスをシャットダウンしてアンロードできる場合は、再起動する必要はありません。現在のドライバーをアンロードし、新しいドライバーに置き換えて、新しいドライバーをロードするだけです。
デバイス ドライバーは、再起動、システム休止状態、または電源サイクル後にデバイスがどのようなランダムな状態であっても、そのデバイスを完全に初期化できるものと想定されています。完全な電源サイクルが実行されない限り、デバイスはドライバーのアンロードとして再起動後にほぼ同じ状態になるため、必要な作業は同じになります。