Поиск
На сайте: 763928 статей, 327750 фото.

Торвальдс, Линус Бенедикт

(Перенаправлено с Линус Торвальдс)
Линус Торвальдс
Linus Torvalds

Дата рождения: 28 декабря 1969
Место рождения: Хельсинки, Финляндия

Линус Бенедикт Торвальдс, или Торвалдс (швед. Linus Benedict Torvalds ) — финский программист, хакер.

Воодушевленный прочтением книги Эндрю Таненбаума, посвящённой операционной системе Minix, Линус создал Linuxядро операционной системы GNU/Linux, являющейся на данный момент самой распространенной операционной системой с открытым кодом.

На данный момент 10 % серверов в мире используют GNU/Linux (2006 год).

С 1997 по 2003 год Линус работал в фирме Трансмета. В данный момент он работает в Open Source Development Labs, где занимается разработкой ядра Linux.

Содержание

Биография

Родители Торвальдса, шведоговорящие финны Нильс и Анна Торвальдсы, были в 60-х годах студентами-радикалами, отец даже был коммунистом, в середине 70-х проведшим год в Москве. Линус был назван в честь Лайнуса Полинга. В школе преуспевал в физике и математике. Был малообщительным, скромным мальчиком. Его часто дразнили из-за политических взглядов его отца.

В 1988 году Линус поступил в Университет Хельсинки, который окончил в 1996 году, получив степень магистра кибернетики.

Линус Торвальдс живёт в г. Портленд (США, штат Орегон) с женой Туве (Шаблон:Lang-fi), шестикратной чемпионкой Финляндии по каратэ, тремя дочерьми: Патрицией Мирандой (р. 5 декабря 1996), Даниэлой Йоландой (р. 16 апреля 1998) и Селестой Амандой (р. 20 ноября 2000), а также котом Рэнди (р. март-апрель 1990).

С февраля 1997 по июнь 2003 года работал в компании «Transmeta Corporation», после чего перешёл в компанию «Open Source Development Labs». Хотя OSDL находится в Бивертоне (англ. Beaverton), Торвальдс работает дома.

Личный талисман Линуса Торвальдса — пингвин Тукс (англ. Tux), ставший также эмблемой ОС «Linux».

Закон Линуса, окончательно сформулированный Эриком Реймондом, гласит: «При достаточном количестве глаз все ошибки лежат на поверхности». Глубокой ошибкой называется такая, которую трудно найти, но если достаточно много людей ищет ошибки, то все они становятся поверхностными. Оба программиста разделяют идеологию открытого исходного кода, отчасти основанную на вере в этот закон.

Однако, их взгляды расходятся в том, что важнее: открытость кода или «свободность» программ, их распространения (сторонником последнего является Реймонд). Так, он проявил своё предпочтение KDE среде GNOME , идеологическое различие между которыми состоит в том, что в основе KDE лежит библиотека Qt, доступная на условиях GPL для программ, также распространяемых по этой лицензии, и платно для остальных, а в GNOME лежит GTK, распространяемая по лицензии LGPL, разрешающей свободное использование библиотеки любыми программами, в т.ч. коммерческими.

Тем не менее, в отличие от многих идеологов открытого исходного кода, Торвальдс очень редко выступает с публичными комментариями о конкурирующих программах, за что критикуется организацией GNU. Его критиковали за работу над программным обеспечением с закрытым исходным кодом в компании «Transmeta» и за использование закрытого продукта «BitKeeper» (он пришёл на замену старой схеме внесения изменений в официальное ядро путём посылки патчей в 2002 году; затем в апреле 2005 бесплатный доступ к этой утилите был запрещён, и тогда же началась разработка свободной альтернативы — git, успешно заменившей BitKeeper уже через два месяца). Однако, на выпады против «Linux» и идеологии открытого кода со стороны таких софтверных гигантов, как «Майкрософт» и SCO, он реагировал резко.

Linux

В 1981 году Лео, дедушка Линуса, математик, познакомил внука с ЭВМ «Commodore VIC-20», используемой им для математических вычислений. Линус заинтересовался программированием и прочитал руководства к машине. Затем он начал читать компьютерные журналы и писать собственные программы, сначала на бейсике, а затем на ассемблере.

Со школьных лет Линус получал стипендии за успехи в математике. Первой купленной им ЭВМ была «Sinclair QL», тогда стоившая почти 2000 долларов США.

После окончания школы Линус поступил в Университет Хельсинки на курс информатики. Обучение было прервано годовой службой в армии.

Значимым событием в жизни Торвальдса было прочтение им книги Эндрю Таненбаума «Операционные системы: разработка и реализация» (Operating Systems: Design and Implementation, ISBN 0136386776). В книге на примере написанной Таненбаумом ОС «Minix», представлена структура систем семейства UNIX. Линус очень заинтересовался прочитанным. Позже он купил новый компьютер на базе 386-го процессора и установил «Minix».

Обнаружив недостатки в системе, он начал писать собственный эмулятор терминала, в котором реализовал переключение задач. Затем Линус добавлял в программу всё новые и новые функции, благодаря чему она вскоре стала полноценной операционной системой. Затем он послал ныне знаменитое объявление в новостную группу «Миникса»:

From: torvalds@klaava.Helsinki.Fi (Линус Бенедикт Торвальдс)
Newsgroups: comp.os.minix
Subject: Что бы вы больше всего хотели увидеть в миниксе?
Summary: маленький опрос о моей новой операционной системе
Keywords: 386, preferences
Message-ID: <1991Aug25.205708.9541@klaava.Helsinki.Fi>
Date: 25 Aug 91 20:57:08 GMT
Organization: Университет Хельсинки

Здравствуйте, все вокруг, кто использует миникс -

Я делаю (бесплатную) операционную систему (всего лишь хобби, не будет
большой и профессиональной наподобие gnu) для клонов 386(486) AT.  
Она варилась с апреля и начинает поспевать.  Я бы хотел отзывов о том,
что людям нравится/не нравится в миниксе, ибо моя ОС на неё похожа
(такое же устройство файловой системы (по практическим соображениям)
среди всего прочего).

Я уже перенёс bash(1.08) и gcc(1.40), и всё, кажется, работает.  
Подразумевается, что практические вещи у меня появятся через несколько
месяцев, и я хотел бы узнать, каких особенностей хотелось бы большинству.  
Любые предложения принимаются, но я не обещаю, что реализую их :-)

        Линус (torvalds@kruuna.helsinki.fi)

PS. Да, у неё нет никакого миниксовского кода, и у неё есть многопоточная
фс.  Она НЕ переносима (применяет переключение задач 386-го, и т. д.), и,
вероятно, никогда не будет поддерживать ничего, кроме жёстких дисков
AT, т.к. это всё, что у меня есть :-(.

17 сентября 1991 года Линус выложил исходный код программы (версии 0.01) для общедоступной загрузки. Система сразу же вызвала большой интерес. Сотни, потом тысячи программистов стали интересоваться системой (директорию с программой, за неимением лучших вариантов, назвали «Linux») и работать над её улучшением и дополнением. Она распространялась и по сей день распространяется на условиях общественной лицензии GNUGPL.

Автор «Minix», профессор Эндрю Таненбаум, неожиданно выступил с резкой критикой дизайна системы:

«Я по-прежнему считаю, что создавать монолитное ядро в 1991 году — фундаментальная ошибка. Скажите спасибо, что вы не мой студент: за такой дизайн я бы не поставил высокой оценки :-)» (из письма к Линусу Торвальдсу). Свой пост Таненбаум озаглавил «Линукс» устарел».

Кроме монолитного ядра, Таненбаум критиковал «Linux» за отсутствие переносимости. Таненбаум предсказывал, что процессоры 80x86 в недалёком будущем исчезнут, уступив место архитектуре RISC.

Критика сильно задела Торвальдса. Таненбаум был знаменитым профессором, и его мнение имело значение. В данном вопросе, однако, он ошибался. Линус Торвальдс настаивал на своей правоте.

Открытость ядра, написанного Линусом, дала возможность использовать его совместно с наработками (компиляторами GCC, базовыми утилитами ОС) GNU, проекта свободного варианта системы UNIX, существовавшего с 1983 года (вся эта система обычно называется «Linux», однако правильнее было бы называть её «GNU/Linux»). Популярность системы росла, и позже о ней заговорили журналисты во всём мире. «Линукс» и Линус стали известны.

В настоящее время лишь около двух процентов системного ядра «Linux» написано самим Торвальдсом, но за ним остаётся решение о внесении изменений в официальную ветку ядра.

Торвальдс владеет товарным знаком «Linux» и следит за его использованием через некоммерческую организацию «Linux International» и при помощи пользователей «Linux» во всём мире.

В опросе «человек века» журнала «Тайм», проведённом в 2000 году, Линус занял 17-е место. В 2001 году он разделил с Ричардом Столлманом и Кеном Сакамурой приз Такеды за вклад в социально-экономическое процветание. В 2004 году «Тайм» включил его в список самых влиятельных людей мира.

Ссылки

Шаблон:OnTS Шаблон используется для связи страницы со страницами на ту же тему в родственных проектах.

Использование

Шаблон помещается внизу страницы, как правило перед другими навигационными шаблонами или в секции "См. также". Шаблон по умолчанию берёт ссылки из элемента викиданных, поэтому его можно использовать без параметров: {{Навигация}}. Можно указать дополнительные ссылки:

{{Родственные проекты
 |Викисловарь  = название страницы в Викисловаре
 |Викиучебник  = название страницы в Викиучебнике
 |Викицитатник = название страницы в Викицитатнике
 |Викитека     = название страницы в Викитеке
 |Викивиды     = название страницы в Викивидах
 |Викиновости  = название страницы в Викиновостях
 |Викисклад    = название страницы на Викискладе
 |Викигид      = название страницы в Викигиде
 |Метавики     = название страницы на Метавики
 |Портал       = название портала (страницы в пространстве Портал)
 |Проект       = название проекта (страницы в пространстве Проект)
}}
Пример использования

Шаблон:OnTS Шаблон используется для связи страницы со страницами на ту же тему в родственных проектах.

Использование

Шаблон помещается внизу страницы, как правило перед другими навигационными шаблонами или в секции "См. также". Шаблон по умолчанию берёт ссылки из элемента викиданных, поэтому его можно использовать без параметров: {{Навигация}}. Можно указать дополнительные ссылки:

{{Родственные проекты
 |Викисловарь  = название страницы в Викисловаре
 |Викиучебник  = название страницы в Викиучебнике
 |Викицитатник = название страницы в Викицитатнике
 |Викитека     = название страницы в Викитеке
 |Викивиды     = название страницы в Викивидах
 |Викиновости  = название страницы в Викиновостях
 |Викисклад    = название страницы на Викискладе
 |Викигид      = название страницы в Викигиде
 |Метавики     = название страницы на Метавики
 |Портал       = название портала (страницы в пространстве Портал)
 |Проект       = название проекта (страницы в пространстве Проект)
}}
Пример использования

Родственные проекты

{{Родственные проекты
 |Портал       = Пример
 |Викисловарь  = Пример
 |Викиучебник  = Пример
 |Викицитатник = Пример
 |Викитека     = Пример
 |Викивиды     = Пример
 |Викиновости  = Пример
 |Викисклад    = Пример
 |Викигид      = Пример
 |Метавики     = Пример
 |Проект       = Пример
}}


По умолчанию в качестве заголовка ссылки используется название страницы. Необязательный параметр «Тема» заменяет его: Родственные проекты

{{Родственные проекты
 |Тема = Заголовок
 |Портал = Пример
 |Викисловарь = Пример
 |Викиучебник = Пример
 |Викицитатник = Пример
 |Викитека = Пример
 |Викивиды = Пример
 |Викиновости = Пример
 |Викисклад = Пример
 |Викигид      = Пример
 |Метавики = Пример
 |Проект = Пример
}}


Если существует шаблон иконки портала (см. Категория:Шаблоны:Иконки порталов), то иконка будет использоваться вместо изображения по умолчанию. Родственные проекты

{{Родственные проекты
|Портал = Аниме и манга
}}

См. также

Templatedata

<templatedata> { "description": "Родственные проекты", "params": { "Портал": { "label": "Портал", "type": "string", "required": false }, "Портал2": { "label": "Портал2", "type": "string", "required": false }, "Викисловарь": { "label": "Викисловарь", "type": "string", "required": false }, "Тема": { "label": "Тема", "description": "По умолчанию в качестве заголовка ссылки используется название страницы. Необязательный параметр «Тема» заменяет его", "type": "string", "default": "PAGENAME", "required": false }, "Викиучебник": { "label": "Викиучебник", "type": "string", "required": false }, "Викиверситет": { "label": "Викиверситет", "type": "string", "required": false }, "Викицитатник": { "label": "Викицитатник", "type": "string", "required": false }, "Викитека": { "label": "Викитека", "type": "string", "required": false }, "Викивиды": { "label": "Викивиды", "type": "string", "required": false }, "Викисклад": { "label": "Викисклад", "type": "string", "required": false }, "Метавики": { "label": "Метавики", "type": "string", "required": false }, "Викиновости": { "label": "Викиновости", "type": "string", "required": false }, "Викигид": { "label": "Викигид", "type": "string", "required": false }, "Проект": { "label": "Проект", "type": "string", "required": false }, "nocat": { "label": "автокатегоризация", "description": "Для отключения автоматической категоризации используйте параметр |nocat = 1. ", "type": "string", "required": false }, }, "format": "block" } </templatedata>

{{Родственные проекты
 |Портал       = Пример
 |Викисловарь  = Пример
 |Викиучебник  = Пример
 |Викицитатник = Пример
 |Викитека     = Пример
 |Викивиды     = Пример
 |Викиновости  = Пример
 |Викисклад    = Пример
 |Викигид      = Пример
 |Метавики     = Пример
 |Проект       = Пример
}}


По умолчанию в качестве заголовка ссылки используется название страницы. Необязательный параметр «Тема» заменяет его:

Шаблон:OnTS Шаблон используется для связи страницы со страницами на ту же тему в родственных проектах.

Использование

Шаблон помещается внизу страницы, как правило перед другими навигационными шаблонами или в секции "См. также". Шаблон по умолчанию берёт ссылки из элемента викиданных, поэтому его можно использовать без параметров: {{Навигация}}. Можно указать дополнительные ссылки:

{{Родственные проекты
 |Викисловарь  = название страницы в Викисловаре
 |Викиучебник  = название страницы в Викиучебнике
 |Викицитатник = название страницы в Викицитатнике
 |Викитека     = название страницы в Викитеке
 |Викивиды     = название страницы в Викивидах
 |Викиновости  = название страницы в Викиновостях
 |Викисклад    = название страницы на Викискладе
 |Викигид      = название страницы в Викигиде
 |Метавики     = название страницы на Метавики
 |Портал       = название портала (страницы в пространстве Портал)
 |Проект       = название проекта (страницы в пространстве Проект)
}}
Пример использования

Родственные проекты

{{Родственные проекты
 |Портал       = Пример
 |Викисловарь  = Пример
 |Викиучебник  = Пример
 |Викицитатник = Пример
 |Викитека     = Пример
 |Викивиды     = Пример
 |Викиновости  = Пример
 |Викисклад    = Пример
 |Викигид      = Пример
 |Метавики     = Пример
 |Проект       = Пример
}}


По умолчанию в качестве заголовка ссылки используется название страницы. Необязательный параметр «Тема» заменяет его: Родственные проекты

{{Родственные проекты
 |Тема = Заголовок
 |Портал = Пример
 |Викисловарь = Пример
 |Викиучебник = Пример
 |Викицитатник = Пример
 |Викитека = Пример
 |Викивиды = Пример
 |Викиновости = Пример
 |Викисклад = Пример
 |Викигид      = Пример
 |Метавики = Пример
 |Проект = Пример
}}


Если существует шаблон иконки портала (см. Категория:Шаблоны:Иконки порталов), то иконка будет использоваться вместо изображения по умолчанию. Родственные проекты

{{Родственные проекты
|Портал = Аниме и манга
}}

См. также

Templatedata

<templatedata> { "description": "Родственные проекты", "params": { "Портал": { "label": "Портал", "type": "string", "required": false }, "Портал2": { "label": "Портал2", "type": "string", "required": false }, "Викисловарь": { "label": "Викисловарь", "type": "string", "required": false }, "Тема": { "label": "Тема", "description": "По умолчанию в качестве заголовка ссылки используется название страницы. Необязательный параметр «Тема» заменяет его", "type": "string", "default": "PAGENAME", "required": false }, "Викиучебник": { "label": "Викиучебник", "type": "string", "required": false }, "Викиверситет": { "label": "Викиверситет", "type": "string", "required": false }, "Викицитатник": { "label": "Викицитатник", "type": "string", "required": false }, "Викитека": { "label": "Викитека", "type": "string", "required": false }, "Викивиды": { "label": "Викивиды", "type": "string", "required": false }, "Викисклад": { "label": "Викисклад", "type": "string", "required": false }, "Метавики": { "label": "Метавики", "type": "string", "required": false }, "Викиновости": { "label": "Викиновости", "type": "string", "required": false }, "Викигид": { "label": "Викигид", "type": "string", "required": false }, "Проект": { "label": "Проект", "type": "string", "required": false }, "nocat": { "label": "автокатегоризация", "description": "Для отключения автоматической категоризации используйте параметр |nocat = 1. ", "type": "string", "required": false }, }, "format": "block" } </templatedata>

{{Родственные проекты
 |Тема = Заголовок
 |Портал = Пример
 |Викисловарь = Пример
 |Викиучебник = Пример
 |Викицитатник = Пример
 |Викитека = Пример
 |Викивиды = Пример
 |Викиновости = Пример
 |Викисклад = Пример
 |Викигид      = Пример
 |Метавики = Пример
 |Проект = Пример
}}


Если существует шаблон иконки портала (см. Категория:Шаблоны:Иконки порталов), то иконка будет использоваться вместо изображения по умолчанию.

Шаблон:OnTS Шаблон используется для связи страницы со страницами на ту же тему в родственных проектах.

Использование

Шаблон помещается внизу страницы, как правило перед другими навигационными шаблонами или в секции "См. также". Шаблон по умолчанию берёт ссылки из элемента викиданных, поэтому его можно использовать без параметров: {{Навигация}}. Можно указать дополнительные ссылки:

{{Родственные проекты
 |Викисловарь  = название страницы в Викисловаре
 |Викиучебник  = название страницы в Викиучебнике
 |Викицитатник = название страницы в Викицитатнике
 |Викитека     = название страницы в Викитеке
 |Викивиды     = название страницы в Викивидах
 |Викиновости  = название страницы в Викиновостях
 |Викисклад    = название страницы на Викискладе
 |Викигид      = название страницы в Викигиде
 |Метавики     = название страницы на Метавики
 |Портал       = название портала (страницы в пространстве Портал)
 |Проект       = название проекта (страницы в пространстве Проект)
}}
Пример использования

Родственные проекты

{{Родственные проекты
 |Портал       = Пример
 |Викисловарь  = Пример
 |Викиучебник  = Пример
 |Викицитатник = Пример
 |Викитека     = Пример
 |Викивиды     = Пример
 |Викиновости  = Пример
 |Викисклад    = Пример
 |Викигид      = Пример
 |Метавики     = Пример
 |Проект       = Пример
}}


По умолчанию в качестве заголовка ссылки используется название страницы. Необязательный параметр «Тема» заменяет его: Родственные проекты

{{Родственные проекты
 |Тема = Заголовок
 |Портал = Пример
 |Викисловарь = Пример
 |Викиучебник = Пример
 |Викицитатник = Пример
 |Викитека = Пример
 |Викивиды = Пример
 |Викиновости = Пример
 |Викисклад = Пример
 |Викигид      = Пример
 |Метавики = Пример
 |Проект = Пример
}}


Если существует шаблон иконки портала (см. Категория:Шаблоны:Иконки порталов), то иконка будет использоваться вместо изображения по умолчанию. Родственные проекты

{{Родственные проекты
|Портал = Аниме и манга
}}

См. также

Templatedata

<templatedata> { "description": "Родственные проекты", "params": { "Портал": { "label": "Портал", "type": "string", "required": false }, "Портал2": { "label": "Портал2", "type": "string", "required": false }, "Викисловарь": { "label": "Викисловарь", "type": "string", "required": false }, "Тема": { "label": "Тема", "description": "По умолчанию в качестве заголовка ссылки используется название страницы. Необязательный параметр «Тема» заменяет его", "type": "string", "default": "PAGENAME", "required": false }, "Викиучебник": { "label": "Викиучебник", "type": "string", "required": false }, "Викиверситет": { "label": "Викиверситет", "type": "string", "required": false }, "Викицитатник": { "label": "Викицитатник", "type": "string", "required": false }, "Викитека": { "label": "Викитека", "type": "string", "required": false }, "Викивиды": { "label": "Викивиды", "type": "string", "required": false }, "Викисклад": { "label": "Викисклад", "type": "string", "required": false }, "Метавики": { "label": "Метавики", "type": "string", "required": false }, "Викиновости": { "label": "Викиновости", "type": "string", "required": false }, "Викигид": { "label": "Викигид", "type": "string", "required": false }, "Проект": { "label": "Проект", "type": "string", "required": false }, "nocat": { "label": "автокатегоризация", "description": "Для отключения автоматической категоризации используйте параметр |nocat = 1. ", "type": "string", "required": false }, }, "format": "block" } </templatedata>

{{Родственные проекты
|Портал = Аниме и манга
}}

См. также

Templatedata

<templatedata> { "description": "Родственные проекты", "params": { "Портал": { "label": "Портал", "type": "string", "required": false }, "Портал2": { "label": "Портал2", "type": "string", "required": false }, "Викисловарь": { "label": "Викисловарь", "type": "string", "required": false }, "Тема": { "label": "Тема", "description": "По умолчанию в качестве заголовка ссылки используется название страницы. Необязательный параметр «Тема» заменяет его", "type": "string", "default": "PAGENAME", "required": false }, "Викиучебник": { "label": "Викиучебник", "type": "string", "required": false }, "Викиверситет": { "label": "Викиверситет", "type": "string", "required": false }, "Викицитатник": { "label": "Викицитатник", "type": "string", "required": false }, "Викитека": { "label": "Викитека", "type": "string", "required": false }, "Викивиды": { "label": "Викивиды", "type": "string", "required": false }, "Викисклад": { "label": "Викисклад", "type": "string", "required": false }, "Метавики": { "label": "Метавики", "type": "string", "required": false }, "Викиновости": { "label": "Викиновости", "type": "string", "required": false }, "Викигид": { "label": "Викигид", "type": "string", "required": false }, "Проект": { "label": "Проект", "type": "string", "required": false }, "nocat": { "label": "автокатегоризация", "description": "Для отключения автоматической категоризации используйте параметр |nocat = 1. ", "type": "string", "required": false }, }, "format": "block" } </templatedata>

  • Торвальдс Л., Даймонд Д. Ради удовольствия / Just for fun (книга-эссе)
    • В России издана «ЭКСМО-Пресс» в 2002 г. ISBN 5-04-009285-7
    • Оригинал: Linus Torvalds, David Diamond: Just for Fun: The Story of an Accidental Revolutionary, New York, HarperBusiness, 2001, ISBN 0066620724

На английском

Изображение:Good art ru.png Эта статья входит в число хороших статей.