Quando si parla di mainframe ci si riferisce a un computer utilizzato principalmente da grandi aziende e organizzazioni governative per operazioni critiche e analisi di grandi quantità di dati. Questa tipologia di macchine è infatti utilizzata nell'analisi dei dati demografici dei censimenti, delle transazioni finanziarie, nei sistemi di stampa delle banconote e molto altro ancora.
Originariamente il termine si riferiva ai grandi armadi (detti main frames, ovvero “struttura principale”) dentro i quali venivano sistemati i processori e le memorie di lavoro dei primi computer.
Negli ultimi anni, però, si sta assistendo a un vero e proprio cambiamento semantico: il termine mainframe viene utilizzato sempre più spesso per descrivere uno stile operativo piuttosto che una macchina in particolare. Molte aziende, come segnala IBM, hanno iniziato ad abusare della parola server, riferendosi con questo termine a qualsiasi tipo di computer – grande o piccolo che sia – utilizzato a scopi commerciali. In questa ottica, il mainframe è solamente la tipologia di server più grande in uso in una determinata azienda o organizzazione. Sempre IBM, ad esempio, utilizza il termine mainframe per riferirsi alla linea di server System Z9, definendo questa tipologia di computer come macchine che possono supportare simultaneamente l'esecuzione di migliaia di programmi, la gestione di diverse centinaia di dispositivi di input e output e servire migliaia di diversi utenti.
La storia del mainframe
L'intero percorso storico dei mainframe è caratterizzato da un unico comune denominatore: l'IBM. Sin dalla metà degli anni '50, Big Blue ha fatto parte del ristretto novero di aziende produttrici di questa tipologia di computer. Nei primi venti anni di produzione, questo gruppo era chiamato 'IBM e i sette nani' (dovuto al fatto che Burroughs, Control Data, General Electric, Honeywell, NCR, RCA e UNIVAC tentavano di scalfire il dominio IBM); successivamente si parlò di 'IBM and the BUNCH', quasi fossero un gruppo musicale (dove BUNCH è acronimo di Burroughs, UNIVAC, NCR, Control Data e Honeywell). Tra i primi mainframe di successo, però, troviamo l'Olivetti Elea 9003, primo ad essere interamente realizzato con la tecnologia diode-transistor.
Con la serie 700/7000, però, IBM rafforzò ulteriormente la sua posizione di dominio sul mercato, relegando le altre produttrici al ruolo di semplici comparse. Il successivo step evolutivo (la serie S/360) finì con “l'uccidere” definitivamente la concorrenza. Allo stesso tempo, però, i mainframe si trovarono ad attraversare una profonda “crisi d'identità”. Lo sviluppo dell'architettura microcomputerizzata, infatti, permetteva di progettare e realizzare dispositivi più economici, meno ingombranti e dalle prestazioni simili. La crisi si accentuò ad inizio anni '90 ed alcuni analisti si affrettarono a predire la morte dei mainframe entro il 1996.
A fine decennio, invece, si assistette ad un'improvvisa quanto inattesa inversione di tendenza. Grazie alla maggiore diffusione di Linux e all'abbattimento dei costi delle connessioni web, i mainframe tornarono a nuova vita e vennero utilizzati soprattutto in ambito e-business. IBM riprese a investire nel settore mainframe e, a metà 2000, presentò una nuova serie dotata di processori a 64bit.
Le caratteristiche del mainframe
Grazie alla sua dotazione hardware, un singolo mainframe può svolgere il lavoro solitamente svolto da diverse decine di server o centinaia di computer casalinghi. Ogni singola macchina, infatti, può sopportare carichi di lavoro anche molto pesanti, simulando il funzionamento contemporaneo di dieci e più personal computer.
I mainframe sono stati progettati per gestire grossi volumi di dati provenienti da varie periferiche di input e output, massimizzando allo stesso tempo la capacità di calcolo (throughput computing) della macchina. Sin dai primissimi esemplari, i mainframe sono datati di hardware sussidiario (chiamato anche canali o processori periferici) il cui compito è di gestire il traffico dati da e verso le periferiche. In questo modo, l'unità centrale di calcolo (CPU o processore che dir si voglia) è libera di interfacciarsi e lavorare esclusivamente con la memoria RAM. In questo modo le prestazioni della macchina vengono massimizzate e la capacità di calcolo resta sempre a livelli ottimali.
Per quanto riguarda, invece, la parte software, i mainframe si contraddistinguono per un'architettura 'polifunzionale'. Grazie alla creazione di macchine virtuali, computer di questo genere possono ospitare sistemi operativi di ogni tipo, anche se negli ultimi anni Linux è la scelta predominante da parte dei gestori dei sistemi. Per quanto riguarda, invece, i linguaggi di programmazione utilizzati per realizzare applicazioni e software, COBOL non conosce rivali: secondo alcune statistiche, l'85% degli applicativi per mainframe è scritto utilizzando questo linguaggio di programmazione.