Disputa Tanenbaum-Torvalds

La disputa Tanenbaum-Torvalds tuvo lugar entre Andrew Tanenbaum y Linus Torvalds . El tema de la disputa fue el kernel de Linux y la arquitectura de los kernels del sistema operativo en general. Tanenbaum inició la controversia en 1992 en el grupo de noticias comp.os.minix en Usenet [1] , afirmando que los microkernels estaban reemplazando a los kernels monolíticos y, por lo tanto, Linux estaba obsoleto en 1992. Otros hackers destacados se han sumado a la polémica , como David Miller y Theodore Tse [2] .

Gracias al tono categórico de los mensajes en el grupo de noticias, la disputa se ha convertido en una llama  : un mensaje deliberadamente hostil entre los dos campos ( Linux y Minix , en otras palabras, entre los partidarios de los núcleos monolíticos y los seguidores de los micronúcleos) y ha sido descrito en esta luz en diversas publicaciones [3] . El mismo Torvalds también reconoció esto en su primera publicación en un grupo de noticias sobre el tema, afirmando:

Estaría feliz de no morder el anzuelo, pero... ¡Es hora de que nos enfademos en serio! [cuatro]

artículo de opinión en la revista Computer ¿Pueden los sistemas operativos hacerse confiables y seguros? [5] . Aunque Tanenbaum dijo personalmente que no escribió el artículo para reavivar la controversia sobre la arquitectura del kernel [6] , la comparación cuidadosa del artículo con una copia de archivo de 1992 de la controversia en el sitio de tecnología Slashdot reavivó el debate [7] . Torvalds publicó una refutación a los argumentos de Tanenbaum [8] en un foro en línea , y varios sitios de noticias informáticas hicieron circular la información [9] . Esto llevó a Jonathan Shapiro a responder que la mayoría de los sistemas informáticos que han demostrado ser fiables y seguros en la práctica utilizan un esquema más bien orientado al micronúcleo [10] .

Disputa

Si bien el debate comenzó de manera bastante suave al principio, con ambas partes haciendo solo declaraciones generales sobre la arquitectura del kernel, la discusión se profundizó y se volvió más compleja con cada serie de publicaciones. Además de la arquitectura de los núcleos, la disputa también abordó varios otros temas, como qué arquitectura de microprocesador reemplazará a todas las demás en el futuro. Además de Tanenbaum y Torvalds, otras personas se involucraron en la controversia, incluido Peter McDonald, uno de los primeros desarrolladores del kernel de Linux y creador de una de las primeras distribuciones  , Softlanding Linux System , David Miller, uno de los principales desarrolladores de Linux. kernel y Theodor Tsö, el primer desarrollador estadounidense del kernel de Linux.

"Linux está en desuso"

Esta discusión comenzó el 29 de enero de 1992, cuando Tanenbaum publicó por primera vez su crítica del kernel de Linux en comp.os.minix , señalando cómo la arquitectura monolítica era perjudicial para sus propias capacidades, en una publicación titulada "Linux is obsolete" [1 ] . No entró en detalles técnicos al principio para explicar por qué cree que la arquitectura del micronúcleo es mejor. Aún así, Tanenbaum señaló que esto se debió principalmente a la portabilidad , y afirmó que el kernel de Linux estaba demasiado ligado a la línea de procesadores x86 para ser utilizado en el futuro, ya que esta arquitectura algún día dejaría de usarse. En términos de mirar hacia el futuro, dijo que escribir un núcleo monolítico en 1991 fue "un gran paso atrás en la década de 1970".

Debido a que la crítica se hizo en un grupo de noticias público, Torvalds pudo responder directamente. Lo hizo un día después, afirmando que Minix tenía defectos de diseño inherentes (citando la falta de multitarea como ejemplo ) y reconociendo que la arquitectura del micronúcleo era mejor "desde un punto de vista teórico y estético" [4] . También dijo que, dado que desarrolló el kernel de Linux en su tiempo libre y lo regaló gratis (el Minix de Tanenbaum no era gratuito en ese momento), Tanenbaum no debería interferir con sus esfuerzos. Además, enfatizó que desarrolló Linux específicamente para Intel 80386 en parte por el deseo de aprender más sobre esta arquitectura; aunque argumentó que esto hacía que el kernel fuera menos portátil que Minix, este principio de diseño era aceptable porque hacía que la interfaz de programación de aplicaciones fuera más simple y portátil. Por eso, aseguró, “Linux está mejor portado que minix. [ sic ] "

En respuesta al comentario de Linus, Tanenbaum escribió que las limitaciones de MINIX estaban relacionadas con sus actividades de enseñanza, ya que era necesario que el sistema pudiera ejecutarse en una computadora bastante débil de un estudiante común, que era un procesador Intel 8088 , a menudo incluso sin disco duro [11] .

En ese momento, Linux se creó para Intel 80386, un procesador mucho más potente (y costoso). Tanenbaum enfatiza:

...hace un año había dos versiones de [MINIX], una para PC (en disquetes de 360 ​​kilobytes) y otra para 286/386 (1,2 megabytes). Las ventas de la versión para PC superaron a las de la versión 286/386 en una proporción de 2:1.

Argumentó que aunque Linux era gratuito, no podía ser una opción aceptable para los estudiantes porque no podían comprar hardware costoso para ejecutarlo, mientras que MINIX podía usarse "en una PC normal de 4,77 MHz sin disco duro". A esto, Kevin Brown, otro usuario del grupo Usenet, respondió que Tanenbaum no debería quejarse de la vinculación de Linux a la arquitectura 386, ya que fue una elección consciente y no un malentendido del diseño del sistema operativo, y dijo:

... el objetivo declarado del desarrollo de Linux es aprovechar la arquitectura 386. Entonces, ¿cuál es exactamente el punto? Diferentes objetivos para crear una arquitectura conducen a diferentes arquitecturas. [12]

También afirmó que desarrollar un sistema específicamente para hardware de gama baja crearía problemas de portabilidad en el futuro. Si bien Minix no era totalmente compatible con el nuevo hardware compatible con Linux, lo que lo hacía preferible para las personas que ya tenían dicho hardware, Tanenbaum argumentó que, dado que la arquitectura x86 daría paso a nuevas soluciones en el futuro, no necesita resolver el problema. problema y explicó:

Por supuesto, eso cambiará en 5 años, pero en esos 5 años todos usarán el GNU gratuito en computadoras SPARCstation-5 de 200 MIPS con 64 megabytes de memoria.

Afirmó que el kernel de Linux pasaría gradualmente de moda a medida que evolucionara el hardware porque el kernel de Linux estaba muy relacionado con la arquitectura 386 [11] . (Consulte la sección Predicciones erróneas para obtener una explicación detallada ).

Torvalds trató de terminar la discusión en este punto diciendo que no debería haber reaccionado tan duramente a los primeros comentarios de Tanenbaum y que le estaba escribiendo un correo electrónico de disculpa personal [13] . Y, sin embargo, continuó la discusión más tarde.

Consecuencias

A pesar de esta disputa, Torvalds y Tanenbaum parecen comunicarse con normalidad. Torvalds quiere dejar claro que no es hostil a Tanenbaum, y el propio Tanenbaum subraya que sus diferencias en cuestiones técnicas no pueden considerarse una disputa personal [14] .

Errores de predicción

Cuando el tema y toda la controversia original fueron publicados por O'Reilly Media en el libro "Open Source: Echoes of the Open Source Revolution" en 1999, se escribió que esta controversia es un claro ejemplo de "cómo se sentía el mundo acerca de desarrollo del sistema operativo" [14] .

El 386 era el chip más común en ese entonces (varias veces por delante de otros modelos), según el colaborador Kevin Brown, el 486 se usaba en computadoras de alta gama y el 286 estaba prácticamente obsoleto y la Web aún no era ampliamente utilizado. Uno de los argumentos de Tanenbaum contra Linux era que estaba demasiado atado a la línea de procesadores x86, que creía que no duraría mucho [1] . Y, sin embargo, a partir de 2022, x86 sigue siendo la arquitectura de procesador dominante en las computadoras de escritorio. Desde entonces, Linux ha sido portado a muchas otras arquitecturas, incluidas x86-64 , ARM , IA-64 , 680x0 , MIPS , POWER/PowerPC y SPARC .

Otro tema recurrente en este debate son las alternativas a Linux y MINIX como GNU (no GNU/Linux) y 4.4BSD . El primero de ellos, según Tanenbaum, era un sistema "moderno", a diferencia de Linux [1] . En la segunda publicación, sugirió que

...en esos 5 años, todos usarán el GNU gratuito en una SPARCstation-5 de 200 MIPS con 64 megabytes de memoria. [once]

Algunos colaboradores expresaron dudas de que GNU pudiera ser una alternativa adecuada. Kevin Brown lo llamó Vaporware (un software prepopularizado pero nunca lanzado) y afirmó que lo más probable es que Linux se beneficiaría de la demanda y distribución de la arquitectura x86 a una amplia audiencia. Theodor Tsö, uno de los primeros desarrolladores de Linux, dijo que aunque los micronúcleos tendrían ventajas, "...Linux ya existe, GNU aún no, y la gente ha estado trabajando en Hurd durante mucho más tiempo del que Linus ha estado trabajando en Linux" [ 15] . Consciente del deseo de GNU de crear un kernel, Torvalds afirmó: "Si el kernel de GNU hubiera estado listo la primavera pasada, no habría pensado en comenzar mi proyecto: el punto es que no estaba listo ni entonces ni ahora" [16] .

4.4BSD-Lite no estuvo disponible durante dos años debido a una demanda de propiedad intelectual de Unix iniciada por la división Unix System Laboratories de AT&T contra Berkeley Software Distribution . La demanda paralizó el desarrollo de sucursales gratuitas para niños de BSD durante aproximadamente dos años, mientras que su estado legal estaba en duda. Dado que Linux no tuvo tales controversias legales, los sistemas basados ​​en él recibieron más apoyo. Se llegó a un acuerdo de conciliación entre las dos empresas en enero de 1994 y se lanzó 4.4BSD en junio. (Aunque el lanzamiento final fue en 1995, ha habido varias versiones gratuitas basadas en él, incluidas FreeBSD , OpenBSD y NetBSD ).

Escándalo por el libro Samizdat de K. Brown

El 23 de marzo de 2004, Kenneth Brown, presidente de la Institución Alexis de Tocqueville, entrevistó a Tanenbaum. Iba a ser una introducción a la próxima edición de Brown de Samizdat and Other Issues in Open Source Sources. El libro afirma que Linux fue originalmente una copia ilegal de MINIX. Tanenbaum publicó una fuerte refutación en defensa de Torvalds [17] y declaró en ese momento:

Me gustaría aclarar algunos malentendidos y corregir un par de errores. En primer lugar, REALMENTE no estoy enojado con Linus. HONESTAMENTE. Y no está enojado conmigo. No soy un "perdedor patético" que ha sido eclipsado por la fama de Linus. MINIX fue solo entretenimiento para mí. Soy un profesor. Enseño e investigo y escribo libros y voy a conferencias y hago todo lo que hacen los profesores. Me encanta mi trabajo y mis estudiantes y mi universidad. […] Escribí MINIX porque quería darles a los estudiantes la oportunidad de experimentar ellos mismos con el sistema operativo. Después de que AT&T prohibiera aprender del libro de John Lyons [las fuentes se incluyeron con el libro], decidí escribir un sistema similar a UNIX para que mis alumnos practicaran. […] No he intentado crear un reemplazo para GNU/HURD o Berkeley UNIX. Dios es mi testigo: ya he hablado de esto más de una vez. Solo quería mostrarles a mis estudiantes y otros estudiantes cómo escribir un sistema similar a UNIX usando tecnología moderna. Muchos otros querían crear un UNIX gratuito masivo con muchas cosas fáciles de usar ("Con campanas y silbatos"), y querían hacerlo desde MINIX. Estuve involucrado en esto por un tiempo, pero cuando llegó Linux, me liberé de esta carga y pude volver a dar clases. […] Creo que Linus está haciendo un gran trabajo y le deseo lo mejor en el futuro.

Si bien escribir MINIX fue genial, no creo que sea mi logro más importante. Era más entretenimiento que otra cosa. Mi logro más importante es la preparación de estudiantes maravillosos, especialmente candidatos de ciencias. Mire mi página de inicio para obtener una lista de sus nombres. Hacen cosas maravillosas. Estoy orgulloso de ellos como los padres están orgullosos de sus hijos. Dado que Linus puede ser considerado mi alumno, también estoy orgulloso de él. A los profesores les encanta cuando sus alumnos crecen y alcanzan una mayor fama. [Dieciocho]

Notas

  1. 1 2 3 4 A. S. Tanenbaum (29 de enero de 1992). " LINUX está obsoleto ". comp.os.minix . (Grupos de Google) . Consultado el 27 de noviembre de 2006. Archivado el 26 de mayo de 2013 en Wayback Machine .
  2. Vale la pena señalar que Ken Thompson fue comentado en la discusión original, pero este no es el mismo Kenneth Lane Thompson , quien es famoso como uno de los fundadores de UNIX.
  3. Williams, S. GNU/Linux // Libre como en la libertad: la cruzada de Richard Stallman por el software libre  (Inglés) . - O'Reilly Media , 2001. - ISBN 0-596-00287-4 . . — "Esta cita está tomada de la muy publicitada 'guerra de llamas' de Torvalds-Tanenbaum después del lanzamiento inicial de Linux".
  4. 1 2 L. Torvalds (29 de enero de 1992). Re : LINUX está obsoleto . comp.os.minix . (Grupos de Google) . Consultado el 28 de noviembre de 2006. Archivado el 11 de junio de 2013 en Wayback Machine .
  5. Tanenbaum, AS ¿Podemos hacer que los sistemas operativos sean confiables y seguros?  // Sociedad de Computación IEEE. - 2006. - mayo ( vol. 39 , núm. 5 ). - S. 44-51 . Archivado desde el original el 18 de junio de 2018.
  6. Tanenbaum, AS Debate Tanenbaum-Torvalds: Parte II . Vrije Universiteit Amsterdam (mayo de 2006). Fecha de acceso: 14 de enero de 2007. Archivado desde el original el 23 de marzo de 2012.
  7. Colaboradores de "bariswheel", "Hemos" y Slashdot. Microkernel: ¿El regreso? . Slashdot (mayo de 2006). Fecha de acceso: 14 de enero de 2007. Archivado desde el original el 23 de marzo de 2012.
  8. Torvalds, L. Núcleo híbrido, no NT . Tecnologías del mundo real (mayo de 2006). Consultado el 30 de noviembre de 2006. Archivado desde el original el 23 de marzo de 2012.
  9. colaboradores de diegocgteleline.es, ScuttleMonkey y Slashdot. Torvalds sobre el debate sobre el micronúcleo . Slashdot (10 de mayo de 2006). Fecha de acceso: 21 de mayo de 2008. Archivado desde el original el 23 de marzo de 2012.
  10. Jonathan Shapiro. Desacreditando lo último de Linus (enlace no disponible) . coyotos.org (11 de mayo de 2006). Consultado el 21 de mayo de 2008. Archivado desde el original el 11 de mayo de 2008. 
  11. 1 2 3 A. S. Tanenbaum (30 de enero de 1992). " LINUX está obsoleto ". comp.os.minix . (Grupos de Google) . Consultado el 10 de enero de 2006. Archivado el 30 de mayo de 2013 en Wayback Machine .
  12. Kevin Brown (31 de enero de 1992). " RE: LINUX está obsoleto ". comp.os.minix . (Grupos de Google) . Consultado el 7 de abril de 2007. Archivado el 11 de mayo de 2013 en Wayback Machine .
  13. L. Torvalds (30 de enero de 1992). " Disculpas (fue Re: LINUX está obsoleto) ". comp.os.minix . (Grupos de Google) . Consultado el 10 de enero de 2007. Archivado el 14 de junio de 2013 en Wayback Machine .
  14. 1 2 DiBona, Chris; Sam Ockman, Mark Stone, Brian Behlendorf, Scott Bradner , Jim Hamerly, Kirk McKusick, Tim O'Reilly, Tom Paquin, Bruce Perens, Eric Raymond, Richard Stallman, Michael Tiemann, Linus Torvalds, Paul Vixie, Larry Wall, Bob Young. El debate Tanenbaum-Torvalds // Códigos abiertos: Voces de la revolución del código abierto (Inglés) . - O'Reilly Media , 1999. - ISBN 1-56592-582-3 . . “Cuando el propio Linus escuchó que incluyéramos esto en el libro, quiso asegurarse de que el público entendiera que no le guardaba rencor a Tanenbaum y, de hecho, nos prohibió incluirlo hasta que lo convencimos de que sería se muestra allí, cómo el mundo veía el diseño de los sistemas operativos en ese momento.
  15. Theodore Y. Ts'o (31 de enero de 1992). Re : LINUX está obsoleto . comp.os.minix . (Grupos de Google) . Consultado el 11 de mayo de 2007. Archivado el 11 de mayo de 2013 en Wayback Machine .
  16. L. Torvalds (29 de enero de 1992). Re : LINUX está obsoleto . comp.os.minix . (Grupos de Google) . Consultado el 11 de mayo de 2006. Archivado el 9 de mayo de 2013 en Wayback Machine .
  17. Tanenbaum, Andrew S. Algunas notas sobre "Quién escribió Linux" Kerfuffle, versión 1.5 . Fecha de acceso: 21 de mayo de 2008. Archivado desde el original el 23 de marzo de 2012.
  18. Tanenbaum, Motivación de Andrew S. Ken Brown . Consultado el 24 de diciembre de 2007. Archivado desde el original el 23 de marzo de 2012.

Enlaces