Tanenbaum contra Torvalds: el origen de un debate histórico

​Coordinador General del Centro Nacional de Cálculo / Ing. Andrés Falcón García
Accede a la nota en formato de audio

Una discusión entre dos especialistas en sistemas operativos puso sobre la mesa una pregunta que sigue vigente: ¿qué es más importante al crear tecnología, tener un diseño ideal o desarrollar algo que funcione y pueda mejorar con el tiempo?

El 29 de enero de 1992, un mensaje publicado en un foro de Internet llamó la atención de la comunidad informática. Su título era contundente: «LINUX is obsolete» (Linux está obsoleto). Lo había escrito Andrew S. Tanenbaum, profesor e investigador especializado en sistemas operativos. Su crítica estaba dirigida a Linus Torvalds, un estudiante finlandés de 22 años que había comenzado a desarrollar Linux.

Para entender el origen de esta discusión hay que conocer a sus protagonistas. En 1987, Tanenbaum creó MINIX, un sistema operativo diseñado para enseñar a sus estudiantes cómo funciona el software que permite operar una computadora. Años después, Torvalds utilizó MINIX en su propia computadora, pero decidió crear un sistema que se adaptara mejor a sus necesidades. En agosto de 1991 compartió sus avances en Internet y así comenzó el desarrollo de Linux.

Dos formas de entender un sistema operativo

El desacuerdo surgió por la manera en que ambos consideraban que debía construirse el núcleo de un sistema operativo.

Tanenbaum contra Torvalds: el origen de un debate histórico

El núcleo, también conocido como kernel, es la parte central que administra los recursos de una computadora y permite que el hardware y los programas trabajen juntos.

Linux utilizaba un diseño llamado monolítico, en el que buena parte de las funciones principales del sistema se ejecutan dentro del mismo núcleo. Tanenbaum, en cambio, defendía el modelo de microkernel, que mantiene el núcleo más pequeño y distribuye otras funciones en programas separados.

Para el profesor, el segundo modelo ofrecía una estructura más organizada y facilitaba el mantenimiento del sistema. También cuestionó que Linux estuviera diseñado inicialmente para procesadores Intel 386, pues consideraba que limitarlo a ese tipo de equipos reducía sus posibilidades.

Torvalds respondió que, aunque el modelo de microkernel tenía ventajas, su propuesta era práctica, funcionaba y podía seguir mejorando. También defendió que Linux estuviera disponible para que otras personas pudieran utilizarlo, modificarlo y compartir sus avances.

Un debate que trascendió Internet

La discusión continuó durante varios mensajes y dejó en evidencia que no existía una única manera de desarrollar un sistema operativo. Con el paso del tiempo, Linux creció gracias a la colaboración de programadores de distintos países. Su código abierto permitió que comunidades y empresas lo adaptaran a diferentes necesidades.

Actualmente, Linux está presente en servidores, supercomputadoras y dispositivos móviles mediante sistemas como Android. Por su parte, los microkernels también encontraron aplicaciones importantes: sistemas como QNX se utilizan en sectores donde la estabilidad y la respuesta confiable son fundamentales, como el automotriz.

Al final, el debate no tuvo un ganador absoluto. La trayectoria de Linux mostró el alcance que podía tener un proyecto abierto y colaborativo, mientras que las ideas defendidas por Tanenbaum continuaron influyendo en el diseño de otros sistemas.

Esta discusión dejó una enseñanza que sigue vigente en el desarrollo de las Tecnologías de la Información y la Comunicación: las soluciones tecnológicas no dependen únicamente de cómo están diseñadas, sino también de su utilidad, capacidad de adaptación y posibilidades de mejora. A veces, las ideas más valiosas surgen precisamente cuando distintas perspectivas se encuentran y se ponen a prueba.

Fuente: debate público «LINUX is obsolete», comp.os.minix (enero–febrero de 1992); recopilado en DiBona, Ockman y Stone (eds.), Open Sources: Voices from the Open Source Revolution, O'Reilly, 1999.