Risposte:
Gran parte dell'hardware interno nei PC richiede l'inizializzazione all'avvio per apparire correttamente nella CPU. Mentre i dispositivi plug and play esterni sono progettati per essere rimossi e aggiunti in qualsiasi momento, l'hardware del controller della scheda madre dietro queste interfacce non lo è. In ogni caso, tutti questi dispositivi si connettono a un chipset che deve essere inizializzato. In genere questa inizializzazione è un affare one-shot fino a quando il dispositivo non viene ripristinato. Alcuni, ma non tutti i dispositivi forniscono un modo per reinizializzare il dispositivo allo stato di avvio senza un ripristino fisico. Un reset fisico a tutti questi dispositivi garantisce uno stato noto da cui il sistema può procedere con un avvio ordinato.
C'è anche il problema che alcuni, se non la maggior parte, i chipset PC, che costituiscono l'hub fisico per tutti i sistemi I / O e anche cose come la configurazione RAM, richiedono passaggi di inizializzazione proprietari che il BIOS fa prima ancora di ottenere un display.
Detto questo, Linux (non Windows) fornisce una funzionalità in cui è possibile riavviare il kernel, in modo efficace "avviando a caldo" il sistema senza coinvolgere il BIOS. Guardare dentro kexec
. Non c'è niente di simile per Windows, per quanto ne so.
Il sistema non sta spegnendo i dispositivi. I dispositivi stessi stanno rilevando il segnale sulla linea di reset e si stanno resettando.