Prima di procedere oltre diamo una rapida occhiata alla storia
dei sistemi operativi, esaminando in che modo si è giunti allo stato
attuale attraverso un graduale processo di astrazione che ha reso
le scelte progettuali dei sistemi operativi indipendenti dalle caratteristiche
della macchina.
Si ritiene che il primo prototipo di calcolatore digitale si debba
allinglese Charles Babbage, che intorno alla metà dellOttocento
progettò la macchina analitica, un apparecchio meccanico
che egli non potè mai vedere realizzato a causa dellimpossibilità
tecnologica di allora di realizzare gli ingranaggi e le parti meccaniche
richieste con la dovuta precisione.
Da allora fino alla seconda guerra mondiale furono fatti pochissimi
progessi nella realizzazione di calcolatori digitali.
Occorre attendere il 1945 per vedere comparire la prima generazione
di calcolatori automatici, quando vari professori universitari e
studiosi inglesi e americani (tra cui von Neumann) riuscirono a
costrire delle enormi macchine di calcolo usando delle valvole elettroniche.
Questi apparecchi avevano dimensioni tali da riempire intere stanze
e una velocità di calcolo a dir poco modesta in confronto al più
scarso degli attuali personal computer.
Allora era lo stesso gruppo di persone ad occuparsi della progettazione,
costruzione, programmazione e manutenzione di ogni macchina.
La programmazione era fatta esclusivamente in linguaggio macchina,
ossia secondo codici binari direttamente eseguiti dal processore,
ed era realizzata per mezzo di una serie di spinotti inseriti su
particolari schede adibite al controllo delle più elementari funzioni
della macchina.
I linguaggi di programmazione, compreso lassembler, erano
sconosciuti e di sistema operativo nemmeno si parlava.
Quasi tutte le applicazioni erano semplici calcoli numerici, come
produzioni di tabelle di seni e coseni.
Fino alla metà degli anni 50 lunico progresso riguardò la
possibilità di scrivere i programmi su schede perforate,
che potevano essere lette direttamente dal calcolatore, anziché
usare gli spinotti.
A cambiare radicalmente la situazione intervenne lintroduzione
dei transistor, che accrebbero laffidabilità dei calcolatori
così da renderne possibile la commercializzazione: entra in scena
la seconda generazione dei calcolatori digitali.
Cominciarono allora a delinearsi dei profili professionali distinti
tra progettisti, costruttori, operatori, programmatori e tecnici
della manutenzione.
Questi primi sistemi, molto costosi, furono detti sistemi batch
o sistemi di elaborazione a lotti e funzionavano nel seguente
modo.
I calcoli che dovevano essere eseguiti dal computer erano memorizzati
in un job, che poteva essere un singolo programma o un insieme
di programmi.
Un piccolo calcolatore (relativamente) poco costoso (tipicamente
lIBM 1401) leggeva le schede perforate sulle quali erano memorizzati
i job e li trasferiva su un nastro magnetico.
Quando il nastro aveva raccolto un lotto (batch) di lavoro, veniva
riavvolto e inserito in un calcolatore più potente (prevalentemente
lIBM 7094), dotato dellantenato degli attuali sistemi
operativi, lIBSYS.
Questo si occupava di leggere in sequenza i vari job e di eseguirli
uno dopo laltro memorizzando i risultati su un secondo nastro
magnetico.
Una volta completato il lotto, venivano rimossi i nastri dingresso
e di uscita, riavvolti, e il nastro di uscita veniva inserito in
un altro IBM 1401 per stampare i dati ottenuti dallelaborazione.
Tramite lutilizzo dei nastri dingresso e di uscita,
veniva realizzata una primordiale forma di concorrenza,
potendo eseguire lelaborazione dei lotti contemporaneamente
alla memorizzazione del lotto successivo e alla stampa dei risultati
di quello precedente.
Questa tecnica era detta spooling (dal termine inglese Simultaneous
Operation On Line).
Essenzialmente i calcolatori della seconda generazione furono usati
per eseguire calcoli scientifici e ingegneristici, anche perché
il loro costo poteva essere sostenuto solo da grosse compagnie,
dalle agenzie governative e dalle università.
Furono programmati in FORTRAN e in linguaggio assembler.
Accanto allIBSYS un sistema operativo tipico di quegli anni
era il FMS (Fortran Monitor System).
Torna all'indice Generale del corso di Corso di Sistemi Operativi di Software Planet