Ricordi la prima volta
in cui hai realizzato
che il tuo computer era più
di un monitor e una tastiera?
Tra il click del mouse
e lo scorrere del video,
c'era qualcosa
che catturava il vostro intento,
lo capiva,
e lo rendeva reale?
Che cos'è quel qualcosa?
Sono i gremlins?
Immaginiamo di poterci ridurre
alla dimensione di un elettrone
e di introdurci nel click di un mouse.
Se smontate il mouse,
vedrete che è una macchina
veramente semplice.
Ha una coppia di pulsanti
e un sistema di rilevamento
del movimento e della distanza.
Potreste avere un mouse ottico
che prende queste misure
attraverso la luce e i sensori,
quelli vecchi lo facevano
con una sfera di gomma dura
e rotelle di plastica.
È lo stesso concetto.
Quando cliccate il pulsante del mouse,
questo invia un messaggio al computer
con informazioni sulla sua posizione.
Quando il click è stato ricevuto,
viene processato
dal sottosistema basico input/output.
Il sottosistema fa da occhi, orecchie,
bocca e mani del computer.
In pratica, fornisce al computer un modo
per interagire con il suo ambiente.
Ma fa anche da tampone
evitando che la CPU
sia sommersa dalle distrazioni.
In questo caso,
il sottosistema I/O stabilisce
che il click è piuttosto importante
perciò genera un'interruzione nella CPU.
"Hey, CPU! Ho qui un click."
La CPU,
o Unità di Elaborazione Centrale,
è il cervello dell'intero computer.
Proprio come il cervello
non occupa tutto il corpo,
la CPU non occupa tutto il computer,
ma dirige ugualmente lo spettacolo.
Il lavoro della CPU, tutto il suo lavoro,
è prendere istruzioni dalla memoria
ed eseguirle.
Così, mentre scrivete e scrivete,
magari molto velocemente,
come 60 parole al minuto,
la CPU sta prendendo ed eseguendo
miliardi di istruzioni al secondo.
Si, miliardi ogni secondo:
le istruzioni per muovere
il mouse sullo schermo,
per far funzionare l'orologio nel desktop,
ascoltare la radio in Internet,
gestire i file che modificate
sul disco rigido,
e molto, molto altro ancora.
La CPU del vostro computer
è un formidabile multitasker!
"Però, caspita
c'è un click del mouse
che sta arrivando!
Lasciamo perdere tutto
e occupiamoci di quello!"
Ci sono programmi per tutto ciò
che la CPU fa.
Un programma speciale per il mouse,
per l'orologio,
per la radio in Internet,
e per gestire le lettere
inviate dalla tastiera.
Inizialmente
ogni programma era scritto dall'uomo
in un linguaggio
di programmazione leggibile,
come Java,
C++,
o Python.
Ma i programmi umani
occupavano molto spazio
e contenevano molti dati
non necessari al computer,
perciò vengono compilati e ridotti
e sistemati
in bit uno e zero nella memoria.
La CPU si accorge
che servono istruzioni
per occuparsi di questo click,
quindi cerca l'indirizzo
del programma del mouse
e invia una richiesta
al sottosistema di memoria
in cerca di istruzioni depositate lì.
Ogni istruzione nel driver del mouse
è debitamente presa ed eseguita.
E siamo solo agli inizi!
Poiché la CPU sa
che il mouse è stato cliccato
quando il cursore era sull'immagine
di un pulsante sullo schermo del monitor,
allora la CPU richiede chiede memoria
per il programma del monitor
per scoprire quale sia quel pulsante.
Poi la CPU deve richiedere memoria
per il programma del pulsante,
ciò significa che la CPU ha bisogno
di nuovo del programma del monitor
per mostrare il video
associato al pulsante,
e così via.
Diciamo solo che ci sono
tanti programmi che intevengono
ancor prima di vedere
il pulsante sullo schermo
accendersi quando lo cliccate.
Dunque,
solo il semplice click del mouse
implica controllare
tutti i componenti essenziali
dell'architettura del computer:
le periferiche,
il sistema basico input/output,
la CPU,
i programmi,
e la memoria,
e nemmeno un gremlin.