En 1969, Ken Thompson y Dennis Ritchie trabajaban en Bell Labs en un sistema operativo experimental para el PDP-7, un minicomputador de Digital Equipment Corporation. Lo que construyeron se llamaría Unix, y de él descenderían directa o indirectamente casi todos los sistemas operativos que usamos hoy.
El primer Unix estaba escrito en ensamblador. Era pequeño, experimental, y no estaba pensado para salir de Bell Labs. Pero funcionaba, y lo que es más importante, tenía una filosofía clara: todo es un archivo, los programas hacen una sola cosa (y la hacen bien), y los procesos se comunican a través de texto plano.
Esa filosofía tenía consecuencias prácticas. Si ls devuelve texto, grep filtra y
sort ordena, entonces ls | grep | sort funciona sin que nadie haya tenido que diseñar
la integración. El pipe no es una característica del sistema: es la consecuencia natural
de que todo habla el mismo lenguaje.
En 1973, Ritchie reescribió Unix en C, un lenguaje que él mismo había diseñado para eso. Fue la primera vez que un sistema operativo se escribía en un lenguaje de alto nivel. La consecuencia fue que Unix podía portarse a otras máquinas reescribiendo solo una parte pequeña. Antes de eso, cada sistema operativo era inseparable de la máquina para la que se había escrito.
Bell Labs distribuyó Unix a universidades a lo largo de los años 70. Las universidades lo estudiaron, lo modificaron y lo redistribuyeron. Berkeley sacó BSD. El MIT construyó encima. Richard Stallman, que usaba Unix en el MIT, decidió en 1983 que el mundo necesitaba una versión libre de Unix y creó GNU. Linus Torvalds, que quería Unix en su PC, en 1991 escribió el kernel que completaría el sistema que Stallman había empezado: Linux.
Todo eso arrancó en 1969 en un PDP-7 en Murray Hill, Nueva Jersey.