I modelli Mac che supportano questo hanno un processore secondario, indipendente dalla CPU (è il LOM su Intel Xserves, SMC su Mac regolari). Fondamentalmente, il processore secondario può avere un timer per il conto alla rovescia impostato e resettare la CPU (forzando un riavvio) se il contatore colpisce 0. Nel frattempo, un processo in esecuzione su OS X (originariamente era un programma chiamato watchdog, ma penso che launchd maneggi ora) resetta periodicamente il contatore.
Se il sistema operativo viene mai sufficientemente informato che launchd / watchdog / qualsiasi cosa non riesce a resettare il contatore entro il limite di tempo, il LOM / SMC / etc subentra e forza il riavvio.
A proposito, riguardo al commento di @TJ Luoma sui panici del kernel: quando si verifica un panico, il sistema operativo è praticamente morto. Non c'è modo per launchd di essere informato di questo, perché è morto insieme a tutto il resto. Quello che succede è che alcune informazioni sul panico vengono importate nella NVRAM (i brandelli del sistema operativo sopravvissuti possono accedervi senza bisogno di driver, ecc., Che sono andati tutti nel panico). Dopo il riavvio, la NVRAM viene controllata e (se appropriato) i suoi contenuti sono riportati nel registro di panico.