-
Anni '40, assenza di SO, "programmatore-operatore"
Inizialmente nel 1945-55, quando gli elaboratori elettronici erano costituiti da valvole termoioniche, occupavano intere stanze, erano lentissimi e costosissimi li potevano avere solo grossi centri di ricerca o Università.
Il programmatore inseriva il programma, scritto in linguaggio macchina, attraverso primitivi lettori e i risultati venivano inviati alla stampante. Un primo abbozzo di SO si è avuto con la messa a disposizione di tutti i programmatori dei sottoprogrammi di I/O. -
Anni '50, i primi Sistemi Operativi.
I primi calcolatori non disponevano di un vero e proprio sistema operativo. L'utente era anche il programmatore e si usava solamente il linguaggio macchina. I primi software si trovavano su schede di collegamento o schede perforate ed erano essenzialmente assemblatori, compilatori, linker e loader. -
1955-65, Seconda generazione.
A metà degli anni '50 il transistor andò a sostituire le valvole. In questi anni si introdusse la programmazione batch, che costituisce un primo rudimentale sistema operativo. L'idea era quella di usare delle schede di controllo per gestire la sequenza di programmi che andava eseguita sul calcolatore velocizzando così l'esecuzione. Inoltre si cercava di ridurre i tempi di setup raggruppando i programmi simili tra loro. -
dal 1980 ad oggi, la Quarta generazione.
Negli ultimi anni sono stati sviluppati anche sistemi operativi di rete e sistemi operativi distribuiti. In entrambi si ha una distribuzione delle elaborazioni su più processori ma, mentre nei primi l'utente è consapevole dell'esistenza di più nodi/calcolatori, nei secondi l'utente può lavorare come se il computer avesse un unico processore, anche se nella realtà si tratta di un sistema multiprocessore. -
NOV. 2015, Terza generazione.
Viene introdotta la multiprogrammazione: quando un processo è in attesa perché sta facendo un'operazione di I/O la CPU viene assegnata temporaneamente ad un altro processo in modo da evitare i tempi morti.
Inoltre, con l'introduzione degli hard disk, nacque anche una tecnica chiamata spooling.