Программисты 21 века. Линус Торвальдс

в 9:01, , рубрики: Aion FX, Commodore VIC-20, GPL, lego, linux, MicroEMACS, minix, pesconvert, Q-DOS, ruvds_статьи, test-tlb, uemacs, UNIX, гитарная педаль, дизассемблер, Линус Торвальдс
Программисты 21 века. Линус Торвальдс - 1

Линус Торвальдс — финн шведского происхождения, в детстве говорил по-шведски и ходил в шведскую школу. Родился 28 декабря 1969 года в семье журналистов и деда-математика.

▍ Just for fun

Программисты 21 века. Линус Торвальдс - 2В 2001 году совместно с Дэвидом Даймондом написал интереснейшую автобиографию «Just for fun. Рассказ нечаянного революционера», в которой подробно рассказал о начале своей карьеры, о жизни и как была написана первая версия ядра Linux. Название книги связано с теорией Линуса, что эволюция общества (и технологий) всегда движется от выживания к социальному поведению — и, в конечном итоге, к развлечению. По его словам, эта последовательность наблюдается везде, от секса до войны.

Некоторые факты из биографии (из книги):

  • Фамилию «Торвальдс» дедушка изготовил сам из своего имени (Оле Торвальд Элис Саксберг). В мире всего 21 Торвальдс, и все они близкие родственники.
  • В детстве Линус увлекался программированием калькуляторов, а с первым компьютером Commodore VIC-20 встретился примерно в 1981 году в возрасте 11-ти лет и сразу увлёкся новым хобби. Поначалу просто вбивал программы, которые написал дедушка-профессор (именно он купил себе компьютер). В последующие годы все его карманные деньги уходили на компьютерные журналы.

    Программисты 21 века. Линус Торвальдс - 3
    Commodore VIC-20

  • Первыми программами юного хакера были игры. В одной из них можно было управлять маленькой подлодкой в гроте: «Мир кругом движется, наплывает на тебя, а ты — подлодка, и тебе нужно уворачиваться от страшных рыбин и не налетать на стенки грота». Потом другие игрушки: самолёты, корабли, машины и паровозики. После VIC-20 были Commodore 64, Amiga и Sinclair QL (на процессоре 68008).
  • Восемь лет проучился в университете, закончив его со степенью магистра.
  • После первого курса отслужил обязательную службу в армии (11 месяцев, лейтенант артиллерии).
  • Хотя поначалу Линус как любой владелец 68008 ненавидел PC, но к 1990 году задумался о переходе в другой лагерь и начал продавать свой Sinclair QL по частям, накапливая деньги на первый платёж за PC.

▍ Как появился Linux

Серьёзно программировать начал на Sinclair QL в возрасте 16-ти лет, возился с компилятором и интерпретатором Форта. Однажды он написал драйвер для флоппи-контроллера и обнаружил проколы в операционной системе Q-DOS, пришлось её дизассемблировать, чтобы драйвер нормально заработал. Так он заинтересовался операционными системами.

Программисты 21 века. Линус Торвальдс - 4Перед началом лекций по Си и Unix купил учебник «Проектирование и реализация операционных систем» Эндрю С. Таненбаума, чтобы готовиться заранее. В этой книге описана учебная программа Minix, которую автор написал для обучения Unix. Концепция Unix чрезвычайно впечатлила студента. Было ясно, что это цельная и красивая ОС, за которой стоит особая философия.

Одной из фундаментальных операций Unix является «операция порождения (fork)». Выполняя «fork», процесс создаёт свою точную копию. Таким образом вы получаете две идентичные копии. Порождённая копия чаще всего выполняет другой процесс — заменяет себя новой программой. Это вторая базовая операция. Оставшиеся четыре вызова — open (открыть), close (закрыть), read (читать) и write (писать) — предназначены для доступа к файлам. Эти шесть системных вызовов представляют собой простые операции, из которых и состоит Unix.

Линус захотел купить компьютер, на котором может работать Unix, хотя такой ПК с процессором стоил очень дорого, и студент не мог его себе позволить. Но он очень загорелся идеей, а 719 страниц книги Танненбаума выучил почти наизусть. Осенью 1990 года на компьютерах Университета Хельсинки поставили Unix, так что преподаватели начали её изучать вместе со студентами.

Линус накопил денег на новый компьютер 2 января 1991 года, когда ему как раз исполнился 21 год (точнее, он накопил первый взнос в кредит на $3500). Он выбрал мощнейшую модель с 4 МБ ОЗУ вместо двух и процессор с тактовой частотой 33 МГц вместо 16-ти. Также заказал ОС Minix за $169, которые считал грабежом, на 16-ти дискетах.

Танненбаум создавал Minix как учебный инструмент, поэтому она была намеренно изуродована. Многие хакеры выпускали заплатки для исправления Minix, и Линус присоединился к их числу, присоединившись к телеконференции по Minix. Он изучил ассемблер, написал драйвер дисковода, файловую систему, затем программу эмуляции терминала «типа gnu-emacs» (в том смысле, что этот монстр бесконтрольно разрастался вширь). В какой-то момент функций у терминала стало так много, что Линус начал рассматривать её не как отдельную программу, а как новую ОС. Единомышленники из телеконференции по Minix скинулись ему на платежи по кредиту, чтобы он продолжил работу. Так и родилась первая версия ядра Linux 0.01, которая вышла 17 сентября 1991 года.

Разработка заняла полгода. Торвальдс выложил Linux в свободный доступ на университетском FTP, и её начали скачивать сотни, потом тысячи пользователей со всего мира. Линус отказывался от денег, даже когда ему предлагали:

Мне казалось неправильным брать деньги с тех, кто мог бы помочь мне в улучшении программы. Возможно, я подошёл бы к вопросу иначе, если бы не вырос в Финляндии, где на каждого, кто выказывает малейшие признаки жадности, глядят с подозрением, если не с завистью. (Всё несколько изменилось с тех пор, как телефоны Nokia стали распространяться по всему свету, увеличивая банковские счета бесчисленных финнов.) И безусловно, я бы совсем по-другому смотрел на бесплатное распространение программы, если бы не вырос под влиянием упёртого дедушки-профессора и упёртого коммуниста отца.

Кроме того, в разработке он использовал множество свободно распространяемых инструментов, в том числе компилятор GCC от Ричарда Столлмана, под лицензией GPL. Эта лицензия обязывает производные программы открывать исходный код.

Работоспособная версия Linux 1.0 была представлена в марте 1994 года.

▍ Проекты

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

Поскольку он всё время работал мейнтейнером ядра, то для сторонних любительских проектов не было времени.

На Github у Линуса ещё несколько репозиториев, не считая форков:

  • test-tlb (2018 год) — «дурацкий тестер задержек памяти и TLB», как его называет сам автор, быстрый хак с некоторыми прошитыми константами под конкретную машину:
    #define PAGE_SIZE 4096
    #define FREQ 3.9

    Здесь указана частота в гигагерцах. И далее:

    // Hugepage size
    #define HUGEPAGE (2*1024*1024)

  • uemacs (1995 год) — кастомная версия текстового редактора MicroEMACS с персональными изменениями от Линуса.
  • pesconvert (2011 год) — конвертер файлов Brother PES (швейная машинка), чтобы экспортировать чертежи в нормальные графические форматы PNG и SVG. Наверное, понадобилось для жены...

Последним хобби-проектом Линуса стала гитарная педаль, которую он представил со свежей версией ядра Linux 6.13-rc7.

В анонсе ядра Линус добавил постскриптум, что часто в новогодние праздники собирает Lego, которые ему часто дарят на Рождество и на день рождения в конце декабря. В 2024 году он продолжил эту традицию, но «также сделал несколько наборов гитарных педалей», которые он описал как «Lego для взрослых с паяльником». Гитарные педали изменяют звук электрогитары различными способами. Обычно они представляют собой небольшую металлическую коробку, внутри которой основная плата и несколько регуляторов для изменения звука, а активируются они с помощью встроенного педального переключателя. Такие педали широко распространены и выпускаются, например, в наборах для сборки от Aion FX:

Программисты 21 века. Линус Торвальдс - 5

Многие известные гитаристы используют их для создания своих фирменных звуков. Конкретно компания Aion не разрабатывает собственные схемы, а занимается «адаптацией схем коммерческих педалей», по сути реверс-инжинирингом и клонированием чужих продуктов, но в рамках законодательства. Копирование чужого дизайна в этой области — скорее признание качества и уважение.

▍ Чем занимается сейчас

Линус Торвальдс продолжает руководить разработкой ядра Linux, выступая как верховный арбитр (великодушный диктатор) всех споров, но не руководитель и не разработчик. Он символ движения Linux и уже к концу 90-х стал культовой личностью.

Торвальдс известен своими резкими высказываниями в адрес коллег-программистов, других разработчиков ядра Linux. В таком стиле: «Пожалуйста, убей себя, мир станет лучше» или «Ребята, здесь не конкурс по минету». Таких высказываний тысячи в его письмах. В основном они адресуются авторам не самого удачного кода или кода с ошибками. Согласно статистическому исследованию специалистов из Университета Элон, более 1000 из 21 000 писем Линуса в рассылках разработчиков содержат слово «мусор» (crap), что гораздо чаще среднего. Иногда встречаются slut, bitch и bastard, что на русский переводить неприлично. В таблице ниже приведены любимые матерные слова Торвальдса:

Программисты 21 века. Линус Торвальдс - 6

Но Линус всегда удивлялся, как до смешного серьёзно люди воспринимают каждый его шаг:

Меня пригласили выступить на съезде пользователей Linux, который Red Hat проводила в своём Дареме. Зал был битком набит. Как только я вышел на сцену, все встали и начали меня приветствовать. И тут я выпалил первое, что пришло в голову:

«Я ваш бог!».

Я просто хотел пошутить!

Люди воспринимают меня чересчур серьёзно. Они многое воспринимают чересчур серьёзно. Из своего многолетнего опыта работы эмблемой на капоте Linux я вынес один урок — это ещё не самое худшее. Некоторым людям недостаточно самим воспринимать мир серьёзно. Они не успокоятся, пока не заставят окружающих сохранять серьёзность.

Программисты 21 века. Линус Торвальдс - 7

В 2018 году Линус признал, что у него проблемы с психикой коммуникациями и обратился за помощью к специалистам, временно сняв с себя полномочия мейнтейнера.

Это чем-то напоминает ситуацию с Ричардом Столлманом, которого вообще «отменили» за его слишком прямолинейные и неприличные высказывания на темы, далёкие от программирования (попросту говоря, о сексе). Мы тогда отмечали, что очень талантливые и гениальные люди, в том числе в области программирования, часто страдают от таких проблем с коммуникациями. Для окружающей серой массы они слишком необычны и без таких проблем, а если даёшь людям повод себя в чём-то обвинить, люди обязательно этим воспользуются.

Раньше Линусу прощались такие высказывания, потому что Linux был любительским проектом с узким кругом преданных поклонников, но сейчас это серьёзный коммерческий продукт с более 2 млрд пользователей, считая Android. Для участия в проекте своих программистов отправляют многие корпорации, включая Intel, Google, IBM, Samsung. Эти высокооплачиваемые профессионалы вносят более 90% изменений в ядро Linux. Так что и вести себя приходится профессионально, в том числе и Линусу.

Программисты 21 века. Линус Торвальдс - 8
Фото от 17 апреля 2024 года

После 2018 года проблема была по большому счёту решена, хотя иногда её эхо снова доносится. Например, недавно Торвальдс довольно жёстко высказался в адрес российских троллей и агрессоров, тема бурно обсуждалась на Хабре (+241, 1710 комментариев). В оправдание Линуса можно сказать, что вопрос российской агрессии в Финляндии стоит очень остро, его изучают начиная со школы, а сам он служил в армии и хорошо знаком с историей российско-финских войн, так что у него наверняка есть небольшое субъективное предубеждение против РФ.

Заслуги Торвальдса удостоены множества наград, в том числе: Премия тысячелетия в области технологий (2012), Пионера компьютерной техники (2014), медали Лавлейс Британского компьютерного общества (2000), EFF Award (1998), Fellow Awards (2008), награды «Европеец года» (2001), премия IEEE Masaru Ibuka в области потребительской электроники (2018), премии Фонда Nokia (2017). Является почётным доктором Стокгольмского и Хельсинкского университетов (1999). Включён в Зал славы Интернета (2012).

Программисты 21 века. Линус Торвальдс - 9

Сейчас живёт в Портленде (США) с женой Туве, шестикратной чемпионкой Финляндии по карате, и тремя дочерьми.

© 2025 ООО «МТ ФИНАНС»

Автор: alizar

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js