jueves, octubre 10, 2024
spot_img
InicioLinux«Linux está obsoleto», la historia detrás de la declaración que provocó el...

«Linux está obsoleto», la historia detrás de la declaración que provocó el debate más apasionante acerca de este sistema operativo

¿Te gustaría aprender Programación, Desarrollo Web, Análisis de Datos, Python y mucho más? Aquí hay cursos desde cero sobre estos temas, que incluyen certificados, soporte y una gran comunidad. 😎 👉 Ver lista de cursos.
«Linux está obsoleto», la historia detrás de la declaración que provocó el debate más apasionante acerca de este sistema operativo- Azul Web

¿Quién fue la persona que sentencio tan crudamente el futuro de Linux? Por supuesto no es ningún aficionado ni nadie del montón. Sin duda Andrew S. Tanenbaum, el creador de Minix, eligió esas palabras para titular el artículo que publicó en el grupo de discusión comp.os.minix de Usenet solo unos meses después del lanzamiento de la primera versión del sistema operativo ideado originalmente por Linus Torvalds. Su crítica, como era de esperar, empezó a recibir muchos comentarios.

Un día después Torvalds publicó en el mismo foro una respuesta que pretendía echar abajo las críticas de Tanenbaum. La razón por la que el principal instigador de Linux se tomó tan en serio esa crítica en particular al núcleo de su sistema operativo era que su propia creación estaba clara y profundamente influenciada por Minix, que, a su vez, estaba basado en Unix. Aquel primer intercambio de opiniones dio lugar a un interesantísimo debate que se ha prolongado durante años, y que ha llegado hasta nuestros días como «el debate Tanenbaum-Torvalds».

Pinceladas de Tanenbaum y su sistema operativo

Andrew S. Tanenbaum no es tan popular como Linus Torvalds, por lo que merece la pena que detenernos un poco para saber un poco más de él. Aunque se graduó en Física en el prestigioso Instituto Tecnológico de Massachusetts (MIT), y se doctoró en astrofísica en Berkeley, Tanenbaum no tardó en apasionarse por la informática en general, y por el diseño de sistemas operativos en particular.

Nació en Nueva York, y pasó su infancia en White Plains, una localidad muy cercana a la urbe de los rascacielos de la que, curiosamente, también procede Mark Zuckerberg, el creador de Facebook. Sin embargo, la mayor parte de su carrera profesional ha discurrido en la Universidad Libre de Ámsterdam, en la que durante décadas ha dado clase de informática. Su trabajo como docente propició que publicase varios libros de texto dedicados a los sistemas operativos, los sistemas distribuidos y las redes. Y, además, también le llevó a escribir con un propósito educativo el código fuente de Minix.

«Linux está obsoleto», la historia detrás de la declaración que provocó el debate más apasionante acerca de este sistema operativo- Azul Web

Los libros de Tanenbaum están considerados unánimemente auténticas obras de referencia, y se utilizan en las facultades de informática de todo el mundo para explicar la arquitectura y el diseño de los sistemas operativos. De hecho, al menos uno de ellos, el titulado ‘Sistemas operativos: diseño e implementación’, contiene un apéndice con el código fuente completo de una de las primeras versiones del núcleo de Minix para que pueda ser consultado por los estudiantes de informática interesados en el diseño de sistemas operativos.

Linus Torvalds nunca ha ocultado lo mucho que le inspiraron tanto el libro de Tanenbaum que acabo de mencionar como Minix. En ‘Just for Fun: The Story of an Accidental Revolutionary’, la autobiografía que publicó en 2001, lo reconoce con la claridad que requiere algo que es evidente. Sin embargo, aunque la influencia de Minix en Linux es muy profunda, Torvalds no respetó a pies juntillas la arquitectura propuesta por Tanenbaum.

En vez de limitarse a crear un clon de Minix optó por desviarse en algunos apartados esenciales, y una de estas decisiones, precisamente, propició el conflicto que nació cuando a principios de 1992 Tanenbaum publicó su famosa crítica en el grupo de discusión comp.os.minix de Usenet.

Micronúcleo o núcleo monolítico, esa es la cuestión

Aquel primer artículo crítico de Tanenbaum fue respondido inmediatamente con otro de similar contundencia por Torvalds, lo que inició una discusión estrictamente técnica en la que ambos diseñadores abordaron múltiples discrepancias acerca de cuál era la forma más eficiente de implementar algunos de los componentes del núcleo de un sistema operativo. No obstante, la característica del núcleo de Linux más criticada por Tanenbaum fue su concepción como núcleo monolítico.

El creador de Minix defendía, y nada parece invitarnos a pensar que haya cambiado de opinión, que los micronúcleos son superiores, entre otras razones, debido a su mayor portabilidad, entendida como la capacidad de ser adaptados a una arquitectura diferente a la de aquella CPU para la que fueron inicialmente diseñados. Torvalds, sin embargo, defendió su decisión argumentando que aunque el diseño monolítico de Linux podía hacerlo menos adaptable a otras arquitecturas que Minix, la interfaz de programación de aplicaciones que había puesto a punto compensaba esa desventaja y, en la práctica, hacía a Linux más portable que Minix.

El tono de los artículos con los que se respondían Torvalds y Tanenbaum fue respetuoso, pero poco a poco sus respuestas fueron incrementando su complejidad para desmenuzar las peculiaridades técnicas a las que cada uno de ellos recurrió para reforzar sus argumentos. Curiosamente, otros usuarios de Usenet, sobre todo los que estaban involucrados en el desarrollo del núcleo de Linux, se sumaron a la discusión para arrimar su hombro al de Torvalds.

«Linux está obsoleto», la historia detrás de la declaración que provocó el debate más apasionante acerca de este sistema operativo- Azul Web

Explicar las diferencias que existen entre un sistema operativo con núcleo monolítico, como Linux, y otro con una estructura de micronúcleo, como Minix.

Esta es la forma en la que Tanenbaum explica en uno de sus artículos publicados en Usenet las diferencias existentes entre estos núcleos.

«La mayor parte de los sistemas operativos antiguos es monolítica, por lo que el sistema operativo al completo es un único archivo que se ejecuta en modo supervisor (también conocido como modo kernel). Este fichero binario contiene el gestor de procesos, el administrador de memoria, el sistema de ficheros y todo lo demás. Unix, MS-DOS, VMS, MVS, OS/360, Multics y muchos otros sistemas operativos utilizan esta arquitectura», explica Tanenbaum.

«La alternativa es un sistema basado en micronúcleos, de manera que la mayor parte del sistema operativo se ejecuta como procesos independientes, muchos de ellos fuera del núcleo. Estos procesos se comunican mediante mensajes. La función del núcleo es administrar este intercambio de mensajes, gestionar las interrupciones, supervisar los procesos de bajo nivel y la entrada/salida. Algunos ejemplos de este diseño son los sistemas operativos RC4000, Amoeba, Chorus, Mach o Windows NT».

Torvalds y Tanenbaum han asegurado en muchas ocasiones que su relación es amistosa, y que sus diferencias acerca de la forma en que debe ser implementado un sistema operativo solo se apoyan en aspectos técnicos. En ningún caso deben ser contempladas como una disputa personal. Es evidente que debe ser así.

Casi tres décadas después de aquel primer artículo crítico de Tanenbaum Linux mantiene un estado de forma fantástico, lo que demuestra que Torvalds y sus colaboradores no lo han hecho en absoluto mal. Curiosamente, de vez en cuando alguna declaración inesperada de cualquiera de los dos reaviva una discusión que posiblemente seguirá coleando mientras a ambos les queden ganas de debatir. Sin duda, es una oportunidad perfecta para que las personas interesadas en los sistemas operativos sigamos aprendiendo de ellos.

¿Sabías que este sitio web no incluye anuncios gracias a Azul School? Es nuestra comunidad de aprendizaje, donde puedes acceder a una gran variedad de cursos de tecnología. Haz clic aquí para conocerla.


Ernesto Mota
Ernesto Mota
Nací en el d.f., sigo siendo defeño, hoy radico en la hermosa ciudad de Cuernavaca, Morelos, soy Ing. en Sistemas computacionales, con un posgrado en Tecnologías de información, Doctorando en ambientes virtuales de aprendizaje y realidad aumentada, Tecnólogo es mi categoría laboral, y mi linea de investigación es la realidad aumentada aplicada a nuevos entornos de aprendizaje.
RELATED ARTICLES

Most Popular

Recent Comments

×