Punto di Vista 

Tecnologie emergenti

Emanuele Bruno 
 
 
Chi come me ha avuto la possibilità di seguire l'informatica da diversi anni, si rende conto di quanto diventi difficile fare un punto della situazione sul continuo divenire del panorama informatico. La vita media di un computer, che si calcola considerando il tempo intercorre tra l'annuncio di una nuova tecnologia e la sua reale disponibilità sul mercato, si è ridotta a pochi mesi, senza dimenticare quanto le software house possano contribuire a questo fenomeno;

Queste strategie di mercato, chiaramente orientate ai produttori, servono spesso e volentieri a disorientare gli utenti finali ed in alcuni casi contribuiscono alla nascita di aspre polemiche. Quante volte dall'annuncio di una tecnologia innovativa non è subito nata la domanda:<<...Ma OS/2 supporterà la tecnologia X?>>. Ecco che allora si accendono gli animi, e scoppiano i tumulti nei newsgroup, nelle mailing-list e nelle aree fidonet, anche perché il più delle volte la domanda è pretestuosa poiché viene fatta da chi una risposta l'ha già o crede in qualche modo di conoscerla grazie all'amico (disinformato), alla rivista (di parte), ecc.

Purtroppo nessuno parla delle tecnologie software, cioè di quelle che fanno veramente la storia. Ricordo una volta durante una lezione di Sistemi I, il docente portò un esempio riguardo il tempo di calcolo necessario per 2 computer di ordinare 1 milione di numeri. Il primo computer utilizzava una CPU molto lenta, il programmatore a cui era stato affidato il PC era alle prime armi, ma in compenso l'algoritmo da lui usato era molto efficiente; il secondo computer era dotato di una CPU estremamente veloce (100 volte di più), il programmatore a cui era stata affidata la macchina era molto esperto, e avrebbe scritto l'algoritmo in assembler; in compenso l'algoritmo da lui usato sarebbe stato un pò meno raffinato. Il risultato fu; che il supercalcolatore impiegò 5 ore e mezzo contro i 16 minuti del povero personal computer per ottenere la medesima risposta (v.Introduzione agli algoritmi, vol.I, T.H.Cormen, pag.15). Per me quella lezione fu sconcertante dato che fino ad allora avevo dato più importanza alla scelta del linguaggio con cui sviluppare  i miei programmi che alla progettazione o alla scelta di un algoritmo più adeguato. 

Quello a cui voglio arrivare è che la IBM fino ad oggi ha svolto un ottimo lavoro nel campo della ricerca e dello sviluppo di nuove tecnologie hardware e software, ed il nostro caro e affezionatissimo OS/2 ne è un esempio lampante... Ma partiamo dall'inizio!

Forse non tutti sanno che quando alla fine degli anni '70 il più dei supercalcolatori utilizzavano un sistema operativo U*NIX, e la INTEL si concentrava nello sviluppo di quel processore che tanto avrebbe fatto la storia (la famiglia 80x86), parte dello staff della IBM era impegnato nello studio di un nuovo sistema operativo multitasking single-user. Chiaramente i tempi stavano cambiando ed alcuni l'avevano già intuito: la potenza di calcolo dei piccoli calcolatori stava crescendo sempre più ed il loro prezzo era sempre più alla portata dell'utente comune. Lo scotto da pagare, se così lo possiamo chiamare, era che mentre i terminali stupidi di un grande mainframe erano tutti collegati in rete, i piccoli personal computer giacevano isolati gli uni dagli altri. Nel grande progetto della IBM vi fu inizialmente l'intenzione di creare un sistema multitasking completamente innovativo, migliorando ciò che di già c'era; e ci riuscirono! Oltre che multitasking, OS/2 era anche multithreading, una prerogativa che neanche i sistemi U*NIX e MACINT*SH vantavano a quel tempo. La seconda innovazione tecnologica che questo sistema operativo portò all'utente finale fu una robusta gestione degli archivi (HPFS), quando ancora la maggior parte dei sistemi DOS utilizzava quella precaria ed antiquata FAT (ad onor di cronaca l'HPFS nacque grazie e soprattutto alla MICROSOFT, quando ai tempi lavorava con la IBM). La terza innovazione tecnologica fu senz'altro la Work Place Shell (che chiamo sempre scherzosamente 'la metafora della vita', che comparve per la prima volta con la release 2.0 di questo sistema). Nel frattempo con la versione precedente del sistema operativo, la IBM aveva integrato in una delle sue linee di prodotti anche i protocolli di rete, questo perché all'orizzonte si aveva abbastanza chiara l'idea che il computer, oltre ad essere uno strumento di produttività personale, quanto prima sarebbe tornato in 'RETE' (e questo accadde molto prima dell'uscita di Windows 3.11 for WorkGroup). Ecco che allora con la versione 3.0 di questo fantastico prodotto l'utente si ritrovò un software assolutamente innovativo che incorporava tutto ciò occorresse per il collegamento ad Internet, seguito a breve distanza da una versione, chiamata 'Warp Connect', che integrava i protocolli per una rete di tipo Intranet. Senza andare troppo lontani vorrei aggiungere ancora qualcosa: quando la maggior parte dei sistemi operativi non conosceva le istruzioni a 32 bit e non faceva uso delle nuove istruzioni dei microprocessori 80286 e 80386, a quel tempo il sistema OS/2 fu il primo ad avvantagiarsene, tanto ne é che aveva una gestione della memoria molto robusta ed efficiente (la memoria non veniva segmentata come accadeva nel DOS e Windows per accedere alle aree di memoria superiore al primo megabyte) e poteva aprire più sessioni DOS in multitasking persino su un 286.

Oggi questo sistema operativo è un monolite di tecnologia, tanto sofisticato che per l'IBM è stato davvero oneroso il prezzo da pagare per convertire le molte linee di istruzioni in  assembler del kernel di OS/2 nella versione per i microprocessori PowerPC (motivo per cui OS/2 è oggi il sistema operativo più veloce su piattaforma INTEL). E voi pensate che una nuova tecnologia hardware, persino 100 volte più potente, unita ad un sistema operativo capace di supportarla, sia sufficiente per avere un sistema più efficente di quanto lo possa essere in nostro caro e affezionato sistema operativo OS/2 Warp?

[Pagina precedente] [Sommario] [Pagina successiva]