Video: Come Funzionano i Computer: Hardware e Software
Ciao, sono Erica Gomez e sono una responsabile tecnica in Amazon.com. Uno dei vantaggi di lavorare in ambito tecnologico, e in particolare in Amazon, è che posso portare la mia cagnolina con me al lavoro tutti i giorni. Il mio lavoro è di aiutare a fare in modo che il software veda la luce e il suo lavoro è quello di appisolarsi sotto la mia scrivania e russare molto forte.
Il mio nome è Jerome Holman e sono un responsabile di programma nel Team Xbox e ho un lavoro davvero divertente: fondamentalmente unisco hardware e software per farvi avere tutti i giochi che amate sulla vostra Xbox.
Quando guardate dentro ad un computer vedete un mucchio di circuiti, circuiti integrati, fili, altoparlanti, connettori e molto altro. Questo è l'HARDWARE.
Ma quello che non vedete è il SOFTWARE. Il software è l'insieme di tutti i programmi eseguiti nel computer. Un programma (detto anche CODICE) può essere un'applicazione per giocare, una pagina web, o un'applicazione per analizzare i dati come quella che io e il mio gruppo qui in Amazon usiamo per capire come si comportano i clienti.
Ma come interagiscono tra loro hardware e software? Iniziamo analizzando l'unità centrale di elaborazione (CPU).
La CPU è il principale circuito integrato che controlla tutte le altre parti del computer. Una CPU deve fare varie cose, per questo all'interno è suddivisa in componenti più piccoli che gestiscono specifiche attività. Ha un componente per eseguire semplici operazioni matematiche e logiche. E ne ha altri per inviare e ricevere dati da e verso altre parti del computer.
La vera magia della CPU sta nel sapere quali componenti usare e quando. La CPU riceve semplici istruzioni che le dicono quale componente usare per un particolare lavoro. Per esempio, un'istruzione di SOMMA (ADD) dice alla CPU di usare il componente matematico-logico per calcolare un nuovo numero. E l'istruzione MEMORIZZA (STORE) dice alla CPU di usare un componente diverso per archiviare il risultato in memoria.
Proprio come i numeri, tutte queste semplici istruzioni possono essere rappresentate con gli uni e zeri del sistema binario ovvero segnali elettrici accesi e spenti. Le istruzioni scritte in binario sono archiviate in memoria e la CPU le recupera ed esegue in sequenza una dopo l'altra. Infatti, questa sequenza di istruzioni è un programma molto semplice, detto codice binario.
Il codice binario è la forma più semplice di software e controlla tutto l'hardware di un computer. Al giorno d'oggi nessuno scrive più codice binario. Ci vorrebbe un'eternità!
Oggi, il software che scriviamo ha questo aspetto questo (Python), o questo (Ruby) o anche questo (Blockly). I linguaggi di programmazione come questi permettono di scrivere programmi usando un linguaggio più simile a quello umano (in inglese).
Per disegnare un rettangolo sullo schermo, serve un'unica istruzione. Quest'istruzione di alto livello è convertita in centinaia o migliaia di semplici istruzioni binarie che la CPU è in grado di capire. Il software dice alla CPU cosa fare, ma quando ascolti musica, navighi sul web e chiacchieri con un amico, il computer utilizza più programmi contemporaneamente.
Innanzitutto, come fanno tutti questi programmi ad arrivare sul computer? E come può la CPU eseguirli tutti insieme? Per scoprirlo dobbiamo dare un'occhiata al sistema operativo.
Il sistema operativo (OS) di un computer è il programma principale che decide come il software deve usare l'hardware del computer. Ad esempio, io ho creato il sistema operativo Windows installato su molti computer.
Il sistema operativo è un programma con speciali caratteristiche che gli permettono di controllare gli altri programmi eseguiti dal computer. Ti permette di installare nuovi programmi caricandoli nella memoria del tuo computer. Decide quando un programma deve essere eseguito dalla CPU e se può accedere ai dispositivi di ingresso e uscita del computer. E quando pensi che il tuo computer stia eseguendo molti programmi contemporaneamente, in realtà, è il sistema operativo che velocemente fa eseguire alla CPU un programma dopo l'altro ognuno per qualche frazione di secondo.
All'interno di ogni computer c'è un sistema operativo che gestisce il software che controlla l'hardware del computer.
Il software è l'insieme dei programmi, ognuno dei quali è una sequenza di istruzioni scritte col sistema binario e queste istruzioni in binario corrispondono a segnali elettrici che scorrono attraverso miliardi di minuscoli circuiti.
I computer hanno la potenzialità di fare cose fantastiche. Ma l'unica cosa che rende i computer intelligenti o utili, sei tu. Quando impari a programmare, devi definire il problema da risolvere e scrivere il software che trasforma queste idee in realtà.