"Computer, chi era costui?"

 

Cominciamo dal nome. Computer, vocabolo inglese (tanto per cambiare), significa calcolatore e questo tradisce l'origine di queste macchine che, allora, erano nate essenzialmente per "far di calcolo". Oggi in effetti di calcoli se ne fanno ormai, usualmente, molto pochi ma il nome è rimasto. Sarebbe meglio chiamarli elaboratori, dato il loro ruolo ormai prevalente di gestori di dati.

Vale la pena sottolineare che la struttura degli attuali elaboratori è stata definita in una memoria presentata da Burks, Goldstine e Von Neumann nel 1946 al Ministero della Difesa USA dal titolo "Discussione preliminare sul disegno logico di uno strumento di calcolo elettronico". Va premesso che Turin, negli anni 30, aveva dimostrato in termini matematici, che un qualunque calcolo, complesso a piacere, si poteva tradurre in una sequenza di operazioni elementari, aprendo dunque la strada all'utilizzo dell'energia elettrica come "motore" per poter effettuare operazioni.

Di fatto (e sono passati 54 anni!), per la stragrande maggioranza degli elaboratori sul mercato, la struttura non è cambiata affatto. Vale dunque la pena dare un'occhiata più da vicino alla macchina di Von Neumann (così come normalmente viene citata).

Essa è definita come una struttura composta da tre parti fondamentali.

·         Una memoria nella quale vengono caricati indistintamente dati ed istruzioni. Questa memoria deve essere indirizzabile alla singola posizione in maniera casuale (Random Access Memory = RAM) e con un solo numero. La memoria è dunque, da un punto di vista strutturale, una linea e non un piano come comunemente viene rappresentata. Infine la memoria RAM è di tipo volatile, vengono cioè perse le sue informazioni se il sistema viene inizializzato o si spegne.

·         Un'unità di calcolo di tipo aritmetico-logico (Arithmetical Logical Unit = ALU) capace di eseguire le istruzioni nella memoria una dopo l'altra, accedendo alla memoria stessa per i dati sui quali le istruzioni operano. Questa unità, che oggi chiamiamo comunemente CPU (Central Processing Unit) deve essere in grado, una volta inizializzata, di eseguire la sequenza di istruzioni stabilita senza ulteriori interventi.

·         Un dispositivo di trasferimento dati dalla memoria RAM a supporti di memoria permanenti esterni e viceversa. Questi supporti vengono comunemente chiamati dispositivi di input/output (I/O) e il dispositivo per il trasferimento dati, Canale. Le richieste di trasferimento vengono iniziate dalla CPU e il Canale deve operare in maniera indipendente dalla CPU stessa, almeno a livello logico.

Fra le tre parti fondamentali vi sono dunque linee di collegamento e colloquio, fermo restando una sostanziale indipendenza di funzionamento. Mentre CPU e Canale hanno una loro proprio "intelligenza" possiamo considerare la memoria come un servente puro, che gestisce semplicemente gli accessi da parte degli altri due componenti.

La macchina di Von Neumann è una macchina "sequenziale", esegue una e una sola istruzione per volta: ciò determina il fatto che anche i programmi, le istruzioni appunto, siano rigidamente sequenziali, con approccio definito procedurale.

Dunque poco è cambiato, da un punto di vista strutturale, da allora ad oggi, anzi, oserei dire proprio nulla. Che si tratti di piccoli elaboratori o di grandi aggregati di risorse, troviamo sempre i tre componenti fondamentali, CPU, memoria e dispositivi di I/O. E' anche fuori dubbio che in 54 anni di strada ne sia stata fatta e che oggi sia possibile eseguire ed ottenere dagli elaboratori molto di più di quanto non si ottenesse agli inizi.

E allora? Ciò che è cambiato, e con risultati sorprendenti, è la tecnica di costruzione dei componenti fisici che supportano le logiche e che, con vocabolo ritradotto dall'inglese, viene definita "tecnologia". Questo progresso tecnologico ha inoltre permesso anche lo sviluppo, sempre più sofisticato, di uno strato di logica di controllo che va sotto il nome di "sistema Operativo".

Analizzeremo prossimamente questi due componenti in maggiore dettaglio.

Al Mariani

 

Computer amico mio