четверг, мая 24, 2007

Спор Таненбаума-Торвальдса (1992г)

В 1992 году, когда Линукс был еще мало известен, Таненбаум и Торвальдс поспорили в группе comp.os.minix. Все началось с того, что Таненбаум раскритиковал то, что Торвальдс сделал Линукс монолитным, ведь надо использовать микроядро, оно лучше. А Линукс отбрасывает людей в 70-е. Линус Торвальдс не мог на такое не прореагировать и, со словами "Time for some serious flamefesting!", ринулся отвечать.
Несмотря на то, что сообщения перемежаются небольшими наездами, например Таненбаум, который преподает в вузе, говорит, что он Линусу никогда бы хорошую оценку не поставил: "Be thankful you are not my student. You would not get a high grade for such a design :-) "... Так вот, несмотря на наезды, это очень познавательная дискуссия на тему проектирования операционных систем. Сейчас она еще интереснее, потому что Линукс получил широкое распространение. Поэтому особенно любопытно читать доводы Таненбаума почему Линукс - ОС уже устаревшая на момент выхода.

Ссылки по теме:
comp.os.minix LINUX is obsolete - тот самый спор
Tanenbaum-Torvalds debate - статья в Википедии
"Just for fun. Рассказ нечаянного революционера" - биография Торвальдса

13 коммент.:

Сергей комментирует...

Танненбауму нужны были шашечки, а Линусу - ехать ;)

edain комментирует...

В книге "Just for fun" Линус Торвальдс упоминает об этом споре. Дело в том, что линукс писалась на основе ОС Minix, созданной Таненбаумом для обучения проектированию ОС. Когда линух стал более или менее популярным, Таненбаума это задело, т.к. все обсуждение велось в его группе новостей. В общем, была там и личная обида.

Alex комментирует...

А еще было продолжение: http://www.cs.vu.nl/~ast/reliable-os/ (Tanenbaum-Torvalds Debate: Part II).

> Танненбауму нужны были шашечки, а Линусу - ехать ;)

ИМХО, реализовать микроядерную ОС сложнее, чем монолитную. А Линусу возиться не хотелось :-)

Гляньте на GNU Hurd, сколько лет прошло, а доделать никак не могут.

norguhtar комментирует...

GNU Hurd не могут доделать по другой причине :) Там нет то что есть в Linux. А именно лидера принимающего решения.

Miguel комментирует...

Да, вот так, пока нормальным людям лень доделывать нормальные вещи, приходят ламеры и ваяют хрень, которая становится популярной, просто потому, что другого нет. Отсюда вывод.

Vadim комментирует...

IMHO тут больше спор не двух людей, и даже не двух архитектур ОС, а двух подходов.
Танембаум представлеят университетскую профессуру, с научным, правильным, обоснованным подходом.
Торвальдс же - это апофиоз талантливого молодого и горячего программиста-выскочки (каких кстати размеренная стареющая университетская элита в серьез не воспринимает)
Это как спор прикладного и академического методов обучения - и тот и другой дает результат - но споры по поводу "что лучше" не утихнут никогда.


P.S. Ещё в университете 2-жды начинал читать книгу Танембаума - чтение больше похоже на насилование собственных мозгов :(
А вот кто не читал "Just For fun" - очень советую исправить эту ситуацию.

Dmitry комментирует...

на самом деле весь этот спор и его итоги говорят о том, что может выжить и тот и другой вариант. Mac OS X, например, микроядерная.

virens комментирует...

Алёне большое спасибо за пост и ссылки. С интересом читаю :-)


2 norguhtar
GNU Hurd не могут доделать по другой причине :) Там нет то что есть в Linux. А именно лидера принимающего решения.
Личное скромное мнение: сдаётся мне, что у этих орлов просто нет мотивации: по производительности и новым идеям Линукс им не обогнать, а уж по количеству поддерживаемого оборудования - подавно. Микроядро - вовсе не ракета, а создавать его в разы тяжелее. Об этом даже сам Столлман говорил в revolutionOS: "мы выбрали дизайн, очень продвинутый дизайн ... но проблема в том, что его [микроядро] очень тяжело отлаживать... и в результате - это отняло у нас ГОДЫ, чтобы хоть что-то получилось".

Сейчас, насколько можно видеть, Линукс движется в сторону гибридного ядра: всё, что можно, выносится за его пределы (начиная с FUSE :-)) На мой взгляд, это разумный компромисс.

Abu комментирует...

Понять бы - что мне самому нужно? И что есть? И могу ли я сам что-либо изменить в том, что уже есть?

А как было дело, перед тем, как я стал использовать то, что есть - забавно узнать.

Prokrust комментирует...

Полноценная микроядерная операционка реализована, это QNX 6
Линуксоиды и мелкомягкие отдыхают. Например драйвер на QNX это обычное приложение с правами доступа к железу. Сравните с писаниной драйверов под винды :D
Однако цена и поддержка железа все гробят :(

Alena комментирует...

2Сергей
Танненбауму нужны были шашечки, а Линусу - ехать

Метко :-)

2edain
Таненбаума это задело, т.к. все обсуждение велось в его группе новостей. В общем, была там и личная обида.

Мне все же показалось, что Таненбаум искренне возмущается только по поводу технологии. И никакой черной зависти у него нет...

2Miguel
Да, вот так, пока нормальным людям лень доделывать нормальные вещи, приходят ламеры и ваяют хрень, которая становится популярной, просто потому, что другого нет.

Есть линейка Windows, есть Unix'ы всякие, FreeBSD, например.
Можно критиковать Линуса за принятые им решения, но это безусловно талантливый человек, написавший хорошую ОС.

Ещё в университете 2-жды начинал читать книгу Танембаума - чтение больше похоже на насилование собственных мозгов

2Vadim
Да, Таненбаум нудноват. Вещи рассказывает правильные, но язык тяжелый.

2virens
Алёне большое спасибо за пост и ссылки.
пожалуйста :-)
Сейчас, насколько можно видеть, Линукс движется в сторону гибридного ядра
пожалуй, приведу ссылку на Википедию, где описываются гибридные ядра: Hybrid kernel

Железняк комментирует...

http://kernel.kz/?p=13

vadim комментирует...

2 Prokrust:
Давайте не будем сюда примешивать QNX - немного другие задачи, немного другие затраты.