На этом шаге мы познакомимся с историей ОС Linux.
История создания Linux проста. Она началась в 1991 году. Финский аспирант Линус Торвальдс, приобретя пакет операционной системы MINIX, разочаровался в поставляемой с ней программе эмуляции терминала [1].
Рис.1. Линус Бенедикт Торвальдс (Linus Benedict Torvalds) 28 декабря 1969, Хельсинки, Финляндия) - финно-американский программист, хакер.
Он решил переписать ее, не привязывая ни к какой операционной системе. После некоторых модификаций начало появляться подобие ОС, а затем, когда исходный код был выложен на сервер, проект стал развиваться благодаря усилиям и главное, энтузиазму программистов, после чего он стал полноценной операционной системой.
Проект взял многое от существовавшей уже тогда операционной системы UNIX. Название проекта было «собрано» из имени разработчика и буквы X в конце слова как свидетельства схожести с UNIX. Название Linux проект получил не сразу. Изначально он назывался Freax как гибрид английских слов free (бесплатный, свободный) и freak (чудной) с окончанием X, однако, когда Линус Торвальдс выкладывал код на сервере, проект получил свое окончательное имя и логотип. Пингвин TUX (рисунок 2) - символ Linux.
Рис.2. Tux — официальный талисман Linux
Первый человек, назвавший пингвина Таксом («TUX»), Джеймз Хьюз (James Hughes), написал, что это означает «(T)orvalds (U)ni(X)».
Tux с трубкой — символ Slackware.
По прошествии многих лет после создания UNIX вследствие долгого развития и усовершенствования как самим Линусом Торвальдсом, так и многочисленными разработчиками-добровольцами Linux стала полноценным некоммерческим клоном UNIX.
Однако как нельзя сделать операционную систему без ядра, так и ядро будет бесполезно без утилит, которые использовали бы его возможности. Благодаря проекту GNU, Линус Торвальдс сразу получил возможность использовать с Linux свободные утилиты: bash, компилятор gcc, архиваторы tar и gzip и многие другие уже известные и широко используемые приложения, которые могли работать с его UNIX-совместимым ядром. Так Linux сразу попал в хорошее окружение и в сочетании с утилитами GNU представлял собой очень интересную среду для разработчиков программного обеспечения даже на самой ранней стадии своего развития.
Принципиальным шагом вперёд было именно то, что из ядра Linux и утилит и приложений GNU впервые стало возможно сделать полностью свободную операционную систему, то есть работать с компьютером и, более того, разрабатывать новое программное обеспечение, пользуясь только свободным программным обеспечением. Идеал полностью некоммерческой разработки, сформулированный Столлманом, теперь мог быть воплощён в жизнь.
Вскоре появлялись теоретические возможности воплощения идеала, но это не означало его немедленной практической реализации. Совместимость Linux и утилит GNU была обусловлена тем, что и то, и другое писалось с ориентацией на одни и те же стандарты и практику. Однако в рамках этой практики (то есть при наличии множества различных UNIX-систем) оставался большой простор для несовместимости и различных решений. Поэтому на начальном этапе разработки ядра каждое заработавшее на Linux приложение GNU было для Линуса очередным достижением. Первыми стали bash и gcc. Таким образом, сочетание GNU и Linux давало возможность создать свободную операционную систему, но само по себе ещё не составляло такой системы, потому что Linux и различные утилиты GNU оставались разрозненными программными продуктами, написанными разными людьми, не всегда принимавшими в расчёт то, что делали другие. Основным же свойством любой системы является согласованность её компонентов.
После определённого периода разработки на Linux уже стабильно работал ряд важнейших утилит GNU. Скомпилированное ядро Linux с небольшим комплектом скомпилированных уже на Linux утилит GNU составляло набор инструментов для разработчика программного обеспечения, желающего использовать свободную операционную систему на своём персональном компьютере. В таком виде Linux уже не только годился для разработки Linux, но и представлял собой операционную систему, в которой можно было уже выполнять какие-то прикладные задачи.
Попутно с развитием самой системы она была перенесена на множество других платформ благодаря тому, что основная масса кода была написана на аппаратно-независимом языке С (в этом случае переписывается только та часть кода программы, которая ответственна за «общение» программного обеспечения с аппаратным обеспечением компьютера). Выход первой официальной версии Linux состоялся в 1994 году. Она содержала все необходимые функции, включая работу с сетями. Эта версия была совместима с UNIX, для нее переписывались многие программы. К разработке подключилось еще больше программистов.
Совместимость с UNIX в этот момент означала, что операционная система должна поддерживать стандарт POSIX.
Linux уверенно завоевывала авторитет. В 1995 году был зарегистрирован товарный знак Linux, а в 1996 году вышла версия Linux 2.0. До сих пор контроль над развитием ОС сохраняет за собой Линус Торвальдс. Отдельно следует отметить принципы распространения Linux. Изначально и до сих пор Linux распространяется как свободное программное обеспечение но лицензии GPL (General Public License - стандартная общественная лицензия).
Каждый человек может получить доступ к исходному коду операционной системы, дополнить, изменить что-либо или несвободное программное обеспечение пользовать код в своих проектах. Все это возможно с условием, что модифицированный исходный код будет так же доступен любому человеку, как и оригинал, и распространяться по лицензии GPL.
Сейчас Linux работает на разных типах компьютеров и устройств — карманных компьютерах, мобильных телефонах, игровых приставках, персональных компьютерах, серверах, суперкомпьютерах, музыкальных инструментах и даже на оптический прицелах снайперских винтовок — благодаря своей гибкости и возможности переноса на другие платформы.
На следующем шаге мы познакомимся с составом ОС UNIX\Linux.