El debate Tanenbaum-Torvalds fue un debate escrito entre Andrew S. Tanenbaum y Linus Torvalds , sobre el kernel de Linux y la arquitectura del kernel en general. Tanenbaum, el creador de Minix , inició el debate en 1992 en el grupo de discusión de Usenet comp.os.minix , argumentando que los microkernels son superiores a los kernels monolíticos y por lo tanto Linux era, incluso en 1992, obsoleto . [1]
El debate a veces se ha considerado una guerra de fuego . [2]
El debate
Si bien el debate comenzó inicialmente como relativamente moderado, con ambas partes involucradas haciendo solo declaraciones banales sobre el diseño del kernel, se volvió progresivamente más detallado y sofisticado con cada ronda de publicaciones. Además del diseño del kernel, el debate se ramificó en varios otros temas, como qué arquitectura de microprocesador ganaría sobre otras en el futuro. Además de Tanenbaum y Torvalds, varias otras personas se unieron al debate, incluido Peter MacDonald , uno de los primeros desarrolladores del kernel de Linux y creador de una de las primeras distribuciones , Softlanding Linux System ; David S. Miller , uno de los desarrolladores principales del kernel de Linux; y Theodore Ts'o , el primer desarrollador de kernel de Linux de América del Norte . [ cita requerida ]
El debate se abrió el 29 de enero de 1992, cuando Tanenbaum publicó por primera vez sus críticas sobre el kernel de Linux en comp.os.minix , señalando cómo el diseño monolítico fue perjudicial para sus capacidades, en una publicación titulada "LINUX es obsoleto". [1] Si bien inicialmente no entró en grandes detalles técnicos para explicar por qué sentía que el diseño del microkernel era mejor, sugirió que estaba principalmente relacionado con la portabilidad , argumentando que el kernel de Linux estaba demasiado vinculado a la línea x86 de procesadores para ser de alguna utilidad en el futuro, ya que esta arquitectura sería reemplazada para entonces. Para poner las cosas en perspectiva, mencionó que escribir un núcleo monolítico en 1991 es "un paso gigante hacia la década de 1970".
Dado que la crítica se publicó en un grupo de noticias público, Torvalds pudo responder directamente. Lo hizo un día después, argumentando que MINIX tiene fallas de diseño inherentes (mencionando la falta de subprocesos múltiples como un ejemplo específico), al tiempo que reconoce que encuentra que el diseño del núcleo del microkernel es superior "desde un punto de vista teórico y estético". [3] También afirmó que, dado que estaba desarrollando el kernel de Linux en su tiempo libre y lo regalaba gratis (el MINIX de Tanenbaum no era gratuito en ese momento), Tanenbaum no debería objetar sus esfuerzos. Además, mencionó cómo desarrolló Linux específicamente para Intel 80386 porque en parte estaba pensado como un ejercicio de aprendizaje para el propio Torvalds; aunque admitió que esto hacía que el kernel en sí fuera menos portátil que MINIX, afirmó que se trataba de un principio de diseño aceptable, ya que hacía que la interfaz de programación de aplicaciones fuera más sencilla y portátil. Por esta razón, afirmó, "Linux es más portátil que minix".
Tras la respuesta de Linus, Tanenbaum argumentó que las limitaciones de MINIX se relacionan con que él es un profesor, indicando el requisito de que el sistema pueda ejecutarse en el hardware bastante limitado del estudiante promedio, que señaló que era una computadora basada en Intel 8088 , a veces incluso sin disco duro . [4] Linux fue, en ese momento, construido específicamente para Intel 386 , un procesador significativamente más poderoso (y costoso). Tanenbaum también establece específicamente" ... a partir de alrededor de 1 año, había dos versiones de MINIX [], uno para el PC (360 K disquetes) y uno para el 286 /386 (1.2M). La versión para PC se vende más que la Versión 286/386 de 2 a 1. " Señaló que a pesar de que Linux era gratuito, no sería una opción viable para sus estudiantes, ya que no podrían pagar el costoso hardware necesario para ejecutarlo, y que MINIX podrí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 los vínculos de Linux con la arquitectura 386, ya que era el resultado de una elección consciente en lugar de la falta de conocimiento sobre el diseño del sistema operativo, afirmando ".. . Un objetivo de diseño explícito de Linux era aprovechar las características especiales de la arquitectura 386. Entonces, ¿cuál es exactamente tu punto? Diferentes objetivos de diseño te dan diferentes diseños ". [5] También afirmó que diseñar un sistema específicamente para hardware barato causaría problemas de portabilidad en el futuro. A pesar del hecho de que MINIX no era totalmente compatible con el hardware más nuevo, Tanenbaum argumentó que, dado que la arquitectura x86 sería superada por otros diseños de arquitectura en el futuro, no necesitaba abordar el problema, y señaló: "Por supuesto, dentro de 5 años eso será diferente, pero dentro de 5 años todo el mundo ejecutará GNU gratis en sus 200 MIPS, 64M SPARCstation-5 ". Afirmó que el kernel de Linux eventualmente pasaría de moda a medida que avanzara el hardware, debido a que estaba tan estrechamente vinculado a la arquitectura 386. [4]
Torvalds intentó terminar la discusión en ese momento, afirmando que sentía que no debería haber reaccionado exageradamente a las declaraciones iniciales de Tanenbaum, y que estaba redactando un correo electrónico personal para disculparse. [6] Sin embargo, continuaría el debate en un momento posterior.
Secuelas
A pesar de este debate, Torvalds y Tanenbaum parecen estar en buenos términos para hablar; Torvalds quiere que se entienda que no siente animosidad hacia Tanenbaum, y Tanenbaum subraya que los desacuerdos sobre ideas o cuestiones técnicas no deben interpretarse como disputas personales. [2]
Perspectivas de principios de los noventa
Cuando el tema y el debate inicial completo se publicaron en el libro de O'Reilly Media Open Sources: Voices from the Open Source Revolution en 1999, se afirmó que el debate ejemplificaba "la forma en que el mundo pensaba en el diseño de sistemas operativos en ese momento". [2]
El procesador 386 era entonces el chip más extendido "por varias veces", según el participante Kevin Brown, con el 486 usado en computadoras de alta gama, el 286 casi obsoleto y la World Wide Web aún no ampliamente utilizada. Uno de los argumentos de Tanenbaum contra Linux era que estaba demasiado ligado a la arquitectura x86 y al conjunto de instrucciones, lo que consideró un error. [1] Linux moderno ahora tiene una base de código más portátil y se ha adaptado a muchas otras arquitecturas de procesador.
Otro tema recurrente en el debate analiza las alternativas a Linux y MINIX , como GNU (Hurd) y 4.4BSD . Tanenbaum sugirió lo primero en su primera publicación, afirmando que, a diferencia de Linux, era un sistema "moderno" ". [1] En su segunda publicación, mencionó que" ... dentro de 5 años todo el mundo ejecutará GNU gratis en su 200 MIPS , 64M SPARCstation-5 ". [4] Varios debatientes no estuvieron de acuerdo en que GNU fuera una alternativa adecuada. Kevin Brown lo llamó vaporware y afirmó que Linux probablemente se beneficiaría de la arquitectura x86, que continuaría siendo común y se volvería más accesible para Theodore Ts'o, uno de los primeros contribuyentes de Linux, dijo que si bien un enfoque de microkernel tendría beneficios, "... Linux está aquí, y GNU no lo está, y la gente ha estado trabajando en Hurd durante mucho más tiempo que Linus ha estado trabajando en Linux ". [7] Torvalds, consciente de los esfuerzos de GNU para crear un kernel, declaró" Si el kernel de GNU hubiera estado listo la primavera pasada, no me habría molestado siquiera en comenzar mi proyecto: el hecho es que no lo fue y todavía no lo es ". [8]
4.4BSD-Lite no estaría disponible hasta dos años después debido a la demanda USL v. BSDi , presentada por la subsidiaria Unix System Laboratories de AT&T contra Berkeley Software Design , que pertenecía a la propiedad intelectual relacionada con UNIX . La demanda ralentizó el desarrollo de los descendientes de software libre de BSD durante casi dos años mientras se cuestionaba su estatus legal. Como Linux no tenía tanta ambigüedad legal, los sistemas basados en él obtuvieron un mayor apoyo. En enero de 1994 se llegó a un acuerdo entre USL y BSDi, y 4.4BSD se liberó en junio. (Si bien el lanzamiento final fue en 1995, desde entonces se han mantenido varias versiones gratuitas basadas en esta versión, incluidas FreeBSD , DragonflyBSD , OpenBSD y NetBSD ).
El incidente de Samizdat
El 23 de marzo de 2004, Kenneth Brown , presidente de la Institución Alexis de Tocqueville , entrevistó a Tanenbaum. Este fue un preludio de la publicación pendiente de un libro de Brown titulado Samizdat: And Other Issues About the 'Source' of Open Source Code . El libro afirma que Linux fue inicialmente copiado ilegalmente de MINIX. Tanenbaum publicó una fuerte refutación, defendiendo a Torvalds, [9] y declaró en ese momento:
Me gustaría terminar aclarando algunos conceptos erróneos y también corrigiendo un par de errores. Primero, REALMENTE no estoy enojado con Linus. HONESTO. Tampoco está enojado conmigo. No soy una especie de "perdedor dolorido" que se siente eclipsado por Linus. MINIX fue solo una especie de pasatiempo divertido para mí. Soy un profesor. Doy clases, investigo, escribo libros, asisto a conferencias y hago cosas que hacen los profesores. Me gusta mi trabajo y mis alumnos y mi universidad. ... Escribí MINIX porque quería que mis alumnos tuvieran experiencia práctica jugando con un sistema operativo. Después de que AT&T prohibió la enseñanza del libro de John Lions , decidí escribir un sistema similar a UNIX para que mis alumnos jugaran con él. ... No estaba intentando reemplazar GNU / HURD o Berkeley UNIX. Dios lo sabe, lo he dicho suficientes veces. Solo quería mostrarles a mis estudiantes y a otros estudiantes cómo se puede escribir un sistema similar a UNIX utilizando tecnología moderna. Mucha gente quería un UNIX de producción libre con muchas campanas y silbidos y quería convertir MINIX en eso. Fui arrastrado por la vorágine durante un tiempo, pero cuando llegó Linux, en realidad me sentí aliviado de poder volver a la docencia. ... Linus parece estar haciendo un excelente trabajo y le deseo mucho éxito en el futuro.
Aunque escribir MINIX fue divertido, no lo considero lo más importante que he hecho en mi vida. Fue más una distracción que cualquier otra cosa. Lo más importante que he hecho es producir una cantidad de estudiantes increíblemente buenos, especialmente de doctorado. estudiantes. Vea mi página de inicio para ver la lista. Han hecho grandes cosas. Estoy tan orgulloso como una gallina. En la medida en que Linus pueda ser considerado mi alumno, también estoy orgulloso de él. A los profesores les gusta cuando sus alumnos alcanzan una mayor gloria. [10]
Diálogo continuo
Este tema fue revisado en 2006 después de que Tanenbaum escribiera un artículo de portada para la revista Computer titulado "¿Podemos hacer que los sistemas operativos sean confiables y seguros?". [11] Si bien el propio Tanenbaum ha mencionado que no escribió el artículo para renovar el debate sobre el diseño del kernel, [12] la yuxtaposición del artículo y una copia archivada del debate de 1992 en el sitio de tecnología Slashdot hizo que el tema se reavivase. . [13] Torvalds publicó una refutación de los argumentos de Tanenbaum a través de un foro de discusión en línea , [14] y varios sitios de noticias de tecnología comenzaron a informar sobre el problema. [15] Esto llevó a Jonathan Shapiro a responder que la mayoría de los sistemas informáticos confiables y seguros probados en el campo utilizan un enfoque más parecido al de un microkernel. [dieciséis]
Referencias
- ↑ a b c d A. S. Tanenbaum (29 de enero de 1992). "LINUX está obsoleto" . Grupo de noticias : comp.os.minix . Usenet: [email protected] . Consultado el 27 de noviembre de 2006 .
- ^ a b c DiBona, Chris; Ockman, Sam; Stone, Mark; Behlendorf, Brian; Bradner, Scott; Hamerly, Jim; McKusick, Kirk; O'Reilly, Tim; Paquin, Tom; Perens, Bruce; S. Raymond, Eric; Stallman, Richard; Tiemann, Michael; Torvalds, Linus; Vixie, Paul; Wall, Larry; Young, Bob (enero de 1999). "El debate Tanenbaum-Torvalds" . Fuentes abiertas: voces de la revolución del código abierto . O'Reilly Media . ISBN 978-1-56592-582-3.
Cuando el propio Linus escuchó que estábamos incluyendo esto, quiso asegurarse de que el mundo entendiera que él no tiene animadversión hacia Tanenbaum y, de hecho, no habría sancionado su inclusión si no hubiéramos podido convencerlo de que mostraría el camino. el mundo estaba pensando en el diseño de sistemas operativos en ese momento.
- ^ L. Torvalds (29 de enero de 1992). "Re: LINUX está obsoleto" . Grupo de noticias : comp.os.minix . Usenet: [email protected] . Consultado el 28 de noviembre de 2006 .
- ^ a b c AS Tanenbaum (30 de enero de 1992). "LINUX está obsoleto" . Grupo de noticias : comp.os.minix . Usenet: [email protected] . Consultado el 10 de enero de 2006 .
- ^ Kevin Brown (31 de enero de 1992). "RE: LINUX está obsoleto" . Grupo de noticias : comp.os.minix . Usenet: [email protected] . Consultado el 7 de abril de 2007 .
- ^ L. Torvalds (30 de enero de 1992). "Disculpas (Re: LINUX es obsoleto)" . Grupo de noticias : comp.os.minix . Usenet: [email protected] . Consultado el 10 de enero de 2007 .
- ^ Theodore Y. Ts'o (31 de enero de 1992). "Re: LINUX está obsoleto" . Grupo de noticias : comp.os.minix . Usenet: [email protected] . Consultado el 11 de mayo de 2007 .
- ^ L. Torvalds (29 de enero de 1992). "Re: LINUX está obsoleto" . Grupo de noticias : comp.os.minix . Usenet: [email protected] . Consultado el 11 de mayo de 2006 .
- ^ Tanenbaum, Andrew S. "Algunas notas sobre" Quién escribió Linux "Kerfuffle, Release 1.5" . Consultado el 21 de mayo de 2008 .
- ^ Tanenbaum, Andrew S. "Motivación de Ken Brown" . Consultado el 24 de diciembre de 2007 .
- ^ Tanenbaum, AS (mayo de 2006). "¿Podemos hacer que los sistemas operativos sean confiables y seguros?" (PDF) . Sociedad de Informática IEEE . 39 (5): 44–51. CiteSeerX 10.1.1.112.3028 . doi : 10.1109 / MC.2006.156 . Consultado el 26 de noviembre de 2006 .
- ^ Tanenbaum, AS (mayo de 2006). "Debate Tanenbaum-Torvalds: Parte II" . Vrije Universiteit Amsterdam . Consultado el 14 de enero de 2007 .
- ^ Colaboradores de "bariswheel", "Hemos" y Slashdot (mayo de 2006). "Microkernel: ¿El regreso?" . Slashdot . Consultado el 14 de enero de 2007 .
- ^ Torvalds, L. (mayo de 2006). "Núcleo híbrido, no NT" . Tecnologías del mundo real . Consultado el 30 de noviembre de 2006 .
- ^ diegocgteleline.es, colaboradores de ScuttleMonkey & Slashdot (10 de mayo de 2006). "Torvalds sobre el debate sobre el micronúcleo" . Slashdot . Consultado el 21 de mayo de 2008 .
- ^ Jonathan Shapiro (11 de mayo de 2006). "Desenmascarando lo último de Linus" . Uni-Salzburg . Consultado el 13 de agosto de 2017 .
enlaces externos
- "Apéndice A - El debate Tanenbaum-Torvalds" . Fuentes abiertas: voces de la revolución del código abierto . O'Reilly Media . 1999. ISBN 978-1-56592-582-3.
- "Torvalds sobre el debate sobre el micronúcleo" . Slashdot . 2006-05-10.
- Andrew S. Tanenbaum (12 de mayo de 2006). "Debate Tanenbaum-Torvalds: Parte II" .