Краткая история Linux

0 Акции
0
0
0
0

Введение

В обиходе «Linux» часто обозначает группу дистрибутивов операционных систем, построенных на ядре Linux. Но в более конкретном смысле Linux относится только к самому ядру. Для создания полноценной операционной системы дистрибутивы Linux обычно включают инструменты и библиотеки из проекта GNU и других источников. В последнее время все больше разработчиков используют Linux для создания и запуска мобильных приложений; операционная система также сыграла значительную роль в разработке доступных устройств, таких как Chromebook, которые работают под управлением операционной системы на основе ядра. В облачных вычислениях и серверных средах в целом Linux является популярным выбором по ряду операционных причин:

  • Его дистрибутивы актуальны и поддерживаются другими сообществами разработчиков.
  • Эта операционная система может работать на широком спектре оборудования и может быть установлена параллельно с существующими системами (полезная функция в локальных средах разработки).
  • Поддерживает централизованную установку программного обеспечения из предварительно созданных репозиториев.
  • Его ресурсоемкость невелика.
  • Когда разработчики создают программные экосистемы и инструменты, необходимые для серверов, Linux обычно является первым выбором, что обеспечивает высокую совместимость.
  • Это позволяет вносить необходимые изменения в поведение операционной системы.

Linux также имеет корни в движении за свободное и открытое программное обеспечение, поэтому некоторые разработчики используют его по этическим и операционным соображениям:

  • Для некоторых разработчиков использование Linux означает приверженность открытому доступу и свободе выражения мнений.
  • Сообщество Linux также привлекательно для некоторых разработчиков: при возникновении вопросов они могут обратиться к ресурсам, созданным этим сообществом, или напрямую связаться с одним из активных сопровождающих проекта.

Чтобы понять роль Linux в сообществе разработчиков (и за его пределами), в этой статье изложена краткая история Linux от Unix до Linux, а также рассмотрены некоторые популярные дистрибутивы Linux.

Корни в Unix

Linux берёт своё начало от Unix и Multix, двух проектов, целью которых было создание надёжной многопользовательской операционной системы.

Начало Unix

Unix развился из проекта Multix в Центре компьютерных исследований Bell Labs. Разработчики, работавшие над Multix в Bell Labs и других местах, были заинтересованы в создании многопользовательской операционной системы с одноуровневым хранилищем, динамической компоновкой (при которой запущенный процесс мог запросить у системы добавление еще одного раздела в свое адресное пространство, чтобы он мог выполнять код из этого раздела) и иерархической файловой системой.

Компания Bell Labs прекратила финансирование проекта Multix в 1969 году, но группа исследователей, включая Кена Томпсона и Денниса Ричи, продолжила работу над первоначальными принципами проекта. В 1972–73 годах они решили переписать систему на языке C, что сделало Unix уникально портативным: в отличие от других современных операционных систем, Unix мог перемещаться со своего оборудования и оставаться работоспособным.

Однако исследования и разработки продолжались в Bell Labs (позже AT&T), а Unix Systems Labs в сотрудничестве с Sun Microsystems разработала версии Unix, которые получили широкое распространение среди коммерческих поставщиков Unix. Тем временем исследования продолжались в академических кругах, в частности, в группе исследований компьютерных систем Калифорнийского университета в Беркли. Эта группа создала Berkeley Software Distribution (BSD), которая послужила основой для множества операционных систем, многие из которых используются и сегодня. К двум историческим дистрибутивам BSD относятся NeXTStep, операционная система, разработанная NeXT и ставшая основой для macOS и других продуктов, и MINIX, образовательная операционная система, ставшая эталоном для Линуса Торвальдса при разработке Linux.

Основные особенности Unix

В основе Unix лежат принципы ясности, переносимости и параллельного выполнения.

  • Разрешение: Модульная структура Unix позволяет выполнять функции ограниченным и специфическим образом. Его файловая система унифицирована и иерархична, что упрощает манипулирование данными. В отличие от некоторых своих предшественников, Unix реализует сотни (а не тысячи) системных вызовов, каждый из которых служит прямой и понятной цели.
  • Портативность: Написав Unix на языке C, команда Bell Labs подготовила Unix к широкому распространению и внедрению. Язык C был разработан для обеспечения поверхностного доступа к памяти, минимальной поддержки во время выполнения и эффективного взаимодействия между языком и машинными инструкциями. Основанная на C основа Unix означала, что операционная система была адаптируемой и могла легко работать на различном оборудовании.
  • Синхронизация: Ядро Unix специально разработано (в сотрудничестве с проектом Multix) для поддержки множества пользователей и рабочих процессов. Пространство ядра в Unix отличается от пользовательского пространства, что позволяет запускать несколько программ одновременно.

Эволюция Linux

Unix поднимал важные вопросы перед разработчиками, но в своих ранних версиях он оставался проприетарным. Поэтому следующая глава его истории — это рассказ о том, как разработчики работали внутри и против этой структуры, что привело к созданию свободных и открытых альтернатив.

Эксперименты с открытым исходным кодом

Ричард Столлман был центральной фигурой среди разработчиков, вдохновленных идеей создания непатентованных альтернатив Unix. Работая в Лаборатории искусственного интеллекта Массачусетского технологического института, он начал работу над проектом GNU (что расшифровывается как “GNU — это не Unix!”) и в конечном итоге покинул лабораторию в 1984 году, чтобы распространять компоненты GNU как свободное программное обеспечение. Ядро GNU, известное как GNU HURD, стало предметом внимания Фонда свободного программного обеспечения (FSF), основанного в 1985 году и по-прежнему возглавляемого Столлманом.

Тем временем другой разработчик работал над бесплатной альтернативой Unix: финский студент Линус Торвальдс. Разочаровавшись в лицензии MINIX, Торвальдс 25 августа 1991 года объявил группе пользователей MINIX, что разрабатывает операционную систему, похожую на MINIX. Хотя ядро изначально разрабатывалось для MINIX с использованием компилятора GNU C, ядро Linux быстро стало уникальным проектом, и команда разработчиков выпустила версию 1.0 в 1994 году.

Основные особенности Linux

Хотя ядро Linux унаследовало многие цели и особенности Unix, оно отличается от предыдущей системы следующими способами:

  • Его основным компонентом является ядро, которое разрабатывается независимо от других компонентов операционной системы. Это означает, что Linux использует различные исходные коды (например, GNU) для создания полноценной операционной системы.
  • Это свободная операционная система с открытым исходным кодом. Её ядро распространяется под лицензией GNU General Public License (результат работы Фонда свободного программного обеспечения над проектом GNU) и доступно для загрузки и модификации. GPL предусматривает, что производные работы должны сохранять условия лицензирования оригинального программного обеспечения.
  • Linux имеет монолитное ядро, подобное Unix, но может динамически загружать и выгружать код ядра.
  • В отличие от традиционных реализаций Unix, эта операционная система поддерживает многопроцессорность (SMP).
  • Его ядро предсказуемо, что является еще одним отличием от Unix.
  • В его ядре не делается различий между потоками и обычными процессами.
  • Данная операционная система имеет интерфейс командной строки (CLI), а также может иметь графический пользовательский интерфейс (GUI).

Популярные дистрибутивы Linux

Сегодня разработчики поддерживают множество популярных дистрибутивов Linux. Среди них одним из старейших является Debian, бесплатный дистрибутив с открытым исходным кодом, насчитывающий 50 000 программных пакетов. Debian послужил прообразом для другого популярного дистрибутива, Ubuntu, финансируемого компанией Canonical Ltd. Ubuntu использует формат пакетов deb и инструменты управления пакетами Debian, а разработчики Ubuntu вносят изменения в Debian.

Аналогичные отношения существуют между Red Hat, Fedora и CentOS. Компания Red Hat создала собственный дистрибутив Linux в 1993 году, а десять лет спустя разделила свои усилия на Red Hat Enterprise Linux и Fedora — операционную систему, основанную на сообществе, которая использует ядро Linux и компоненты проекта GNU.

Результат

В этой статье мы рассмотрели истоки Linux в Unix и некоторые из его определяющих особенностей. Если вас интересует история Linux и вариантов Unix (включая FreeBSD), хорошей отправной точкой может стать наша серия статей о FreeBSD. Вы также можете ознакомиться с нашей серией статей «Начало работы с Linux».

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может понравиться