Linux — удивительное творение: технология, уходящая своими корнями в 1970-е и активно разрабатываемая в 1990-х годах, стала широко распространенной в начале 21 века. В этой статье мы поговорим об истории Unix и BSD и о том, как данные системы привели к развитию Linux.
Примечание: В этой статье мы рассмотрим только ключевые тенденции и события в развитии операционных систем от Unix и BSD к Linux.
Первоначальные преимущества Unix
Деннис Ритчи и Кен Томпсон выпустили первый релиз операционной системы Unix 3 ноября 1971 года. Когда историки обсуждают, что особенного было в Unix в то время, они обычно подчеркивают, что Unix поддерживала возможность одновременной работы нескольких пользователей, в то время как в других операционных системах того времени одно задание выполнялось от начала и до конца без возможности прерывания. Я думаю, что более важным отличием Unix была портируемость системы. В те года большинство операционных систем были привязаны к конкретной архитектуре процессора. С помощью Unix вы могли обновлять свой компьютер годами и десятилетиями и по-прежнему использовать одну и ту же операционную систему, и приложения. Это дало большой толчок в развитии вычислительной техники.
Если бы Unix была привязана к компьютеру PDP-11, на котором велась её первоначальная разработка, то данная ОС вряд ли бы оставила сколь-нибудь заметный след в истории. Свойство переносимости системы позволило Unix пережить эволюцию компьютерного оборудования и, в конечном счете, занять лидирующие позиции среди других ОС. Как гласит официальная временная шкала Unix: «В 1973 году система была переписана на язык программирования Си. Это сделало её переносимой и сильно повлияло на историю развития ОС в целом».
Сегодня переносимость Unix и её утилит в полной мере присутствует и в Linux: изначально разрабатываемая под процессоры Intel, система работает на нескольких различных архитектурах. Когда ядро Linux совершило скачок от процессоров Intel к архитектуре ARM, тем самым сделав доступным использование Linux на небольших (появившихся в 1990-х годах) мобильных устройствах, то это событие вызвало всеобщее волнение в Linux-сообществе и открыло новые перспективы развития вычислительной техники.
Значимость языка Си
Переносимость Unix обеспечивалась тем, что вместо Ассемблера для создания системы применялся высокоуровневый язык программирования Си. По сути, ядро Unix было одной из первых крупных программ, написанных на языке Си.
Язык Си позволил написать переносимую операционную систему на языке высокого уровня, потому что … ну, потому что язык Си на самом деле не был таким уж высокоуровневым языком. В то время уже существовало большое количество языков высокого уровня, таких как: FORTRAN, COBOL, LISP и ALGOL. И они были достаточно «умными», т.к. могли скрывать от пользователей сложные детали компьютерной архитектуры и позволяли программистам мыслить в терминах областей знаний, в которых те работали. FORTRAN походил на научные функции и уравнения. COBOL выглядел как описание бизнес-процесса. Каждый язык требовал обладания своей собственной областью знаний, но при этом вам не нужно было беспокоиться об архитектуре процессора, лежащей в основе всего этого.
В отличие от них, язык Си был очень близок к компьютерной архитектуре. Он реализовал побитовые операции с помощью масок (которые влияли на определенные биты в переменной) и сдвигов (которые перемещали биты внутри переменной). Исходя из устройства PDP-11 и языка Ассемблера, разработчики решили реализовать использование строк следующим образом: поскольку длина строки могла варьироваться, то для их представления требовались дополнительные накладные расходы, поэтому язык Си просто хранит каждую строку вместе с завершающим нулевым символом (нуль-терминатором), как это делалось в компьютерах PDP, для которых Си и был первоначально разработан. Концепция unions языка Си, позволяющая по-разному считывать одну и ту же область памяти, была полезна для драйверов устройств и сетей, поскольку заголовки сетевых пакетов, в зависимости от обстоятельств, могли изменяться.
В общем, когда программисты хотят писать очень эффективный, быстро работающий код, они используют язык Си или какой-нибудь его современный вариант. Разработчики, использующие другие языки, регулярно сравнивают свои программы с программами, написанными на языке Си, и хвастаются, когда им удается достичь сравнимой с языком Си эффективности. К сожалению, данная эффективность достигается в ущерб безопасности: язык Си не обеспечивает программиста той защиты, которая есть у других языков, и позволяет совершать серьезные ошибки (в частности, переполняя значения переменных или выходя за пределы массивов).
Попытки создания открытого исходного кода
Задолго до появления лицензий на свободное (или открытое) программное обеспечение, исходный код Unix был открыт для пользователей, которые лицензировали операционную систему. Создатели Unix владели авторскими правами на исходный код системы и иногда очень жестко контролировали его. Но эта позиция не умаляет революцию, вызванную доступностью исходного кода Unix.
Поскольку у пользователей Unix был доступ к исходным кодам системы, у них также появился и доступ к опциям, которые можно было изменить только путем перекомпиляции исходников системы. Практика перекомпиляции Unix для настройки параметров системы под конкретные нужды серверов — еще одна традиция, продолженная в Linux.
Доступность исходного кода надежной, современной операционной системы являлось ощутимым благом для студентов. В Unix не только впервые были применены важные методы в области управления памятью, планирования и т.п., но также содержались любопытные структуры данных и алгоритмы, которые находили широкое применение и в других программах.
Операционная система Unix чем-то похожа на кукушку, подкладывающую свои яйца в чужие гнезда. Несмотря на то, что изобретателями транзистора были Bell Labs (которыми владела компания AT&T), они не производили собственные компьютеры. Unix же впервые появилась на компьютерах DEC (сокр. от англ. «Digital Equipment Corporation») в 1970-х годах. Но у DEC, как и у IBM и любого другого производителя, были свои собственные операционные системы. В связи с этим Unix начинался как причудливый инструмент для исследователей, лишь в минимальной степени просачиваясь в коммерческое использование.
BSD и развитие Интернета
Следующий важный этап нашей экскурсии по развитию операционной системы Unix переносит нас в 1974 год на противоположное побережье от Bell Labs, где ученые в области компьютерных наук Калифорнийского университета в Беркли решили попробовать установить на свои системы Unix. Они и их студенты сочли Unix подходящим вариантом для своих исследований и начали совершенствовать ОС, расширяя её функционал путем добавления всевозможных новых системных вызовов и утилит.
Эволюция BSD (сокр. от англ. «Berkeley Software Distribution») была плавной и последовательной: от набора небольших улучшений до чего-то совершенно нового. Студенты, некоторые из которых позже стали лидерами в области вычислительной техники, добавляли в систему различные улучшения. Одним из таких крупных улучшений стал редактор vi, ежедневно применяемый в своей работе многими пользователями Unix, а теперь и пользователями Linux. Билл Джой, который в студенческие годы изобрел редактор vi во время своей ранней работы над системой Unix в Беркли, организовал в 1977 году первый выпуск своего редактора под маркой «Berkeley Software Distribution». Позже Джой (вместе с другими сооснователями) создал компанию Sun Microsystems, которая позволила Unix взять на себя крупномасштабные вычисления.
«Beastie» — талисман BSD
Применяя Unix для тяжелых, связанных с сетями вычислений, разработчики BSD обнаружили отсутствие многих необходимых системных вызовов. В результате чего они добавили в систему новые системные функции, а также библиотечные вызовы (которые выполняются в пространстве пользователя, а не в пространстве ядре). Связь между Bell Labs и BSD стала двунаправленной, поскольку разработчики Unix позаимствовали свои любимые системные и библиотечные вызовы из BSD.
Сетевой стек был самым важным вкладом BSD в этом деле. История гласит, что BBN Technologies создали Интернет в рамках сотрудничества с оборонным агентством ARPA (позже DARPA). Но когда Интернет стал мейнстримом, в нем использовались стеки протоколов, сетевые службы и инструменты, созданные проектом BSD.
Компания AT&T, которой принадлежала Bell Labs, неплохо зарабатывала на лицензировании Unix.
Примечание: Кстати, официальное название Unix, в соответствии с зарегистрированным товарным знаком, пишется большими буквами — UNIX.
Как уже ранее упоминалось, к системе прилагались её исходные коды. Но в Беркли сделали нечто гораздо более радикальное: они выпустили свой собственный код под лицензией, которая разрешала пользователям вносить изменения и делать всё, что они захотят, включая продажу системы с внесенными в нее изменениями. Лицензия BSD была одной из первых свободных лицензий на программное обеспечение с открытым исходным кодом. И она до сих пор применяется многими проектами.
Популярность BSD обуславливалась бесплатным распространением системы, а не каким-либо её техническим превосходством над Unix от Bell Labs. Как я уже упоминал, AT&T не испытывала никаких угрызений совести по поводу включения наработок BSD в Unix. Сегодня код BSD выглядит устаревшим и в некоторых моментах немного пугающим, но операционная система и её утилиты были очень популярны в то время. В конце 1970-х и начале 1980-х годов, до того, как персональные компьютеры стали коммерчески доступны, большой популярностью пользовались VAX и миникомпьютеры с BSD.
BSD также послужила толчком к прорыву, который привел Unix в коммерческое русло: основанию Sun Microsystems. Билл Джой и его коллеги воспользовались разрешительной лицензией BSD для продажи компьютеров с их собственной доработанной версией операционной системы BSD, называемой SunOS. Рабочие станции и серверы мини-компьютеров Sun Microsystems уничтожили поколение других компаний, производящих мини-компьютеры, и начали устанавливать стандарты для современных вычислений и сетей — всё на основе SunOS, что, конечно же, подразумевало использование BSD.
Раскол BSD
Некоторые сторонники BSD винят в отсутствии прогресса у системы страх, неуверенность и сомнения, связанные с проектом во время судебного процесса в начале 1990-х годов. AT&T подала в суд на BSDi (компанию, которую разработчики BSD создали в 1991 году для коммерциализации BSD), обвиняя последнюю в недобросовестной конкуренции. Впоследствии претензии AT&T разрослись до гораздо более серьезных, а именно: компания обвинила BSDi в том, что та включила исходный код Unix (который принадлежал AT&T) в BSD. Однако стоит учитывать, что и сами разработчики Unix извлекли большую выгоду из включения бесчисленных утилит и функций, созданных разработчиками BSD. Иск был урегулирован менее чем за два года, и из проекта BSD, в конечном итоге, были убраны все «хвосты» системы Unix от AT&T.
Примечание: Сторонники BSD любят указывать на тот факт, что в то самое время активно набирал популярность проект GNU/Linux, как бы намекая на то, что развитие BSD было бы точно таким же, как и GNU/Linux, если бы BSD не вовлекли в судебные тяжбы с AT&T.
Уорнер Лош (Warner Losh), бывший член основной команды разработчиков FreeBSD, сказал в своих комментариях, что, по его мнению, изначально у BSD было вполне себе «здоровое» окружение, представленное разработчиками Исследовательской Группы Компьютерных Систем (сокр. «CSRG» от англ. «Computer Systems Research Group»). В 1995 году эта команда закончила свою работу, и её состав был распущен. Эти события привели к раздробленности внутри проекта BSD.
Руководство начало принимать решения, которые другие участники проекта считали произволом. 386BSD, FreeBSD, NetBSD, OpenBSD — одна за другой небольшие команды недовольных разработчиков отделялись от основного проекта и создавали свои собственные ответвления от основной системы (т.н. форки). С другой стороны, несмотря на то, что в сравнении с BSD сообщество Linux было совсем незрелым, участники разработки ядра Linux сумели сохранить свое единство.
Можно было бы отнестись к распространению различных вариантов ответвления от BSD как к подарку пользователям. Ведь у каждой системы были свои сильные стороны, и пользователи могли выбирать то, что им больше подходило. Но форки не оставили после себя ни одного варианта с достаточно большой критической массой сообщества, за исключением, возможно, FreeBSD, которое позволило бы им развиваться. Любой, кто хотел вести разработку программ для BSD, должен был выбрать какой-то один, конкретный дистрибутив или же ему пришлось бы выполнить большой объем работы по портированию своих программ на различные дистрибутивы.
Unix вырывается вперед!
Поскольку различные BSD-проекты были отодвинуты на второй план, в 1980-х годах произошел беспрецедентный поворот к единой культуре операционных систем. Наблюдая за успехами Sun Microsystems, остальные производители (IBM, DEC и др.) тоже обратились к системам BSD или Unix.
Поклонники других операционных систем смотрели на особенности Unix и были сбиты с толку её, казалось бы, непреодолимым распространением. В дополнение к мини-компьютерам, производство которых отстаивали DEC и Sun Microsystems, компании начали выпускать рабочие станции, предназначенные для одного инженера или ученого. Хотя это было довольно дорого по сравнению с персональными компьютерами, предлагавшимися в 1980-х годах, цена на рабочие станции устанавливалась таким образом, чтобы компании могли предоставить каждому нуждающемуся в этом сотруднику свой собственный компьютер.
Коммерческому внедрению Unix в значительной степени способствовало создание стандарта портативного графического интерфейса. Этот интерфейс никоим образом не заменял командную строку, но позволял использовать текстовые процессоры, CAD/CAM, инструменты визуализации и другие важные приложения, к которым стремились профессиональные пользователи. Графический интерфейс был создан в рамках совместного проекта MIT, DEC и IBM по созданию распределительной вычислительной среды — Project Athena, который сыграл очень важную роль в создании X Window System.
Погоня за прибылью многочисленных вендоров привела к увеличению числа различных вариантов исполнения программ, что усложнило их переносимость. Частичным решением проблемы стало создание спецификации POSIX, предназначенной для стандартизации системных вызовов Unix, вызовов библиотек и основных утилит, таких как командная оболочка (shell).
Каждая реализация Unix, включая Linux, старалась поддерживать данный стандарт. И это обеспечило желанную согласованность в некоторых важных технологиях, таких как потоки (облегченные процессы), в которых остро нуждались многие разработчики в эпоху многоядерных процессоров.
Но, как и многие стандарты, POSIX не был совершенен и медленно реагировал на изменения окружающей среды. Например, он не мог правильно рассчитать время за доли секунды, что было необходимо для многих приложений. Время от времени какая-нибудь операционная система создавала лучший интерфейс, чем POSIX, для какой-либо функции, независимо от того, будут ли другие вендоры использовать это улучшение или нет.
Open Software Foundation (OSF)
История показывает, что люди часто объединяются перед лицом надвигающейся внешней угрозы. Именно в таком положении оказалась большая часть компьютерной индустрии в 1988 году, когда AT&T (владелец Unix) и Sun Microsystems объявили о несколько туманном партнерстве. Было неясно, насколько AT&T увеличит и без того растущий успех Sun Microsystems, присутствовала угроза для других поставщиков. Sun Microsystems отказалась от использования SunOS — системы, с помощью которой компания коммерциализировала рынок вычислительной техники, и переняла последнюю версию Unix от AT&T — UNIX System V Release 4 (SVR4).
В ответ на перспективу потерять бизнес из-за партнерства AT&T и Sun Microsystems, остальная часть крупных поставщиков создали консорциум под названием Open Software Foundation (OSF). Группа хорошо проявила себя и начала подавать большие надежды, создав инструментарий для X Window System под названием Motif. Большинство разработчиков сочли Motif более привлекательным, чем соответствующий инструментарий, предлагаемый Sun Microsystems, под названием OPEN LOOK. После успешного выпуска этого инструментария OSF взялась за более амбициозные проекты, включая версию Unix под названием OSF/1, серверные части компилятора, называемые ANDF (сокр. от англ. «Architectural Neutral Distribution Format») и DCE (сокр. от англ. «Distributed Computing Environment») и пр.
OSF, как и BSD, не могла координировать независимых, а иногда и конкурирующих участников. Компании-участницы не могли отказаться от своих противоречивых интересов в пользу настоящего сотрудничества. «Разори соседа», казалось, было их конкурентной стратегией.
Путь Microsoft
Прежде чем продолжить историю про Unix, я должен упомянуть про единственную важную операционную систему за последние 30 лет, которая почти ничем не обязана Unix — Microsoft Windows. После выпуска своего первого крупного проекта — операционной системы DOS, которая управляла персональным компьютером от IBM, Microsoft последовательно пошла по непересекающемуся c Unix пути.
Первая версия операционной системы Microsoft Windows не являюсь самостоятельной ОС, скорее графической надстройкой над DOS. Фактическая монополия Microsoft на операционные системы для ПК приносила компании в течение десятилетия большую выгоду, но растущие требования, предъявляемые приложениями к компьютерам в конце 1980-х годов, вынудили их искать совершенно новую базу для своей операционной системы. Они разработали обновленную операционную систему, называемую Windows NT, в основу которой легли идеи нескольких сторонних проектов (не Unix).
Одним из таких проектов был OpenVMS — операционная система, которую корпорация DEC создала для своей линейки компьютеров VAX. Когда цифровые технологии пришли в упадок, ведущий разработчик OpenVMS по имени Дэйв Катлер присоединился к Microsoft для разработки новой версии операционной системы Windows.
Другим проектом был Mach — исследовательский проект, возглавляемый Ричардом Рашидом из Университета Карнеги-Меллон. Mach являлся радикально новым шагом в построении архитектур операционных систем, в рамках которого выдвигалась концепция использования микроядра вместо привычного всем монолитного ядра. Микроядро выполняло только лишь минимальный набор обязанностей и использовало различные внешние службы для большинства задач, обычно выполняемых операционной системой. Теоретически концепция микроядра выглядела довольно привлекательной, отражала тенденцию к модульности, которая пронизывала вычислительную технику в течение последних четырех десятилетий (как современные микросервисы). Однако попытки использовать микроядро в операционных системах общего назначения потерпели крах и исчезли вместе с Mach. Хотя в основе архитектуры Windows NT поначалу и закладывалось применение микроядра, в конечном итоге Windows NT осталась без значительной части наследия микроядра Mach. В итоге Ричард Рашид покинул данный проект, чтобы присоединиться к Microsoft, заняв несколько высоких должностей в компании.
В Microsoft признавали важность операционной системы Unix. Доказательством тому служил тот факт, что компания в течение нескольких лет лицензировала вариант Unix под названием Xenix, внесла большой вклад в развитие ядра Linux и теперь предлагает в составе своей системы эмулятор Linux под названием WSL (Windows Subsystem for Linux).
Проект GNU
Ранее я упоминал, что BSD понравилась многим пользователям, потому что им не нужно было платить лицензионные отчисления компании AT&T за пользование Unix. Ричард Столлман увидел в этом еще больше возможностей в середине 1980-х годов. С характерным размахом, с помощью целого манифеста он объявил о создании клона Unix. В дополнение к дорожной карте данного проекта, этот манифест бросал прямой вызов понятию интеллектуальной собственности (термин, который Столлман позже определил как вредный сам по себе) и рассказывал о новом способе выпуска программного обеспечения, который Столлман в конечном итоге воплотил в виде лицензии GNU GPL, также называемой Copyleft.
Столлман долгое время вносил ощутимый вклад в развитие вычислительной техники. В тот момент, когда он начал свой проект GNU (рекурсивный акроним от «GNU is Not UNIX»), самым значимым его техническим достижением стал Emacs — текстовый редактор, который работал на огромном количестве самых разнообразных систем и был портирован на Unix.
Лого GNU
Проект GNU, выпустив GNU Compiler Collection (GNU GCC) в конце 1980-х годов, сильно повлиял на компьютерную сферу, которая в то время бесцеремонно относилась к свободному программному обеспечению. Они были настолько лучше, чем другие компиляторы языка Си, что разработчики всей индустрии проприетарного ПО были несколько ошеломлены. У свободного программного обеспечения явно было будущее.
Но у проекта GNU, в прямом смысле слова, отсутствовало ядро. Оказалось, что это требует совершенно другого уровня сложности от утилит и библиотек, которые Столлман и его коллеги стремились разработать. Они назвали свой проект по созданию ядра — GNU Hurd, и решили использовать концепцию микроядра, которую мы видели в Mach. То ли из-за этого дизайнерского решения, то ли из-за какой-то другой слабости, Hurd прискорбно отстал от остальной части GNU. Таким образом, GNU был похож на велосипед с прекрасной рамой, рулем, тормозами и переключением передач, но без колес. Его пользователям приходилось зависеть от проприетарных вендоров, поставляющих наиболее важную часть операционной системы.
Пробел был заполнен в 1991 году с предварительным выпуском ядра Linux. Линус Торвальдс, создатель ядра Linux, думал, что Unix «не так уж плох», и поэтому решил ему подражать. Что более важно для нашего рассказа, так это то, что Торвальдс в значительной степени полагался и на проект GNU. Для создания своего кода он использовал GNU GCC, связал код ядра с библиотеками GNU и в качестве одного из своих первых приложений портировал командную оболочку bash.
«Пингвин Tux» — талисман Linux
Примечание: Проект GNU в течение последних двух десятилетий призывал людей использовать термин «GNU/Linux» вместо «Linux» для полного обозначения операционных систем, созданных на базе ядра Linux и компонентов GNU.
Движение за свободное ПО
Теперь мы можем обратиться к причине, по которой Linux-системы добились больших успехов, в то время как BSD-системы потерпели в этом неудачу.
Точно так же, как первоначальная привлекательность BSD в значительной степени основывалась на свободной лицензии, Linux-системы были замечены растущими центрами обработки данных 21 века как отличные операционные системы для массового развертывания. Проприетарные системы были обременены не только своей стоимостью, но и явными бюрократическими накладными расходами на приобретение лицензий и контроль за ними.
К концу 1990-х годов все компании, которые предлагали несколько иные версии Unix, поняли, что любое ПО и услуги, которые они надеялись предложить в будущем, должны будут работать на GNU/Linux. Предложение операционной системы, которую любой желающий мог бы свободно устанавливать, должно было стать центральным элементом их бизнес-стратегий.
Примечание: IBM официально перешла на GNU/Linux в 2000 году. В 2019 году они купили ведущего коммерческого поставщика GNU/Linux — компанию Red Hat. Даже Oracle, больше известная своими базами данных, нежели операционными системами (несмотря на покупку Sun Microsystems), лицензирует версию GNU/Linux — Oracle Linux.
Академическое и деловое признание свободного программного обеспечения с открытым исходным кодом демонстрирует то, насколько изменилось это движение со времен расцвета BSD. Ричард Столлман объединил движение за свободное программное обеспечение с проектом GNU. Некоторое время спустя сообщество сторонников ПО с открытым исходным кодом набрало силу, о чем свидетельствовало проведение в том же году крупной конференции по свободному программному обеспечению под названием LinuxWorld Conference and Expo (различные специалисты по свободному программному обеспечению также называют 1998 год поворотным моментом для свободного программного обеспечения).
Наследие Unix
Миллионы людей каждый час берут в руки мобильные телефоны и планшеты. Если у них есть устройства Android, то они запускают свои приложения в сильно измененной версии Linux от Google. Устройства Apple, в свою очередь, запускают адаптированную компанией Apple версию системы BSD, выпущенную в качестве операционной системы с открытым исходным кодом — Darwin. Что бы эти пользователи ни делали со своими устройствами, они, вполне вероятно, взаимодействуют с облачными серверами, работающими под управлением GNU/Linux. Таким образом, наследие Unix присутствует повсюду.
Временная шкала Unix и Linux
Год | Событие |
1966 | ARPA заключает контракт с Raytheon BBN Technologies на создание сети ARPANET. |
1969 | Первая передача данных по сети ARPANET. Начало работы над ОС Unix. |
1970 | Портирование Unix на компьютер PDP-11. |
1972 | Создание языка программирования Си. |
1973 | Ядро Unix переписывается с помощью языка Си. |
1975 | Начало работ над ОС BSD. Первое коммерческое предложение ОС Unix. |
1976 | Основание Apple Inc. |
1978 | ОС Unix портирована на компьютеры VAX. |
1980 | В Калифорнийском университете в Беркли создается CSRG (Группа исследования компьютерных систем). |
1982 | Релиз 4.1aBSD, а также первой версии протокола TCP/IP. Основание Sun Microsystems. |
1983 | *Первоначальное объявление манифеста GNU, давшее старт началу проекта GNU. |
1985 | Основание FSF (Free Software Foundation) — Фонда свободного программного обеспечения. |
1986 | Первый релиз DNS-сервера BIND (сокр. от англ. «Berkeley Internet Name Domain»). Изобретение CVS (сокр. от англ. «Concurrent Versions System») — Централизованная система управления версиями. |
1988 | Основание OSF (Open Software Foundation) — Фонда открытого программного обеспечения. Партнерство Sun Microsystems и AT&T. |
1989 | Первый релиз лицензии GNU GPL. Изобретение Всемирной Паутины (World Wide Web). |
1991 | Для коммерциализации BSD создается компания BSDi (Berkeley Software Design Inc.). Линус Торвальдс выпускает ядро Linux. |
1992 | AT&T подает в суд на BSDi. |
1993 | AT&T делает ответвление Unix. Основание проекта Debian. Старт проекта NetBSD. Старт проекта FreeBSD. Основание Red Hat. |
1994 | Урегулирование судебных разбирательств между AT&T и BSDi. Первый номер журнала Linux Magazine. Портирование Linux под ARM. Фонд OSF прекращает разработку ПО. |
1995 | Роспуск CSRG. Интернет открыт для коммерческого использования. Старт проекта OpenBSD. |
1998 | Первая конференция LinuxWorld Conference and Expo. На саммите, посвященному свободному программному обеспечению, впервые звучит термин «open source». Основание Open Source Initiative — организации, отвечающей за продвижение открытого программного обеспечения. |
1999 | **Эрик Элдред, представляемый Лоуренсом Лессигом, пытается оспорить «Закон о продлении срока охраны авторских прав». Первая австралийская конференция разработчиков Linux (Linux.conf.au). Основание Linux Professional Institute. Публикация антологии «Open Sources: Voices from the Open Source Revolution». |
2000 | Основание Linux Foundation — некоммерческого консорциума развития Linux. |
2001 | Первый самит разработчиков ядра Linux. Публикация эссе Эрика Рэймонда на тему методов разработки ПО — «Собор и Базар». |
2002 | Лоуренс Лессиг создает первую лицензию Creative Commons. |
2003 | Создание Android — ОС для мобильных устройств, созданной на базе ядра Linux. Старт судебного разбирательства с SCO. |
2004 | Основание компании Canonical Ltd., занимающейся разработкой и распространением дистрибутива Ubuntu. ***Дело Welte против Sitecom в Германии подтверждает юридический статус лицензии GNU GPL. |
2005 | Бразилия и Перу объявили о планах внедрения программного обеспечения с открытым исходным кодом в государственных учреждениях. Первый релиз базы данных CouchDB. Линус Торвальдс создает Git — распределенную систему управления версиями. Старт проекта Arduino — свободных аппаратно-программных средств для построения и прототипирования простых систем, моделей и экспериментов в области электроники и автоматики. |
2006 | Запуск AWS (Amazon Web Services). Релиз первого одноплатного компьютера Raspberry Pi. |
2007 | Ведущие компании по виртуализации предлагают Открытый формат виртуализации (сокр. «OVF» от англ. «Open Virtualization Format») Публикация книги Йохай Бенклер, «The Wealth of Networks». |
2009 | Министерство обороны США запускает Forge.mil для совместной работы над ПО с открытым исходным кодом. Начинается работа над микроядром MirageOS. |
2010 | Создание OpenStack — проекта виртуализации с открытым исходным кодом. Oracle подает в суд на Google из-за проблем с авторскими правами на Java и Android. |
2012 | Публикация книги Габриэллы Коулман, «Coding Freedom». Microsoft входит в ТОП-20 контрибьюторов ядра Linux. |
2014 | Google выпускает открытую систему управления контейнерами — Kubernetes. |
2017 | Все самые быстрые суперкомпьютеры в мире работают на базе ядра Linux. Публикация книги Кристофера Тоцци, «For Fun and Profit: A History of the Free and Open Source Software Revolution». |
2019 | IBM покупает компанию Red Hat. |
Примечания:
*Официальная публикация манифеста GNU произошла в 1985 году.
**Эрик Элдред, представляемый Лоуренсом Лессигом, пытается оспорить «Закон о продлении срока охраны авторских прав».
***Дело Welte против Sitecom в Германии подтверждает юридический статус лицензии GNU GPL.
Это адаптированный перевод цикла статей сайта fosslife.org.