La storia dei Sistemi Operativi

14 Ottobre 2010 1 di Elvio

La storia dei Sistemi Operativi procede fianco a fianco con la storia del personal computer e, più in generale, con la storia dell’informatica.
Un Sistema Operativo è un software che fornisce all’utente una serie di comandi e servizi per gestire un elaboratore elettronico (che da qui in poi chiameremo SO). I SO si occupano anche di rappresentare le informazioni elaborate dal computer in un modo più facilmente comprensibile dall’uomo.

La preistoria dell’informatica inizia tra il 1945 e il 1955 quando i primi elaboratori elettronici erano solo ammassi di valvole termoioniche ed occupavano intere stanze. Erano molto lenti, inaffidabili e molto costosi e potevano permetterseli soltanto grossi centri di calcolo o università. In questo periodo non esisteva ancora il concetto di SO e il programma da eseguire veniva inserito ad ogni esecuzione attraverso dei primitivi lettori di schede perforate in codice binario; dopo alcune ore il risultato veniva inviato ad una stampante.

Tra il 1955 e il 1965, con l’invenzione del transistor, gli elaboratori divennero abbastanza affidabili tanto da poter essere costruiti e venduti in serie, anche se erano macchine grosse e costosissime e gli unici acquirenti possibili erano sempre i centri di calcolo, le università e le banche. Per eseguire dei programmi, un programmatore doveva scrivere il proprio programma su carta, trasferirlo su schede, caricarlo nel computer, attendere il termine dell’esecuzione e la stampa del risultato. Tale operazione era molto dispendiosa in termini di tempo e non permetteva di sfruttare completamente la macchina (durante le lunghe fasi di caricamento dei dati e dei programmi).
Per ovviare a questo problema si pensò di impiegare più macchine contemporaneamente in modo da dividere il lavoro: una macchina caricava il programma, una eseguiva il calcolo e una terza che ne stampava i risultati.

Nascita dei primi Sistemi Operativi

Per gestire questo tipo di struttura si cominciarono a studiare i primi SO. Il loro compito era quello di gestire il caricamento dei dati, interpretare i comandi contenuti nei dati caricati e controllare l’esecuzione di tutti i programmi di calcolo. I sistemi operativi tipici del tempo e adatti per questo genere di elaboratori (quasi sempre programmati in Fortran e in Assembler) erano il FMS (Fortran Monitor System) e l’IBSYS Della IBM).
A quei tempi, per poter fare uso di certe macchine, servivano dei veri guru o persone altamente esperte e specializzate che sapevano tutto sulla macchina e sulle periferiche sulle quali lavoravano.

Dall’inizio del 1960 però si cominciò a pensare a dei sistemi in grado di semplificare l’utilizzo degli eleboratori.
Si cominciò con l’introduzione del concetto di periferica virtuale (dove il SO avrebbe fatto da intermediario tra utente e periferica), poi la multiprogrammazione (per prima implementata dalla IBM nei sistemi Ibm System/360 con l’OS/360 nel 1964) che rendeva possibile la presenza di più programmi contemporanei in memoria.

Con questi nuovi SO l’uso delle risorse disponibili era abbastanza ottimizzato, ma non lo sviluppo dei programmi: il tempo che intercorreva tra il caricamento dei programmi e la disponibilità dei risultati era anche di alcune ore, per cui anche un piccolo errore, poteva far perdere al programmatore un sacco di tempo.