Este documento describe las generaciones de sistemas operativos, incluyendo los primeros sistemas multiprogramados que permitían la ejecución concurrente de varios programas aprovechando mejor los recursos. También describe sistemas pioneros como Multics y Unix desarrollados en los años 60 y 70, y los inconvenientes de los primeros sistemas como su complejidad, alto costo y gran consumo de recursos. Finalmente, explica cómo los nuevos sistemas buscaban solventar estos problemas interponiendo capas de software que ocultaran los detalles del hardware al usuario