# Control-alt-canc

In informatica, Control-alt-canc è una combinazione di tasti della tastiera dei computer ed ha lo scopo di invocare una determinata funzione in alcuni diffusi sistemi operativi (di casa Microsoft, soprattutto), solitamente per eseguire chiusure e/o riavvii in caso di problemi.

## Descrizione

La funzione fu scritta dall'ingegnere di IBM David Bradley, che la implementò alla fine degli anni settanta per facilitare il proprio lavoro quotidiano di sviluppo software, rendendo possibile riavviare il sistema senza doversi allontanare dalla tastiera per scollegare e ricollegare l'alimentazione elettrica della macchina in caso di blocchi di sistema, all'epoca molto frequenti sui sistemi di nuova introduzione. Bradley impiegò solo 5 minuti per scrivere la routine, che avrebbe dovuto rimanere segreta. La combinazione venne resa famosa dalla Microsoft, che la implementò a sua volta in Windows, inizialmente noto per la sua instabilità. Come disse lo stesso Bradley:
«[...] it was like a five-minute job in doing it, I didn't realize that I was gonna create a cultural icon when I did it, but I have to share the credit. I may have invented it, but I think Bill made it a thing.»
«[...] è stato un lavoro di cinque minuti, non credevo mica di creare un'icona culturale quando lo feci, ma devo condividerne il merito. L'avrò pur inventato io, ma Bill l'ha reso famoso.»
(David Bradley a un evento per la celebrazione del 20º anniversario del PC IBM, San Jose Tech Museum of Innovation, 8 agosto 2001.)
Secondo un'altra fonte, il responsabile di aver selezionato per primo una combinazione di tasti simile al Control-Alt-Canc è stato Michael Donald Wise nel 1975, che la ideò per compiere il riavvio durante lo sviluppo dello Sphere 1, che precedette i PC IBM di sei anni.

## Effetti

Oggi la combinazione ha effetti diversi a seconda del sistema operativo.

### MS-DOS

In MS-DOS, così come in tutti i sistemi operativi che operano in modalità reale, la combinazione viene riconosciuta dal BIOS, che invia un messaggio di non-maskable interrupt al processore; nella maggior parte dei casi ciò causa direttamente il riavvio del computer.

### Windows (famiglia MS-DOS)

Nei sistemi Windows basati sul DOS (Windows 3.x, 95, 98 e Me), la combinazione viene identificata dai driver della tastiera di Windows. L'azione intrapresa dal sistema dipende dal valore impostato del flag LocalReboot del file system.ini.
* Se LocalReboot è impostato su Off il sistema si riavvia direttamente;
* Se LocalReboot è impostato su On, in Windows 3.x appare una schermata blu da cui l'utente può scegliere se terminare l'operazione corrente premendo Invio oppure riavviare la macchina premendo nuovamente Control-Alt-Canc, mentre in Windows 95, 98 e Me viene aperta una finestra con l'elenco di tutti i processi in corso, in cui è possibile terminarli selezionandoli singolarmente, mentre un'ulteriore pressione della combinazione comporta il riavvio del sistema.

### Windows (famiglia NT)

In Windows NT, Windows 2000, Windows XP, Windows Vista, Windows 7, Windows 8 e Windows 10 la combinazione di tasti è riconosciuta dal processo Winlogon.exe, che, nel caso in cui la macchina sia inserita in un dominio, risponde avviando uno specifico menu che permette di eseguire alcune operazioni, come ad esempio la disconnessione, il blocco del computer, il cambio della password ecc. In caso contrario viene eseguita solo l'applicazione Gestione attività (in inglese Task Manager, espressione che fino a Windows XP veniva usata anche nelle versioni italiane del sistema operativo), dalla quale è possibile terminare singole applicazioni e processi e controllare prestazioni e utilizzo delle risorse del computer.
L'avvio soltanto di Gestione attività è possibile anche premendo Ctrl+⇧ Maiuscolo+Esc (anche in caso di computer inserito in un dominio).
La struttura di Windows NT (e derivati) prevede che la combinazione sia individuata direttamente dal kernel e segnalata solo al processo di sistema Winlogon.exe. In questo modo si ha la certezza che sia il sistema operativo a rispondere e non programmi applicativi di terzi. È possibile anche impostare il sistema Windows in modo che la combinazione ne diventi la secure attention key, ovvero fare in modo che venga richiesto di digitare la combinazione al momento del login di Windows; così facendo nessun programma può essere in grado di rilevare la password inserita.
Il sistema garantisce anche che nessun programma sia in grado di impedire l'apertura di Gestione attività, in quanto nessun programma è in grado di intercettare l'elaborazione eseguita nel lasso di tempo che trascorre tra la digitazione del Ctrl+Alt+Canc e l'apertura del Task Manager.
L'amministratore può anche negare agli utenti che non hanno accesso ai comandi fisici di alimentazione e di reset la possibilità di spegnere o riavviare il computer.

### Linux

In Linux il comportamento in risposta alla combinazione non è predefinito e dipende dalle impostazioni di installazione. In assenza di istruzioni la combinazione può riavviare il sistema, tuttavia più frequentemente avvia un processo definito dall'amministratore, come la schermata di chiusura.
Per riavviare forzatamente un sistema Linux, occorre premere una sequenza di tasti denominata Magic Sys Req, composta da Ctrl+Alt+R Sist+B o da Alt+R Sist+B.
Linux può anche essere impostato per ignorare la combinazione, ossia non fare nulla quando essa viene digitata.

### Mac OS X

In macOS la digitazione della combinazione ⌘ Cmd+Alt+Esc fa apparire la finestra di dialogo "Uscita forzata applicazioni", in cui è possibile visualizzare l'elenco dei programmi in esecuzione ed effettuare l'uscita forzata da quelli che non rispondono. Premendo la combinazione Ctrl+⌘ Cmd+pulsante di accensione si forza invece il riavvio del computer.