Il computer può fare il POST senza una CPU?

La risposta dipende se stai parlando di PC IBM, o se stai parlando di computer in generale.

Quasi tutti i mainframe hanno FEP (Front-end processors) che possono fare il POST del mainframe.

L'originale Cray 1 aveva un MCU (Maintenance Control Unit) che era un minicomputer Data General SuperNova S/200. Caricava il sistema operativo nel sistema, monitorava la CPU e (opzionalmente) agiva come FEP del sistema. Caricava il sistema operativo nel sistema, controllava la CPU e (opzionalmente) agiva come FEP del sistema.

La serie DEC VAX 11/785 aveva un DEC MicroVAX come FPU (questa era una conversione dai sistemi VAX originali, che usavano un DEC PDP-11).

Ma anche le macchine di classe PC possono farlo.

L'RS/6000 e il PowerMac G5 avevano entrambi degli SP (processori di sistema) che configuravano il computer e tutto l'hardware nelle modalità appropriate, e poi spingevano la CPU principale a fare il boot effettivo del sistema operativo (che a quel punto era già caricato in memoria). Questi prendono il posto del bootloader primario.

È abbastanza comune su tali sistemi dover resettare il SP in caso di un guasto; poiché il SP si trova sul bus di mantenimento (cioè ha sempre energia dopo aver avviato il sistema), l'unico modo per farlo è scollegare l'unità dal muro, e poi aspettare un minuto o giù di lì mentre i condensatori dell'alimentazione si scaricano.

Lo scopo di metterli sul bus di mantenimento è quello di rendere gli avvii successivi molto più veloci, poiché la configurazione hardware è già nota al SP a quel punto. Quindi, invece di cercare l'hardware, si limita a punzecchiare tutti i bit di modalità su tutto l'hardware, e va. L'avvio è molto più veloce, specialmente se avete schede grafiche nVidia, che hanno impostazioni predefinite così terribili, che dovete punzecchiare quasi tutto.

I moderni sistemi server di Intel hanno un processore separato per la manutenzione remota; questi assomigliano molto all'MCU originale Cray 1 nell'intento e nella funzione.

Anche i moderni chipset dei sistemi Intel da Haswell in poi ce l'hanno, quindi, anche se è una macchina desktop, e non un server, c'è il codice di qualcuno che gira in una CPU nascosta sul sistema, e che può effettivamente essere usato per spiare a distanza l'attività del sistema, se non si ha un adeguato firewall tra esso e Internet.

Ovviamente: una macchina Intel I5 non può postare senza CPU; lo scopo della CPU principale è di agire anche come MCU. Nell'Intel MP Spec versione 4.0, ci si riferisce a questo come al BSP (Boot System Processor); se il chip ha più core, allora sono chiamati AP (Auxiliary Processors); vanno in modalità sleep al boot aspettando che il sistema operativo si carichi e li risvegli con un IPI (Inter Processor Interrupt).

In termini di pulsante di accensione...

Il pulsante di accensione è controllato da una sezione del BIOS chiamata ACPI (Advanced Configuration and Power Interface). Credetemi: non è così avanzato.

Dopo il POST del sistema, installa un gestore SI (System Interrupt), e punzecchia la PMU (Power Management Unit) in modo che abbia un comportamento di spegnimento ACPI.

Questo comportamento richiede che si tenga premuto il pulsante di accensione per diversi secondi affinché il sistema si spenga effettivamente (attraverso una comunicazione di andata e ritorno tra la PMU e l'alimentatore).

Fino a quando il POST non avviene, la PMU stessa si pone in una condizione tale che premendo il pulsante si spegne semplicemente.

Dopo il POST della CPU principale, la PMU viene punzecchiata per generare un SI quando il pulsante viene premuto in modo che il sistema operativo possa prendere il SI, vedere che si tratta di un interrupt ACI, e quindi decidere se vuole spegnere, ibernare, far apparire un menu che chiede all'utente cosa vuole fare, sospendere su disco, o altro.

Il failsafe per lo spegnimento consistente nel tenere premuto il pulsante di alimentazione per diversi secondi rimane in giro (è incorporato nell'alimentazione stessa).

I "computer reali" tendono ad essere più complicati del PC IBM originale.