Линус Торвальдс — это отец-основатель операционной системы Linux. Его вклад в современный мир IT-технологий бесценен в прямом и переносном смысле. Вам наверняка интересно узнать о том, как никому не известный финский студент написал то, что в дальнейшем стало третьей по популярности настольной операционной системой и первой среди серверных систем.
Так какие же идеи и пути их реализации позволили создать эту операционную систему? Как удалось объединить тысячи программистов во имя единой цели, и какой вклад сделал сам Линус? В этой статье мы подготовили для вас небольшую биографию Линуса Торвальдса.
Содержание статьи
Биография Линуса Торвальдса
1. Детство
Линус Торвальдс родился 28 декабря 1969 года в столице Финляндии Хельсинки. Он был не самым общительным ребёнком, так как комплексовал из-за своей внешности. Его дед по материнской линии работал профессором статистики в университете, поэтому у них в доме был калькулятор. Линуса не очень интересовал результат вычислений, но сам процесс захватывал его до глубины души.
Забавный факт: Фамилия Торвальдс была придумана дедом Линуса, а все её носители являются родственниками.
Уже позднее, в 1981 году, дедушка приобрёл компьютер Commodore VIC-20. Сначала Линус помогал ему вводить написанные им программы математических расчётов. Так у него привилась любовь к математике и физике. Позднее он и сам стал писать программы, начиналось всё с банального вывода текста на экран. Все карманные деньги он тратил на компьютерные журналы, а свободное время проводил за написанием и доработкой программ.
Однажды Линус нашёл программу для азбуки Морзе. В отличие от других программ она была опубликована в машинном коде. Так он узнал, что на самом деле процессор работает с двоичным кодом, а не с командами Basic. С этими знаниями он ещё больше углубился в изучение программирования. Среди написанных им программ было немало игр. Это были простые проекты — всё же компьютер обладал памятью всего 3,5 килобайта.
За Commodore Торвальдс провёл около пяти лет, пока не накопил на свой следующий компьютер — Sinclair QL. И это был очень значимый переход. 32-разрядный процессор и 128 килобайт памяти позволили писать гораздо более сложные программы. У него даже получилось написать клон Pacman, причём на ассемблере, а не на языке высокого уровня.
В это же время Линус начинает изучать операционную систему. Для этих целей он даже приобрёл ассемблер и редактор. Однако программы располагались на фирменных микроприводах и их нельзя было перенести в перепрограммируемое ПЗУ (EEPROM). Поэтому юноша написал свои аналоги. Это была его гордость, текст выводился моментально, что было редкостью для компьютеров того времени.
2. Учёба в университете
В 1988 году Линус поступил в Хельсинкский университет и выбрал три специализации: математику, физику и компьютеры. Первый год учёбы прошёл довольно хорошо, в этот период у него было не так много времени, чтобы заниматься с компьютером. Затем пришлось сделать перерыв и пойти в армию.
На выбор давалось два варианта: быть 8 месяцев рядовым либо 11 месяцев проходить офицерские курсы. Линус выбрал второе. На него была возложена задача управления огнём артиллерии. На первый взгляд, всё просто: рассчитал траекторию и передал её отряду по телефонной линии. Тут-то и крылся подвох, надо было ещё и прокладывать кабель. В общей сложности Линус провёл более трёх месяцев в лесах Лапландии. Ничего хорошего, но с того времени у него есть бесконечная тема для разговоров за кружкой пива.
Вернувшись к учёбе, Линус стал подыскивать замену своему компьютеру. Было принято решение перейти на IBM PC. Денег на новый компьютер не было, поэтому в свободное время Торвальдс решил подготовиться к курсам по языку Си и системам Unix. Для этой цели он выбрал книгу Эндрю Таненбаума «Операционные системы. Разработка и реализация». В этой книге описывается принцип работы операционной системы на примере Minix — учебной версии Unix.
3. Создание Linux
Книга перевернула представление Линуса об операционных системах. Unix была именно тем, о чём мечтает любой программист: простота. С помощью несложных базовых вызовов можно было создать что угодно. В начале 1991 года Торвальдс приобрёл свой второй компьютер. Это был 386 с 4 мегабайтами оперативной памяти. Изначально на нём стояла DOS, но через месяц Линус получил заказанный по почте Minix и начал более подробное изучение системы.
Одной из важных программ был терминал для связи с университетским компьютером и выходом в интернет. То, что предлагал Minix, Линусу категорически не понравилось, и он начал разработку собственной программы. Здесь важно отметить, что терминал запускался отдельно и работал без операционной системы. Но на этом Линус не остановился. Он захотел, чтобы его терминал мог сохранять и передавать файлы. Выбор пал на файловую систему Minix — если его терминал будет совместим с ней, то это заметно упростит задачу.
На каком-то этапе функций терминала стало так много, что Линуса осенило — он создавал не просто терминал, а целую операционную систему. Следующей его целью стал запуск оболочки. Он описывал только те вызовы, на которые выдавалась ошибка. Код в основном был написан на языке программирования Си и использовал особенности 386 процессора.
Оболочка, как и многие программы, которые Торвальдс запускал на своей системе, были написаны по лицензии GNU GPL. Проектом GNU управлял Ричард Столлман, и он хотел создать операционную систему с открытым кодом. Программы вроде текстового редактора Emacs были уже готовы, не хватало только ядра операционной системы. Как вы уже догадались, ядро Линуса и стало основой операционной системы с открытым кодом. Код должен быть доступен всем — именно такой позиции придерживается основоположник Linux.
17 сентября 1991 года первая версия для публики была готова. Сам Линус настаивал на названии Freax, хотя рабочим было нескромное Linux. Ари Лемке, профессор технического университета Хельсинки, который предоставил место на FTP-сервере, решил не менять название и разместил операционную систему в каталоге pub/OS/Linux.
Уже в 1992 году Linux начинает обретать популярность, появляются те, кто готов работать над этой системой. В то же время, благодаря сообществу, система получает оконный интерфейс X Window. Следующим этапом стала разработка сетевого интерфейса. На это ушло без малого два года. Надо было позаботиться о защите компьютера в сети.
В 1993 году Линус вёл курсы информатики в своём университете. Одно из заданий было довольно простым: написать ему электронное письмо. Одна из студенток пригласила его на свидание. Так Линус познакомился со своей будущей женой Туве.
Интересный факт: талисман Linux — пингвин — обязан своим появлением Туве. Ей запомнился момент, когда пингвин клюнул Линуса за руку в австралийском зоопарке. А когда Торвальдс подбирал логотип взамен не очень уместного розового треугольника, Туве предложила использовать пингвина.
В университете Линус учился и работал до 1996 года. В то время ему стали поступать предложения о работе в крупных компаниях. Он принципиально не хотел становиться сотрудником компании, разрабатывающей свой дистрибутив Linux, чтобы не потерять независимость. Выбор пал на малоизвестную Transmeta, расположенную в Сан-Франциско. Таким образом, в начале 1997 года Линус со своей, к тому времени уже женой, Туве, дочерью Патрицией и двумя кошками переехал в США.
4. Работа в Transmeta
Первое время Линус был занят тем, что устранял ошибки в работе многопроцессорных систем под управлением Linux, используемых в Transmeta. Оказалось, что многие вещи работали не так, как планировалось.
Следующим этапом стала разработка интерпретатора кода процессора 80x86. Transmeta не имела лицензии на использование архитектуры x86, поэтому пришлось выкручиваться таким непростым способом. Что интересно, по контракту Линус имел право заниматься Linux в рабочее время, чем непременно пользовался.
Однажды Торвальдс получил письмо от самого Стива Джобса, он приглашал Линуса в свой офис на беседу. На встречу пришёл и главный технарь Apple — Эви Теванян. Речь зашла о планируемой операционной системе Mac OS X и её микроядре Mach.
Стив и Эви рассчитывали завлечь Линуса рассказом об этом ядре и возможным коммерческим успехом. Но их старания оказались напрасными, ведь они не знали, что Торвальдсу не нравится идея использовать микроядро. Его монолитное ядро Linux имело гораздо больше преимуществ, особенно в плане взаимодействия компонентов. Вербовка в ряды Apple провалилась.
Работа в Transmeta продолжалась до 2003 года. Уже тогда компания начала переход от разработки железа к патентному праву. Для Линуса в этой компании просто не осталось работы.
5. Работа в Open Source Development Labs и в The Linux Foundation
В 2004 году Торвальдс переехал в Орегон, чтобы присоединиться к коллективу Open Source Development Labs (OSDL). Эта организация была создана ещё в 2000 году для координации разработки ОС Linux, а также для её продвижения в корпоративной среде. Несмотря на то что она является некоммерческой, у неё немало крупных спонсоров, таких как Intel, IBM, HP и других не менее известных компаний.
Первые годы для управления разработкой ядра Linux использовалась проприетарная система BitKeeper на безвозмездной основе. Однако после того, как выяснилось, что для написания одного из плагинов код программы был подвергнут реверс-инжинирингу, лицензия была отозвана.
Это событие стало толчком для разработки собственной системы управления версиями. Всего за неделю Линус написал свой набор программ под названием Git. А спустя пару месяцев, в июне 2005 года, ОС Linux полностью перешла на новую систему. Этот проект для мира IT стал не менее значимым, чем операционная система. Хотя и в этот раз Линус не был первопроходцем — он просто позволил использовать систему всем желающим.
В 2007 году OSDL объединилась с ещё одной организацией — Free Standards Group, целью которой было продвижение свободного ПО. Linux и там, и там был основным проектом, поэтому нет ничего удивительного в том, что новая организация получила название The Linux Foundation.
Примерно в то время авторству Линуса принадлежало около 2% кода Linux. Всё остальное — это вклад сообщества. И хотя Торвальдс уже не является ведущим разработчиком операционной системы, за ним остаётся последнее слово. На конец 2020 года практически весь код, что пишет программист, — это ответы на электронные письма. По словам Торвальдса, он больше не программирует, хотя именно он оценивает нововведения и даёт добро на их добавление в систему.
6. Предпочтения Линуса
Линус не отличается постоянством в своих предпочтениях — всё зависит от текущей ситуации. Например, он начинал с процессоров Motorola 6502 и 68008. Затем практически три десятка лет использовал процессоры Intel, хотя изначально не особо верил в архитектуру x86. В 2020 году Торвальдс перешёл на AMD. Сейчас он скептически относится к ARM, но кто знает, может быть, через 5–10 лет именно такой процессор станет «сердцем» его нового компьютера.
Среди всех языков программирования Линус выберет всего один — Си. С ним и ассемблером он написал Linux. C++ же для него неприятен, оно и неудивительно, чистый Си гораздо ближе к аппаратному уровню, что критично для ядра операционной системы.
Из дистрибутивов выбор пал на Fedora, а оболочкой рабочего стола у Линуса на долгие годы стал GNOME. Хотя он пользовался и другими вариациями Linux, но именно Fedora уже много лет используется в качестве основной операционной системы.
С оболочками же ситуация интереснее. После релиза GNOME 3 Торвальдс на некоторое время отказался от неё — слишком много изменений было сделано не в лучшую сторону. Одно время Линус пользовался KDE, пока не подобрал набор расширений GNOME, вернувших часть утраченных функций.
Выводы
Линусу Торвальдсу посчастливилось познакомиться с компьютерами в раннем детстве. Огромный вклад в это сделал его дед. Без него он вряд ли бы начал программировать. С юных лет Линус выбрал свою профессию и остаётся верен ей и по сей день.
Проект всей его жизни, Linux, появился и стал популярным благодаря стечению обстоятельств. Нерасторопность Ричарда Столлмана, сыгравшего не менее важную роль в становлении операционной системы, а также выбранная модель распространения, поддержка сообщества и многие другие факторы сделали Linux именно тем, чем он является сейчас.
Хорошая статья, спасибо. Столман конечно внёс вклад в распространение линукса но есть ещё один человек заслуга которого не менее важна в развитии линукса, Иен Мёрдок, но это другая история.
А наши доморощенные кдеешники все поливают гном грязью, а нужно всего-лишь подобрать набор расширений GNOME, возвращающих часть утраченных функций. Учитесь у Линуса.
Извини, но Gnome последние 5-6 лет - это какой-то полигон для бесконечных экспериментов сумасшедших хипстеров... Невозможно воспринимать это DE всерьез. Невозможно использовать его для серьезной работы и повседневных задач. Есть в жизни вещи поинтереснее, чем танцы с бубном и напильником после каждого мажорного релиза гнома.
А за чем насиловать свой организм? Есть и другие среды KDE, XFCE.
Стройное и понятное изложение. Читается с интересом. Спасибо. Приходит мысль: Хорошо, что в 1939-1940 годах, развязывая Вторую мировую, русские не убили предков Линуса. А Линус подарил человечеству свои идеи.
Степан, пойди историю поучи, прежде чем писать что-то в интернетах
Да, но они совершили множество ошибок и упущений благодаря которым ты имеешь возможность дарить человечеству свои идеи.
Ну вообще там было продолжение, Linux сказал - а какого фига я буду подбирать эти расширения, затем опять покрыл GNOME 3 трёх-этажным матом и перешёл на Xfce. А потом и вовсе вернулся на KDE.
Да-да, теперь учитесь доморощенные г... ;D
Степан Бандера?
Свидомитом завоняло
"... в 1939-1940 годах, развязывая Вторую мировую, русские не убили..." Степан, ты из параллельной вселенной?
Хм... Прикольно. В ноябре по "Истории нечаянного революционера" пробежался, набирая текста по биографии Линуса в одной из глав своего диплома. А тут сразу статья о нём.
Здравствуйте, в статью закралась маленькая ошибка:
"он начинал с процессоров Motorola 6502 и 68008"
но 6502 это процессор производства MOS, а вот 6800x это линейка девайсов от Motorola.
мне кажется у него Debian
Линус - настоящий мужик! Первый дистрибутив Linux попробовал еще в институте, аж на 1м курсе нам сказали его себе поставить. Лет 15 назад это было... Это был аццкий Slackware, где не работало вообще ничего. Ни принтера, ни сканера, ни интернета, ни нормального разрешения монитора, вообще ничего... Тогда я сказал "окей, понятненько...", и на следующие 4 года благополучно забыл про Linux. Но потом наши стали обсуждать какую-то "Ubuntu", и я подумал "а дай-ка посмотрю". Где-то на 5м курсе поставил себе Kubuntu 8.04 LTS - и офигел. Так я понял, что Linux может быть очень даже юзерфрендли. А еще в Kubuntu заработал и принтер, и сканер, и быстро настроилась сеть, а вместе с этим постепенно решились и другие проблемы. Через несколько месяцев я понял, что назад на Windows мне как-то не хочется. После этого были эксперименты с Ubuntu, Debian, Fedora, Arch, но все это было не то. Kubuntu с годами становилась только лучше, идеальная система для меня. А сегодня (Kubuntu 22.04 LTS) так и вовсе лучше любой винды или мака. Ребята знают свое дело! 🙂
А что до Windows, то последние 15 лет она так и осталась для меня "системой для игр". Конечно, в Steam есть больше 10 тысяч игр под Linux, включая множество новых, но все же предпочитаю играть под виндой. Хотя, справедливости ради стоит сказать, что через стимовский Proton (это своего рода "проапгрейденный" эмулятор WINE от компании Valve) под Linux адаптированы сотни современных игр, и работают они иногда даже лучше, чем под виндой (например, в некоторых играх в Linux бывает прирост на 10-20 FPS). Но если вам важны самые свежие новинки игр, то здесь только Windows.
А в остальном сегодня в Linux занимаюсь всем - разработкой С/C++, рисованием в Krita, 3D-моделированием в Blender. Дома тоже везде Linux - на основном десктопе Kubuntu, а на домашнем кинотеатре LibreELEC. Пока только на мобилках полноценный Linux никак не начнет экспансию. Все же Android это совсем не то, что хочется видеть на своем смартфоне...
Вобщем, Линус и Столлман - лучшие! 🙂
Благодарю. за ваш труд