Basado en Modern Operating Systems (Andrew S. Tanenbaum y Herbert Bos).
Un sistema operativo es la capa de software que se sitúa entre el hardware y los programas de usuario. Tanenbaum lo describe desde dos perspectivas complementarias:
El hardware ofrece al menos dos modos de ejecución. En modo kernel el código tiene acceso completo a todas las instrucciones y al hardware; en modo usuario sólo a un subconjunto. El sistema operativo es, en sentido estricto, la parte que corre en modo kernel. Ver Sistemas Operativos/Kernel.
| Generación | Época | Tecnología | Característica |
|---|---|---|---|
| 1ª | 1945–55 | Tubos de vacío | Sin SO, programación en tableros |
| 2ª | 1955–65 | Transistores | Sistemas por lotes (batch) |
| 3ª | 1965–80 | Circuitos integrados | Multiprogramación, tiempo compartido (MULTICS, UNIX) |
| 4ª | 1980– | Computadoras personales | GUI, MS-DOS, Windows, Linux, macOS |
| 5ª | 1990– | Dispositivos móviles | Android, iOS |