Sei sulla pagina 1di 3

1 Classificazione degli elaboratori

Nel corso dell’ultima metà del ventesimo secolo, i progressi compiuti nel campo
dei sistemi di elaborazione sono stati enormi. A partire dai grandi mainframe
degli anni ’60 e passando per i primi desktop computer su microprocessore degli
anni ’80, si è giunti alla recente, vastissima diffusione dei dispositivi portatili e
dei computer embedded.
L’avvento di tali cambiamenti ha portato a delineare tre principali aree di
mercato per i sistemi di elaborazione, ognuna caratterizzata da diversi campi di
applicazione, requisiti e tecnologie impiegate:

• Desktop computers;
• Servers;
• Embedded computers;

1.1 Desktop computers


I desktop computer sono la classe di elaboratori che interessa la porzione più
vasta del mercato. Tale classe comprende:
• Personal computer (PC). Sistemi più economici e di più basso profilo,
tipicamente del costo inferiore alle migliaia di dollari.
• Workstation. Sistemi di elaborazione più sofisticati e costosi, i cui costi
tipici si attestano sulle migliaia di dollari.
Il mercato degli elaboratori di tipo desktop è tipicamente rivolto verso l’ot-
timizzazione del rapporto prezzo-prestazioni, queste ultime espresse sia in ter-
mini computazionali che grafici. Tali sistemi inoltre, essendo di norma fruiti
da un unico utente alla volta, non necessitano di particolari meccanismi di
assegnazione delle risorse e di virtualizzazione.

1.2 Servers
I server sono una classe di elaboratori, la cui diffusione è stata particolarmente
agevolata dall’avvento del Web, sviluppati per fornire servizi computazionali o
di memorizzazione su larga scala. Tali sistemi di elaborazione sono tipicamente
organizzati in data center ed interconnessi agli utenti per mezzo di reti. Un gran
numero di utenti usufruisce dei servizi offerti dai server nello stesso momento.
Per i server si identificano diverse caratteristiche chiave:
• Disponibilità. Rappresenta il parametro critico per tali sistemi di elab-
orazione. I server devono essere in grado di fornire i propri servizi in
maniera continuativa. A lunghi periodi di mancata erogazione del servizio
corrispondono perdite economiche considerevoli, pertanto in caso di guast,
bisogna fare in modo che la durata del disservizio sia la più limitata pos-
sibile, ad esempio replicando o distribuendo dati e funzionalità offerte su
più macchine.
• Scalabilità. I sistemi server devono essere in grado di crescere in funzione
di:

1
– Incremento della domanda per i servizi offerti;
– Richieste di ampliamento delle funzionalità fornite;

• Throughput. I sistemi server devono essere in grado di gestire un gran


numero di richieste al secondo. Devono per cui essere progettati in mo-
do da risultare efficienti in termini di transazioni/operazioni effettuate
complessivamente per unità di tempo.
• Dissipazione dell’energia. La potenza dissipata in calore è un parametro
che sta diventando sempre più rilevante nella progettazione dei moderni
sistemi server. Una parte considerevole dei costi di gestione di tali sistemi
è dovuta alla dissipazione di energia che pertanto deve essere mantenuta
la più limitata possibile.
Particolarmente importante per i server è anche il concetto di virtualizazzione.
Essendo tali calcolatori usufruiti contemporaneamente da una molteplicità di
utenti, occorre implementare adeguati meccanismi di mascheramento e asseg-
nazione delle risorse per fare in modo le richieste di servizio formulate da più
utenti non interferiscano le une con le altre e vengano trattare in maniera
paritaria.

1.3 Embedded computers


I sistemi embedded costituisticono l’area di mercato di più rapido sviluppo.
Essa comprende tutti quegli elaboratori special-purpose (dedicati), inclusi in
una grande varietà di prodotti commerciali.
Tali sistemi presentano una grande varietà di architetture, costi e prestazioni
a seconda dell’utilizzo per cui sono destinati: si spazia dai sistemi embedded
basati su microprocessori a 8-16 bit per le applicazioni più semplici a quelli basati
su processori di alto profilo come quelli inclusi nelle console per videogiochi di
ultima generazione.
Le caratteristiche che molto spesso sono richieste a tali sistemi sono:

• Costo contenuto: il prezzo è il fattore chiave nella progettazione di


tali sistemi. Ciò è particolarmente vero per quelle applicazioni embedded
utilizzate per fornire automazioni di intelligenza contenuta all’interno di
prodotti commerciali. Il costo di tali sistemi deve essere quello minimo
possibile per il quale i requisiti di performance sono rispettati, in modo
da non far lievitare eccessivamente il costo del prodotto complessivo.
• Minimizzazione della memoria: in molte applicazioni embedded la
memoria costituisce la parte preponderante del costo. In tali casi si rende
necessario ottimizzarne le dimensioni.

• Minimizzazione del consumo di potenza: nel progetto di molti siste-


mi embedded si deve porre particolare attenzione al consumo di potenza,
sia a causa di particolari vincoli di surriscaldamento dei componenti (as-
senza di ventole, package poco isolante, ecc) sia per aumentare il tempo
di vita delle batterie.

2
• Risposta in tempo reale: spesso i requisiti prestazionali richiesti ad
un sistema embedded riguardano la risposta in tempo reale di tale sis-
tema. Molte applicazioni embedded infatti devono operare in modo tale
da rispettare determinati vincoli temporali di esecuzione.

1.4 Supercomputer
Un’altra classe di elaboratori, sebbene non comparabile in termini di area di
mercato alle precedenti, è quella dei supercomputer. Si tratta di macchine di
grande potenza e costo, spesso presenti il laboratori di ricerca o centri di svilup-
po, costituite da decine di migliaia di processori. Sono sistemi di elaborazione
costruiti e cablati ad hoc, su cui girano sistemi operativi dedicati e che richiedono
una gestione molto complessa.