История Linux

Операционные системы на базе ядра Linux представляют собой большую группу Unix-подобных ОС. Конкретную разновидность принято называть дистрибутивом Linux.

Каждый дистрибутив имеет собственное имя. Например, наиболее популярными дистрибутивами GNU/Linux по данным на 2022 год являются MX Linux, EndeavourOS, Mint, Manjaro, Pop!_OS, Ubuntu, Fedora, Debian. Всего существуют сотни различных дистрибутивов.

Дистрибутивы развиваются на протяжении своего периода «жизни», поэтому представлены различными версиями. Более новые версии поддерживаются, остальные являются устаревшими. Одни дистрибутивы умирают, другие – рождаются.

Появление систем GNU/Linux можно считать естественной эволюцией компьютерных технологий. Далее в общих чертах излагаются предпосылки их возникновения и история развития.

История Unix

GNU/Linux не являются разновидностью систем Unix, однако они являются Unix-подобными. Это значит, что в Linux соблюдаются принципы разработки, функционирования, организации среды, которые были заложены в Unix. Однако код, лежащий в основе Linux, не был взят из Unix. Его писали с нуля.

Когда-то Unix была представлена одной системой и сыграла огромную историческую роль в развитии компьютерной науки. Позже на основе Unix были разработаны другие системы. На сегодняшний день "чистой" Unix не существует.

Unix начал разрабатываться в 1969 году группой программистов, работавших в американской фирме Bell Labs. В начале 70-х для удобства разработки Unix, а скорее для того, чтобы большая часть ОС была независима от архитектуры компьютера, Денисом Ритчи и Кеном Томпсоном был создан язык Си. На этом языке до сих пор пишутся основные части большинства ОС.

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

К середине 70-х годов Unix получил широкое распространение. Тут следует оговорить, что в то время персональных компьютеров еще не было и под словами "широкое распространение" имеются в виду организации, в основном это были университеты и крупные фирмы. На тот момент Unix распространялся бесплатно. Обзаведясь копией ПО, организация могла его расширять и адаптировать под свои задачи. В результате к концу десятилетия начинают появляться разновидности Unix'а, в том числе проприетарные (коммерческие).

В начале 80-х Unix был выбран в качестве системы, под которой планировалось развивать сетевой протокол TCP/IP, тем самым ОС получила хорошую поддержку и прижилась на серверах.

Однако появление коммерческих Unix'ов тормозило развитие ОС. Фирмы, продающие свои дистрибутивы, запрещали распространять их исходные коды. Другие программисты не могли воспользоваться уже сделанным и начинали реализовывать функцию или программу заново.

Кроме того, каждая фирма вносила в ПО свои собственные изменения. В результате программы, написанные в одной системе, не могли работать в другой; то есть Unix'ы стали несовместимы. Проблема совместимости важна в IT, это касается как оборудования, так и ПО.

Хотя впоследствии вопросами стандартизации Unix стали заниматься, закрытость системы оказала негативное влияние. Возможно это привело к тому, что Unix упустил шанс развиваться в сторону операционной системы для персональных компьютеров.

Проект GNU

В 1982 году Ричард Столлман столкнулся с проблемой, когда лицензия ПО не позволяла ему обмениваться исходными кодами в стенах института. Он ушел с работы и в 1983 году основал проект GNU, целью которого провозглашалось создание коллекции открытого и свободного программного обеспечения, в том числе операционной системы.

GNU является рекурсивной аббревиатурой от "GNU is Not Unix". Кроме того, gnu с английского переводится как "антилопа гну", которая и стала символом проекта.

Для того, чтобы программисты могли разрабатывать ПО, Столлман создал редактор Emacs. В рамках GNU был основан благотворительный фонд, отвечающий за распространение свободного ПО. Фонд получал некоторые деньги, в том числе от продажи руководств и сопутствующих услуг.

На протяжении 80-х годов в рамках проекта GNU была создана большая коллекция ПО, основная часть которого впоследствии стала входить в состав дистрибутивов Linux. Поэтому их правильнее называть GNU/Linux. Однако к 90-му году в рамках GNU ядро операционной системы так и не было готово.

Minix

В 1987 году Эндрю Таненбаум создал маленькую учебную Unix-подобную операционную систему, которую назвал Minix. С ее помощью студенты Таненбаума знакомились с принципами работы ОС и с тем, из чего она состоит. Чтобы каждый мог изучать исходные коды, Minix распространялась под одним из вариантов свободных лицензий.

Операционная система Minix оказала влияние на появление Linux, так как большинство студентов изучали строение ОС именно на основе Minix.

Рождение Linux

В начале 90-х Линус Торвальдс изучал ОС Minix. Однако его не устроили скромные возможности учебной системы. Тогда он начал создавать собственную операционную систему, программируя системные вызовы. К концу лета 1991 года появился сырой вариант ядра. Позже ядро назвали Linux.

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

Поскольку ядро Linux было свободно-распространяемым, а его исходные коды открыты, оно стало быстро развиваться благодаря большому сообществу программистов.

Развитие GNU/Linux

Так как проекту GNU до полноценной системы не хватало только ядра, Linux оказался как нельзя кстати. Ядро "обросло" многочисленным ПО из проекта Столлмана и превратилось в полноценную операционную систему GNU/Linux. Чаще ее называют просто Linux.

В последующей разработке ядра Linux и прикладного ПО приняли участие программисты со всего мира, основным средством взаимодействия был и остается Интернет.

Постепенно начали появляться компании, продающие свои дистрибутивы – версии операционных систем на базе ядра Linux. В основном такие фирмы зарабатывали на технической поддержке и продаже дисков. Не будем забывать, что в 90-е и нулевые Интернет был относительно медленный и дорогой. Поэтому установочные диски пользовались популярностью.

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

Дистрибутивы отличаются между собой не столько графическим интерфейсом, сколько областью применения (для сервера или настольного компьютера), системой управления пакетами и другим.

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

Однако и по сегодняшний день операционные системы GNU/Linux чаще встречаются на серверах, в том числе веб-серверах, и суперкомпьютерах. В меньшей степени – на настольных компьютерах.

Курс с ответами к заданиям и дополнительными уроками в PDF


Введение в Linux и Bash. Курс




Все разделы сайта