Istruttore: In questa
lezione parleremo delle architetture delle CPU.
Ora, la CPU o unità di elaborazione centrale, normalmente
chiamata solo processore, è il dispositivo che costituisce
il cervello del computer e viene utilizzato per eseguire
i diversi codici di programma presenti nel software
o nel firmware.
Questo indica al computer come svolgere esattamente il proprio lavoro
per qualsiasi tipo di funzione si voglia eseguire.
In sostanza, la CPU esegue le operazioni di base su
ogni singola istruzione.
La CPU recupera prima l'istruzione, e prende l'istruzione
successiva nella sequenza dalla memoria
di sistema o dalla cache all'interno
del processore, che è essenzialmente un tipo
di memoria ad alta velocità.
Quindi, l'unità di controllo o il processore
sarà in grado di decodificare ciascuna di queste
istruzioni e di eseguirla o
di passarla a un'unità secondaria che la
aiuterà a eseguire il processo.
Per esempio, in molti processori sono presenti
elementi come l'unità in virgola mobile o l'unità
logica aritmetica, che possono essere
utilizzati per eseguire istruzioni diverse
in base al tipo di codice e
al tipo di istruzione da eseguire.
Poi, una volta che il processore ha
terminato l'esecuzione dell'istruzione,
rimanda l'informazione al registro, alla cache o alla
memoria, in modo che possa essere memorizzata e utilizzata
dal sistema in un secondo momento durante il programma
o presentare l'output all'utente per consentirgli
di agire.
Questo è il modo in cui i processori funzionano
sulla scheda madre e all'interno del computer.
Ora, se guardiamo al processore stesso,
esso ha una propria architettura.
Così come la scheda madre ha un
fattore di forma che definisce ciò che può fare,
l'architettura del processore definisce
le capacità del processore stesso.
Ci sono tre architetture principali
che si incontrano sul
campo come tecnici.
Il primo è noto come X86.
Ora, X86 è talvolta chiamato anche IA-32 o set di istruzioni
a 32 bit dell'architettura Intel.
Questo perché l'X86 è stato originariamente sviluppato
da Intel con alcuni
dei primi PC negli anni '70 e '80.
Nel corso del tempo, i computer sono passati
da 8 bit, a 16 bit, a 32 bit e, lungo tutto il percorso, Intel ha creato
questa compatibilità all'indietro e tutti
questi sistemi sono diventati
noti come generazione di processori X86.
Questo perché i primi processori
utilizzati nei computer da
Intel si chiamavano serie 8086.
La serie successiva divenne
la 286, poi la 386, la 486, la 586 e a quel
punto si passò
all'uso di nomi di marca,
come Celeron o Pentium e simili.
In ogni caso, tutti questi dispositivi
erano originariamente processori X86, e così è
stato fino a quando non si è
arrivati ai processori a 64 bit.
Una volta passati a un processore a 64
bit, abbiamo iniziato a chiamarlo processore
X64 o architettura X64.
Ora, ogni volta che si vede X64 come set di istruzioni,
significa che abbiamo esteso il set di istruzioni
X86 o a 32 bit per essere in grado
di supportare operazioni a 64 bit.
Si tratta di una cosa importante
da capire perché quando si ha a che fare con processori a
32 bit, che sono processori X86, possono supportare
solo una quantità massima di memoria di quattro
gigabyte di RAM.
Fisicamente non possono indirizzare
nulla di più di quattro gigabyte perché
ci sono solo 32 bit disponibili per l'indirizzamento.
E se si porta 2 alla 32esima potenza, si
ottengono circa 4 miliardi di bit, pari
a circa quattro gigabyte.
Si capisce quindi perché per noi era
importante andare oltre il processore X86,
perché quattro gigabyte di RAM sono
davvero pochi nei sistemi moderni.
In effetti, al giorno d'oggi
sarebbe considerato un sistema a bassa memoria.
La maggior parte dei computer dispone di 8, 16, 32 o addirittura
64 gigabyte di RAM come memoria principale
del sistema.
Per poter affrontare tutto questo,
è necessario passare a un set di istruzioni a
64 bit utilizzando un processore X64.
Spesso si sente parlare di questo
prodotto in base al nome del marchio, AMD64 o Intel 64, a seconda
del modello prodotto dal
produttore.
Ma entrambe sono considerate architetture basate su X64
per quel particolare processore.
Un'altra cosa importante
da ricordare quando si parla di 64 bit rispetto
a 32 bit è che i sistemi a 32 bit possono
eseguire solo programmi a 32 bit, mentre
i processori a 64 bit possono eseguire programmi a 64 bit e a 32 bit
perché sono completamente
retrocompatibili.
Per questo motivo,
la maggior parte dei sistemi che si incontrano
al giorno d'oggi sono processori basati su X64, perché
sono molto utilizzati nel mercato dei PC e ampiamente supportati
da Windows e da tutte le sue varianti.
Il terzo tipo di processore che si può incontrare
è il cosiddetto processore ARM.
ARM è l'acronimo delle macchine RISC avanzate
e RISC è un acronimo che si scrive
R-I-S-C, ovvero reduced instruction
set computer.
Per molto tempo ARM è stato utilizzato
per dispositivi a bassa potenza,
come tablet, telefoni cellulari e simili.
Ma all'inizio degli anni 2020,
Apple ha deciso di rilasciare una nuova
serie di processori per i suoi
computer desktop e portatili
che utilizzavano anche chip ARM,
noti come serie M1, M1 Pro, M1 Max
e ora i nuovi processori
della serie M2 e oltre.
Tutti questi elementi sono
stati trasferiti in questo set di istruzioni
ARM, perché ARM consente di fare alcune cose molto speciali
che non si possono fare in un processore basato su X86 o X64.
Il più importante di questi
è la maggiore durata della batteria.
ARM produce molto meno calore per poter
eseguire tutti gli stessi calcoli di
un processore basato su X64 o X86 e questo consente di risparmiare
molta batteria e molto raffreddamento.
È quindi molto popolare nelle configurazioni system on a chip, come
le smart TV, gli altoparlanti intelligenti e altri
dispositivi, nonché i computer portatili più recenti.
Quindi, quando si utilizza
qualcosa che non è basato su Windows,
come un dispositivo Apple, un Chromebook
o persino un telefono o un tablet Android,
questi tendono a utilizzare processori basati
su ARM invece che su X64 o X86 per via della maggiore durata
della batteria e del minore consumo
energetico che crea meno calore all'interno
del dispositivo.
Ora, se si considera un processore basato su RISC o ARM
rispetto a un processore basato su X64 o X86, si ha a che fare con
un set di istruzioni ridotto invece che con
un set di istruzioni completo e complesso.
Si potrebbe pensare che questo comporti una minore capacità,
ma non è così.
Quando si utilizza un sistema basato su RISC, questi
sistemi RISC utilizzano un numero inferiore di istruzioni per poter svolgere
tutte le stesse attività, ma si affidano maggiormente
al codice per poterle eseguire.
Ciò consente a ciascun pezzo di codice all'interno
del RISC di fare più cose con meno codice, riducendo
il consumo di energia e prolungando la
durata della batteria.
Con la continua evoluzione dei computer,
i processori basati su RISC e ARM diventeranno
sempre più diffusi in un'ampia
gamma di sistemi, tra cui
desktop e portatili.
E questo sta già iniziando a farsi
strada nell'ambiente Windows,
dato che ora stanno iniziando a offrire versioni di Windows
11 che supporteranno un processore basato su ARM.
Una volta che il sistema sarà uscito dalla fase beta e sarà entrato in produzione
generale, vedremo un numero maggiore di desktop e laptop che
utilizzano ARM, al di là del semplice utilizzo per i sistemi Apple.