La mayoría de los fans de Linux conocen la historia del primer anuncio de la existencia de Linux, cuando Linus Torvalds escribió un mensaje, el 25 de agosto de 1991, al 'newsgroup' comp.os.minix, anunciando "a todos los que estáis ahí fuera usando MINIX: estoy creando un sistema operativo libre (solo como un hobby, no será grande y profesional como GNU)". En el mismo mensaje, precisaba que aunque MINIX y su nuevo sistema operativo "se parecen un poco", el suyo estaba libre de cualquier código usado por el primero.
Pero lo que mucha menos gente sabe es… ¿qué demonios es 'MINIX'?
Retrocedamos cuatro años, hasta 1987. Ese año, la editorial Prentice-Hall sacaba a la venta el libro "Sistemas operativos: diseño e implementación", que en los años sucesivos se convertiría en todo un clásico entre los estudiantes de ingeniería informática. Su autor, el profesor universitario (y doctorado en astrofísica) Andrew S. Tanenbaum, aumentaría su fama en el campo de los sistemas operativos con su siguiente libro, 'Sistemas operativos modernos'.
Pero volviendo a su libro de 1987, Tanenbaum decidió que la mejor manera en que podría mostrar lo que explicaba en su libro sería ofreciendo el código de un sistema operativo completo, para que los estudiantes pudieran verlo de primera mano. Así, distribuyó en disquetes (soportes de almacenamiento, hoy en día más conocidos por ser la inspiración del icono de 'Guardar') tanto el código fuente como los binarios.
Cuando Linux nació obsoleto. O eso decía Tanenbaum
Ese sistema operativo era, claro, MINIX: un SO que no pretendía ser un sistema de uso general, sino meramente formativo. Se inspiraba en UNIX v7 (se puede considerar un clónico suyo), un SO cuyos desarrolladores (Bell Labs) habían prohibido su uso con fines educativos tras su lanzamiento en 1979.
Pese a las similitudes reconocidas por Torvalds entre MINIX y Linux, ambos diferían en un elemento fundamental: la arquitectura del kernel. Donde MINIX apostaba por el novedoso microkernel, Linux mantenía el tradicional 'kernel monolítico'. Esta discrepancia se planteó a las claras en 1992 en el mismo grupo de noticias en el que Linux se había presentado al mundo meses antes, cuando Tanenbaum publicó un artículo en el que afirmaba que Linux estaba 'obsoleto'.
Durante el debate que siguió, ahora popularmente conocido como 'debate Tanenbaum-Torvalds', ambos defendieron con vehemencia su postura: al final ninguno 'se bajó del burro', pero ambos circunscribieron la disputa al ámbito técnico, y hoy en día ambos aseguran tener una buena relación. En Xataka relataron el debate con detalle.
Por cierto, si piensas que el posterior éxito de Linux señala a Torvalds como ganador, espera a terminar el artículo.
Lo cierto es que, hoy en día, los sistemas operativos con microkernel son una minoría en la que quizá MINIX siga siendo el más reconocible de la lista. Aunque otro de ellos, Amoeba, ha tenido una influencia indirecta aunque decisiva en el desarrollo de la informática: Python se concibió, originalmente, para desarrollar software para este sistema operativo. Tanenbaum fue también el creador de Amoeba.
El desconocido éxito de MINIX
Aunque potencialmente todo el mundo tenía acceso al código de MINIX, lo cierto es que al principio se limitaba la posibilidad de distribuir las alteraciones del código, y siguió siendo así durante los siguientes 13 años, hasta que Tanenbaum lo relicenció bajo la 'Licencia BSD-3' en el 2000, lo que lo convirtió en software libre homologable a Linux.
En 1997 lanzaría MINIX v2 y en 2004, con financiación de la UE, se lanzó al mercado la tercera versión (la actual) de este sistema operativo, que hoy en día sigues pudiendo descargar desde su web oficial para instalarlo en tu PC o en una máquina virtual.
Pero aún no hemos hablado de la noticia más sorprendente en torno a MINIX. Y lo más asombroso de la misma es que, cuando finalmente se difundió, Tanenbaum se enteró de ello al mismo tiempo que todos nosotros. Y no le sentó demasiado bien. Habló de ello ese mismo año (2017) en una carta abierta dirigida a Intel:
"Sabía que Intel tenía un potencial interés en MINIX desde que hace años uno de sus equipos de ingeniería contactó conmigo por algo desarrollado con un proyecto interno secreto y me hicieron gran cantidad de preguntas técnicas sobre MINIX, que estuve feliz de responder. Luego sus ingenieros comenzaron a pedirme que hiciera una serie de cambios en MINIX."
"Tras eso, hubo silencio total [por parte de Intel] durante un par de años, hasta que leí en los medios que una versión modificada de MINIX se estaba ejecutando en la mayoría de las computadoras x86, en el interior de uno de los chips Intel. Esta fue una completa sorpresa. No me importa, por supuesto, y no esperaba ningún tipo de pago ya que eso no es obligatorio".
"[Sin embargo,] hubiera sido de agradecer que, después de que el proyecto terminase y el chip se hubiera lanzado, alguien de Intel me hubiese advertido, sólo por cortesía, de que MINIX era probablemente el sistema operativo más utilizado en el mundo en computadoras x86".
Sí, como lo lees: desde 2015 la mayoría de los equipos Intel del mercado ejecutan, enterrada en su circuitería, una versión ultrarreducida de MINIX: se trata del Intel AMT (también conocido como Intel Management Engine), un SOC (system on chip) embebido que se encarga de asegurar el correcto funcionamiento del resto de los componentes del procesador.
Para entender esto, hay que explicar qué son los 'anillos de protección': un sistema de gestión de privilegios que regula el funcionamiento de nuestros equipos. Así, el anillo '0' corresponde al kernel, el 1 y el 2 a los drivers de los dispositivos, y el anillo 3 a las aplicaciones. A mayor número, menos privilegios.
Sin embargo, el Intel AMT cuenta con un acceso extraoficialmente bautizado "de anillo -3" (nótese que es un número en negativo), por lo que es capaz de acceder a cualquier región de la memoria con más privilegios que el propio núcleo del SO, todo ello sin que el resto del sistema sea consciente de su existencia.
Google entró en cólera cuando se difundió la noticia, y dejó claro a Intel que quería ver a MINIX fuera de sus servidores y datacenters. Consideraba que tener algo así en sus equipos, protegido —además— únicamente por la 'seguridad por oscuridad' al no haber revelado Intel los pormenores de su funcionamiento, era una amenaza para la seguridad. Lo cierto es que la principal pretensión de MINIX siempre fue su utilidad educativa, no ser un SO de alta seguridad.
En cualquier caso, ahora que sabes que MINIX es mucho más usado que Linux (y que Mac, y que Windows…), ¿sigues pensando que los hechos muestran que Torvalds tenía más razón que Tanenbaum?
Imagen | Elaboración propia (a partir de Pixabay y el creador de Imágenes de MS Bing)
En Genbeta | Nueve sistemas operativos originales y diferentes: de Plan9 a CollapseOS
Ver 1 comentarios