stringtranslate.com

Дебаты Таненбаума и Торвальдса

Дебаты Таненбаума и Торвальдса представляли собой письменные дебаты между Эндрю С. Таненбаумом и Линусом Торвальдсом относительно ядра Linux и архитектуры ядра в целом. Таненбаум, создатель Minix , начал дебаты в 1992 году в дискуссионной группе Usenet comp.os.minix , утверждая, что микроядра превосходят монолитные ядра и поэтому Linux даже в 1992 году был устаревшим . [1] Дебаты иногда рассматривают как пламенную войну . [2]

Дебаты

Изображение монолитного ядра, работающего полностью в режиме супервизора.
Архитектура микроядра опирается на серверные программы в пользовательском пространстве.

Хотя дебаты поначалу начинались как относительно умеренные, когда обе стороны делали лишь банальные заявления о конструкции ядра, с каждым сообщением они становились все более подробными и изощренными. Помимо проектирования ядра, дебаты развернулись на несколько других тем, например, какая архитектура микропроцессора победит другие в будущем. Помимо Таненбаума и Торвальдса, к дискуссии присоединились еще несколько человек, в том числе Питер Макдональд , один из первых разработчиков ядра Linux и создатель одного из первых дистрибутивовSoftlanding Linux System ; Дэвид С. Миллер , один из основных разработчиков ядра Linux; и Теодор Ц'о , первый разработчик ядра Linux в Северной Америке . [1]

Дебаты начались 29 января 1992 года, когда Таненбаум впервые опубликовал свою критику ядра Linux на сайте comp.os.minix , отметив, что монолитный дизайн наносит ущерб его возможностям, в сообщении под названием «LINUX устарел». [1] Хотя изначально он не вдавался в технические детали, чтобы объяснить, почему, по его мнению, конструкция микроядра лучше, он все же предположил, что это в основном связано с переносимостью , утверждая, что ядро ​​Linux слишком тесно связано с линейкой x86 . процессоры будут иметь какое-либо применение в будущем, поскольку к тому времени эта архитектура будет заменена. Чтобы представить ситуацию в перспективе, он упомянул, что написание монолитного ядра в 1991 году является «гигантским шагом назад в 1970-е годы».

Поскольку критика была опубликована в общедоступной группе новостей, Торвальдс смог на нее ответить напрямую. Он сделал это днем ​​позже, заявив, что MINIX имеет присущие недостатки конструкции (назвав в качестве конкретного примера отсутствие многопоточности ), признав при этом, что он считает конструкцию ядра микроядра превосходной «с теоретической и эстетической» точки зрения. [3] Он также утверждал, что, поскольку он разрабатывал ядро ​​Linux в свободное время и раздавал его бесплатно (MINIX Таненбаума в то время не был бесплатным), Таненбаум не должен возражать против его усилий. Более того, он упомянул, что разработал Linux специально для Intel 80386, поскольку частично он был задуман как обучающее упражнение для самого Торвальдса; хотя он и признал, что это сделало само ядро ​​менее переносимым, чем MINIX, он утверждал, что это приемлемый принцип проектирования, поскольку он делает интерфейс программирования приложений более простым и переносимым. По этой причине, заявил он, «Linux более портативен, чем Minix».

После ответа Линуса Таненбаум заявил, что ограничения MINIX связаны с тем, что он является профессором, заявив, что система должна иметь возможность работать на довольно ограниченном оборудовании среднего студента, которое, как он отметил, было компьютером на базе Intel 8088 . , иногда даже без жесткого диска . [4] В то время Linux был специально создан для Intel 386 , значительно более мощного (и дорогого) процессора. Таненбаум также особо заявляет: «... примерно год назад существовало две версии [MINIX], одна для ПК (дискеты 360 КБ) и одна для 286/386 ( 1,2 МБ). Версия для ПК продавалась лучше, чем версия для ПК. 286/386 со счетом 2 к 1». Он отметил, что, хотя Linux и бесплатен, он не будет подходящим выбором для его студентов, поскольку они не смогут позволить себе дорогое оборудование, необходимое для его запуска, и что MINIX можно использовать на «обычном ПК с частотой 4,77 МГц » . без жесткого диска ». На это Кевин Браун, другой пользователь группы Usenet, ответил, что Таненбауму не следует жаловаться на привязку Linux к архитектуре 386, поскольку это результат сознательного выбора, а не недостатка знаний о проектировании операционных систем, заявив: «... ... явной целью разработки Linux было использование преимуществ архитектуры 386. Так в чем именно ваша точка зрения? Разные цели проектирования приводят к разным проектам». [5] Он также заявил, что разработка системы специально для дешевого оборудования приведет к проблемам с переносимостью в будущем. Несмотря на то, что MINIX не полностью поддерживал новое оборудование, Таненбаум утверждал, что, поскольку в будущем архитектура x86 будет превзойдена другими архитектурами, ему не нужно решать эту проблему, отметив: «Конечно, через 5 лет это будет будет по-другому, но через 5 лет каждый будет использовать бесплатный GNU на своей 64-мегабайтной SPARCstation-5 с производительностью 200 MIPS». Он заявил, что ядро ​​Linux в конечном итоге выйдет из моды по мере развития аппаратного обеспечения из-за того, что оно так тесно связано с архитектурой 386. [4]

На этом этапе Торвальдс попытался прекратить дискуссию, заявив, что, по его мнению, ему не следовало слишком остро реагировать на первоначальные заявления Таненбаума, и что он пишет ему личное электронное письмо с извинениями. [6] Однако он продолжит дебаты позже.

Последствия

Несмотря на эти дебаты, Торвальдс и Таненбаум, похоже, находятся в хороших отношениях; Торвальдс хочет, чтобы было понятно, что он не испытывает враждебности к Таненбауму, и Таненбаум подчеркивает, что разногласия по идеям или техническим вопросам не следует интерпретировать как личную вражду. [2]

Перспективы начала 1990-х годов

Когда проблема и полные первоначальные дебаты были опубликованы в книге O'Reilly Media « Открытые источники: голоса революции открытого исходного кода» в 1999 году, в ней говорилось, что дебаты продемонстрировали «то, как мир думал о дизайне ОС в то время». [2]

По словам участника Кевина Брауна, процессор 386 был тогда самым распространенным чипом «в несколько раз»: 486 использовался в компьютерах высокого класса, 286 почти устарел, а Всемирная паутина еще не получила широкого распространения. Одним из аргументов Таненбаума против Linux было то, что она слишком тесно связана с архитектурой и набором команд x86 , что он считал ошибкой. [1] Современный Linux теперь имеет более переносимую кодовую базу и портирован на многие другие процессорные архитектуры.

Другая повторяющаяся тема в дебатах обсуждает альтернативы Linux и MINIX , такие как GNU (Hurd) и 4.4BSD . Таненбаум предложил первое в своем первом посте, заявив, что в отличие от Linux это «современная» система». [1] В своем втором посте он упомянул, что «... через 5 лет каждый будет использовать бесплатный GNU на своих 200 MIPS , 64M SPARCstation-5 ». [4] Некоторые участники дебатов не согласились с тем, что GNU является подходящей альтернативой. Кевин Браун назвал это пустым программным обеспечением и заявил, что Linux, скорее всего, выиграет от архитектуры x86, которая продолжит оставаться распространенной и станет более доступной для пользователей. Теодор Цо, один из первых разработчиков Linux, сказал, что, хотя микроядерный подход будет иметь свои преимущества, «... Linux здесь, а GNU нет — и люди работают над Hurd гораздо дольше, чем Линус работал над Linux». [7] Торвальдс, зная об усилиях GNU по созданию ядра, заявил: «Если бы ядро ​​GNU было готово прошлой весной, я бы даже не удосужился начать свой проект: дело в том, что этого не было и нет до сих пор» [8] .

4.4BSD-Lite не будет доступна до двух лет спустя из-за иска USL против BSDi , поданного дочерней компанией AT&T Unix System Laboratories против Berkeley Software Design , который касался интеллектуальной собственности , связанной с UNIX . Судебный процесс замедлил развитие свободных программ-потомков BSD почти на два года, пока их правовой статус был под вопросом. Поскольку в Linux не было такой юридической двусмысленности, системы на его основе получили большую поддержку. Мировое соглашение между USL и BSDi было достигнуто в январе 1994 года, а в июне была выпущена версия 4.4BSD. (Хотя окончательный выпуск состоялся в 1995 году, с тех пор поддерживалось несколько бесплатных версий, основанных на этой версии, включая FreeBSD , DragonFly BSD , OpenBSD и NetBSD .)

Инцидент с Самиздатом

23 марта 2004 года Кеннет Браун , президент Института Алексиса де Токвиля , взял интервью у Таненбаума. Это было прелюдией к предстоящей публикации книги Брауна под названием «Самиздат: и другие вопросы, касающиеся «источника» открытого исходного кода» . В книге утверждается, что Linux изначально был незаконно скопирован с MINIX. Таненбаум опубликовал резкое опровержение в защиту Торвальдса [9] и заявил тогда:

В заключение я хотел бы прояснить несколько заблуждений, а также исправить пару ошибок. Во-первых, я ДЕЙСТВИТЕЛЬНО не сержусь на Лайнуса. ЧЕСТНЫЙ. Он тоже на меня не злится. Я не какой-то «неудачник», который чувствует, что Лайнус его затмил. MINIX был для меня всего лишь развлечением. Я профессор. Я преподаю, занимаюсь исследованиями, пишу книги, хожу на конференции и делаю то, что делают профессора. Мне нравится моя работа, мои студенты и мой университет. ... Я написал MINIX, потому что хотел, чтобы мои ученики получили практический опыт работы с операционной системой. После того как AT&T запретила преподавание по книге Джона Лайонса , я решил написать UNIX-подобную систему, с которой могли бы поиграть мои студенты. ... Я не пытался заменить GNU/HURD или Berkeley UNIX. Видит Бог, я говорил это достаточно раз. Я просто хотел показать своим студентам и другим студентам, как можно написать UNIX-подобную систему, используя современные технологии. Многие другие люди хотели свободную производственную версию UNIX с множеством наворотов и хотели преобразовать в нее MINIX. Некоторое время меня тянуло в водоворот, но когда появился Linux, я действительно почувствовал облегчение, что могу вернуться к профессорской работе. ... Кажется, Линус отлично справляется со своей работой, и я желаю ему больших успехов в будущем.

Хотя писать MINIX было весело, я не считаю это самым важным делом, которое я когда-либо делал. Это было скорее отвлечением, чем чем-либо еще. Самое важное, что я сделал, — это подготовил ряд невероятно хороших студентов, особенно докторов наук. студенты. См. мою домашнюю страницу для списка. Они совершили великие дела. Я горжусь, как наседка. Поскольку Лайнуса можно считать моим учеником, я тоже горжусь им. Профессорам нравится, когда их студенты добиваются большей славы. [10]

Продолжение диалога

К этой теме вернулись в 2006 году после того, как Таненбаум написал для журнала Computer статью под названием «Можем ли мы сделать операционные системы надежными и безопасными?». [11] Хотя сам Таненбаум упомянул, что он писал статью не для того, чтобы возобновить дебаты о дизайне ядра, [12] сопоставление статьи и архивной копии дебатов 1992 года на технологическом сайте Slashdot заставило эту тему вновь разжечься. . [13] Торвальдс опубликовал опровержение аргументов Таненбаума на дискуссионном онлайн-форуме , [14] и несколько сайтов технологических новостей начали сообщать об этой проблеме. [15] Это побудило Джонатана Шапиро (основного разработчика микроядра EROS ) ответить, что большинство проверенных на практике надежных и безопасных компьютерных систем используют подход, более похожий на микроядро. [16]

Откровения Intel Management Engine

В 2017 году выяснилось, что Intel использует MINIX внутри Management Engine — отдельного процессора, включенного в наборы микросхем процессоров Intel с 2008 года. В ответ на это Таненбаум написал открытое письмо в Intel, в котором назвал MINIX «наиболее широко используемым компьютером». операционная система в мире». [17]

Рекомендации

  1. ^ abcde AS Таненбаум (29 января 1992 г.). «LINUX устарел». Группа новостей : comp.os.minix. Usenet:  [email protected] . Проверено 27 ноября 2006 г.
  2. ^ abc ДиБона, Крис; Окман, Сэм; Стоун, Марк; Белендорф, Брайан; Брэднер, Скотт; Хамерли, Джим; МакКьюсик, Кирк; О'Рейли, Тим; Пакуин, Том; Перенс, Брюс; С. Рэймонд, Эрик; Столлман, Ричард; Тиманн, Майкл; Торвальдс, Линус; Викси, Пол; Уолл, Ларри; Янг, Боб (январь 1999 г.). «Дебаты Таненбаума-Торвальдса». Открытые исходные коды: голоса революции открытого исходного кода . О'Рейли Медиа . ISBN 978-1-56592-582-3. Когда сам Линус услышал, что мы включили это, он хотел убедиться, что мир понял, что он не испытывает враждебности по отношению к Таненбауму и фактически не санкционировал бы это включение, если бы мы не смогли убедить его, что это укажет путь. В то время мир думал о дизайне ОС.
  3. Л. Торвальдс (29 января 1992 г.). «Re: LINUX устарел». Группа новостей : comp.os.minix. Usenet:  [email protected] . Проверено 28 ноября 2006 г.
  4. ^ abc AS Таненбаум (30 января 1992 г.). «LINUX устарел». Группа новостей : comp.os.minix. Usenet:  [email protected] . Проверено 10 января 2006 г.
  5. Кевин Браун (31 января 1992 г.). «RE: LINUX устарел». Группа новостей : comp.os.minix. Usenet:  [email protected] . Проверено 7 апреля 2007 г.
  6. Л. Торвальдс (30 января 1992 г.). «Извиняюсь (было Re: LINUX устарел)». Группа новостей : comp.os.minix. Usenet:  [email protected] . Проверено 10 января 2007 г.
  7. Теодор Ю. Цо (31 января 1992 г.). «Re: LINUX устарел». Группа новостей : comp.os.minix. Usenet:  [email protected] . Проверено 11 мая 2007 г.
  8. Л. Торвальдс (29 января 1992 г.). «Re: LINUX устарел». Группа новостей : comp.os.minix. Usenet:  [email protected] . Проверено 11 мая 2006 г.
  9. ^ Таненбаум, Эндрю С. «Некоторые заметки о Kerfuffle «Кто написал Linux», выпуск 1.5» . Проверено 21 мая 2008 г.
  10. ^ Таненбаум, Эндрю С. «Мотивация Кена Брауна» . Проверено 24 декабря 2007 г.
  11. ^ Таненбаум, А.С. (май 2006 г.). «Можем ли мы сделать операционные системы надежными и безопасными?» (PDF) . Компьютерное общество IEEE . 39 (5): 44–51. CiteSeerX 10.1.1.112.3028 . дои : 10.1109/MC.2006.156. S2CID  99779 . Проверено 26 ноября 2006 г. 
  12. ^ Таненбаум, А.С. (май 2006 г.). «Дебаты Таненбаума-Торвальдса: Часть II». Свободный университет Амстердама . Проверено 14 января 2007 г.
  13. ^ «Микроядро: Возвращение?». Слэшдот . Май 2006. Архивировано из оригинала 24 сентября 2006 года . Проверено 14 июня 2023 г.
  14. ^ Торвальдс, Л. (май 2006 г.). «Гибридное ядро, а не NT». Реальные мировые технологии . Проверено 30 ноября 2006 г.
  15. ^ «Торвальдс о дебатах о микроядре». Слэшдот . 10 мая 2006 года . Проверено 21 мая 2008 г.
  16. Джонатан Шапиро (11 мая 2006 г.). «Разоблачение последних событий Линуса». Парижский университет Лодрон в Зальцбурге . Проверено 13 августа 2017 г.
  17. ^ Таненбаум, Эндрю С. «Открытое письмо Intel». Архивировано из оригинала 30 марта 2023 года . Проверено 2 апреля 2023 г.

Внешние ссылки