Si existe alguien a quien debemos agradecer el hecho de escribir estas líneas usando un computador y compartirlas con ustedes a través de la web, en definitiva es a Dennis Ritchie, una de las figuras más influyentes en el desarrollo de software y pieza fundamental en el universo de la computación como lo conocemos. Es por esto que decidimos recordar el trabajo de este icónico personaje que lamentablemente pocos conocen.

Dennis MacAlistair Ritchie nació el 9 de Septiembre de 1941 en Bronxville, al norte de Manhattan, New York. Fue un científico y genio de la programación cuyo aporte marcó un ante y un después en el desarrollo de la tecnología ¿La razón? pues Ritchie fue nada más y nada menos que el creador del lenguaje de programación C y el sistema operativo UNIX, ambas tecnologías representan la base de los lenguajes de programación y los sistemas informáticos que conocemos.

UNIX y C de la mano de Ritchie y Ken Thompson

Dennis Ritchie se graduó en 1963 en la Universidad de Harvard con honores en física. En 1968, recibió un Doctorado de Investigación en matemáticas aplicadas. Este mismo año el informático ingresó en el equipo de desarrollo del sistema operativo Multics (Multiplexed Information and Computing Service), lo que podríamos decir fue la primera versión de UNIX.

En 1969, Ritchie trabajó junto a Ken Thompson en los laboratorios Bell de AT&T, donde unieron conocimientos para el desarrollo de UNIX, el padre de los sistemas operativos y el núcleo principal de todos los sistemas actualmente.

El genio quería desarrollar un sistema operativo multifuncional y abierto, al que todos tuviesen acceso y lo mejor de todo: que permitiera que todas las personas se comunicaran entre sí. Por su parte, Ken Thompson tenía acceso a las principales funciones de Multics y había desarrollado un sistema de paginación y un sistema de ficheros que no podía desaprovechar.

Thompson comenzó a implementar el sistema de archivos en papel (quizás el ‘sistema de archivos de tiza’ sería más preciso) que había sido diseñado anteriormente.

Un sistema de archivos sin una forma de ejercerlo es una propuesta estéril, por lo que procedió a desarrollarlo con los otros requisitos para un sistema operativo en funcionamiento, en particular la noción de procesos.

Thompson desarrolló el juego SpaceTravel en Multics que se llevó a FORTRAN que posteriormente se tradujo a lenguaje ensamblador de una máquina llamada PDP-7, este videojuego podría considerarse el que marcó el origen de UNIX y así lo describió Ritchie en su momento en estas líneas publicadas por el sitio people.fas.harvard:

También durante 1969, Thompson desarrolló el juego de ‘Space Travel’. Primero escrito en Multics, luego transliterado en Fortran para GECOS (el sistema operativo para GE, luego Honeywell, 635), fue nada menos que una simulación del movimiento de los cuerpos principales del Sistema Solar, con el jugador guiando una nave aquí y allá, observando el paisaje e intentando aterrizar en los diversos planetas y lunas.

Thompson no tardó mucho en encontrar una computadora PDP-7 poco usada con un excelente procesador de pantalla; todo el sistema se utilizó como terminal Graphic-II. Él y yo reescribimos Space Travel para correr en esta máquina. La empresa fue más ambiciosa de lo que parece;

 

Se trataba de un sistema con una serie de tareas que permitían copiar, imprimir, pegar, un sistema de archivos y la consola de comandos para ejecutar dichas instrucciones, consola conocida como ‘shell’.

Luego vino un pequeño conjunto de utilidades a nivel de usuario: los medios para copiar, imprimir, eliminar y editar archivos y, por supuesto, un simple intérprete de comandos (shell).

Hasta este momento, todos los programas fueron escritos usando GECOS y los archivos fueron transferidos al PDP-7 en cinta de papel; pero una vez que se completó un ensamblador, el sistema pudo sostenerse. Aunque no fue sino hasta 1970 cuando Brian Kernighan sugirió el nombre ‘Unix’, en un juego de palabras un tanto traicionero sobre ‘Multics’ y así fue como nació lo que conocemos hoy como UNIX.

Y a partir de UNIX también surgió el lenguaje C

Para explotar la potencia de UNIX se requería de un lenguaje de programación estable y de alto nivel, en este sentido Ritchie desarrolló C junto a Thompson. En 1972, la siguiente versión de UNIX fue portado a C, contra todo pronóstico y despidiéndose del lenguaje ensamblador.

myCompiler, un editor de código online para empezar a programar

Un lenguaje de programación robusto y portable permitía la facilidad de desarrollar instrucciones con solo escribir algunas líneas de código, algo que no ocurre con el lenguaje ensamblador.

De esta forma UNIX se convirtió en el padre del lenguaje C y el primer sistema operativo basado en un lenguaje diferente al ensamblador.

Esto marcó un antes y un después pues básicamente todos los lenguajes, la tecnologia actual está basada en lenguaje C, y de no ser por UNIX no existiría BSD, Solaris,o los kernels de los servidores basados en UNIX, tampoco existirían sistemas operativos como MacOS.

Lenguajes de programación como C++, Java, Python, Ruby, Perl, PHP, por mencioar algunos derivan de C. Actualmente todo el hardware el software y las nuevas tecnologías derivan de UNIX y el lenguaje de programación C.

Es por esto que Ritchie representa un papel fundamental en la historia de la computación y en la vida moderna, un genio que se juntó con otros genios como Ken Thompson para crear herramientas no para su presente, sino para mejorar el futuro.

Gracias a Thompson y a Dennis Ritchie por UNIX y por el Lenguaje C, herramientas que marcaron el origen de la tecnología moderna.

Más en TekCrispy