О терминах

Linux, произносится «ли́нукс» — общее название Unix-подобных операционных систем на основе одноимённого ядра и собранных для него библиотек и системных программ, разработанных в рамках проекта GNU. Другими словами, Linux - общее название операционных систем, в которых работает ядро, которое называется "Linux".

Также Linux - это название ядра операционной системы, - программы, организующей работу компьютерной системы и её взаимодействие с программами пользователя. Ядро может работать само по себе в какой-нибудь микропроцессорной системе, но без внешних программ оно не имеет смысла.

Ядро Linux работает на множестве архитектур процессора таких как Intel x86, x86-64, PowerPC, ARM, Alpha AXP, Sun SPARC, Motorola 68000, Hitachi SuperH, IBM S/390, MIPS, HP PA-RISC, AXIS CRIS, Renesas M32R, Atmel AVR32, Renesas H8/300, NEC V850, Tensilica Xtensa и многих других.

В отличие от большинства других операционных систем, операционная система Linux не имеет единой «официальной» комплектации. Вместо этого Linux поставляется в большом количестве так называемых дистрибутивов, в которых ядро Linux соединяется с утилитами GNU и другими прикладными программами (например, X.org, делающими её полноценной многофункциональной операционной средой.

Дистрибутив Linux - это законченное решение реализации операционной системы на базе ядра Linux. Так если разработчик собрал набор программ, в который включается ядро Linux, снабдил установщиком, документацией, создал своё оформление, организовал поддержку и выпустил свой набор в распространение или продажу. Так вот этот набор "всего" и есть дистрибутив. В качестве разработчиков дистрибутивов могут выступать как сообщества программистов, так и крупные коммерческие компании. В большинстве случаев код программ в составе дистрибутива открыт всем пользователям и сообщества программистов могут его модифицировать, постоянно совершенствуя как себя, так и программы. Многие дистрибутивы живут за счёт пожертвований пользователей или крупных коммерческих компаний.

Количество дистрибутивов Linux постоянно растёт и перевалило на момент конца 2010 года за 300. Наиболее известными дистрибутивами Linux являются Arch Linux, CentOS, Debian, Fedora, Gentoo, Mandriva, Mint, openSUSE, Red Hat, Slackware, Ubuntu.

Российские дистрибутивы — ALT Linux, ASPLinux, Calculate Linux, НауЛинукс, AgiliaLinux (ранее MOPSLinux), Runtu и Linux XP.

Немного истории

Линус Торвальдс В 1990 году, финский хакер Линус Торвальдс, решив познакомиться с операционной системой Unix, установил себе на компьютер, кстати купленный в этом же году, учебную операционную систему Minix Эндрю Таненбаума (В начале 90-х, PC-совместимые машины продавались с предустановленной системой DOS. О Unix знали лишь в университетских кругах и приобрести её было не так уж просто.)

В процессе работы, Линус обнаружил массу недостатков Minix, но эта система была все-лишь учебным пособием и распространялась по особой лицензии. Линус не стал кардинально дорабатывать Minix - всё ограничилось заплаткой Брюса Эванса, но нужно было решить проблему со связью с университетским сервером - из-за плохой реализации программы эмуляции терминала, нужна была альтернатива. Поэтому Линус решил создать свою программу для соединения с университетской сетью. Увлечённый процессом, он сам того не ожидая создал не только нужную программу, но и множество улучшений к Minix, которые в последствии вылились в альтернативную операционную систему. На тот момент, в основе системы работало модифицированное ядро Minix.

Когда Линус понял, что создал не просто клон или улучшение Minix, а набор программ, которые "тянут" на операционную систему, он решил приблизить своё детище к стандарту POSIX, реализовав функции первой необходимости и поделиться своим опытом с другими программистами-хакерами.

Первая версия 0.01 системы появилась 17 сентября 1991 года, Линус выложил её в свободный доступ, - она не отличась стабильностью и поддерживала только одну архитектуру. Одно из писем Торвальдса 1):

     From: (Linus Benedict Torvalds)
     To: Newsgroups: comp.os.inix
     Subject: Чего вам больше всего не хватает в minix?
     Summary:  небольшой  опрос  для  моей операционной системы  

     Привет всем  пользователям minix! Я тут пишу  (бесплатную) операционную
 систему   (любительскую  версию   --   она   не  будет   такой   большой   и
 профессиональной, как gnu) для 386-х и 486-х AT. Я вожусь с этим с апреля, и
 она, похоже, скоро будет готова. Напишите мне, кому что нравится/не нравится
 в  minix, поскольку моя ОС на нее похожа  (кроме всего прочего,  у нее -- по
 практическим соображениям -- то же физическое размещение файловой системы).
     Пока что  я  перенес в  нее  bash  (1.08)  и gсс (1.40)  , и все  вроде
 работает. Значит, в ближайшие месяцы у меня получится уже что-то работающее,
 и  мне  бы хотелось знать,  какие  функции  нужны  большинству.  Все  заявки
 принимаются, но выполнение не гарантируется : -)

     Линус (Torvalds@klaava.Helsinki.fi)

     PS. Она  свободна  от кода  minix  и  включает мультизадачную  файловую
 систему. Она НЕ переносима (используется переключение  задач 386 и  пр.)  и,
 возможно,  никогда не  будет поддерживать  ничего,  кроме  АТ-винчестеров --
 потому что у меня больше ничего нет : - (.

Разработку "подхватили" хакеры энтузиасты и начали предлагать свои доработки и улучшения. Система "пошла по сети", и в конце 1991 года, Linux по-настоящему уже пользовалось несколько человек 2):

Тут-то и начался ее стремительный взлет. Люди стали переходить от Minix
к Linux. В то время Linux еще многого не  умела из того, что умела Minix, но
самые ходовые  вещи в  ней были.  Да еще эта  новая возможность, которую все
сразу  оценили:  подкачка  позволяла запускать такие большие программы,  для
которых фактически не было памяти. Когда память кончалась,  можно было взять
использованный  кусок, сохранить его  на  винт,  запомнить,  куда,  и  снова
использовать кусок памяти. Это было важным событием в начале 1992 года.

В декабре 1991 года выходит версия 0.11, в которой добавлена поддержка дисковода гибких дисков. С этого момента Linux начинает считаться как независимая от Minix система. В версии 0.12 Линус отказывается от написанной им самим лицензии, в пользу GPL, созданной Ричардом Столлманом.

Очень важный шаг в развитии системы был сделан хакером Орестом Зборовски (Orest Zborowski), который в версии 0.96 (март 1992 г.) перенёс графическую систему X Window в Linux. С этого момента Linux могла работать в графике.

Постоянно улучшаясь сообществом хакеров и самим Линусом, система (включая ядро) приняла очертания стабильной и в марте 1994-го года вышла версия Linux 1.0, правда первая заплатка вышла уже пару дней спустя. Исходные тексты этой версии системы занимали 1 мегабайт.

Параллельно с развитием ядра, появлялись группы хакеров и сообщества, которые сами начали собирать первые дистрибутивы. Первыми были дистрибутив Slackware Патрика Фолькердинга (Patrick Volkerding) и\или 3) Yggdrasil Адама Ритчера (Adam Ritcher). Softlanding Linux System Питера МакДональда (Peter MacDonald) - ещё один ранний дистрибутив, ставший "отправной точкой" для Slackware и Debian.

В ноябре 1995-го года, Линус перенёс ядро (портировал) на архитектуру Alpha, а в июне 1996-го выходит уже версия 2.0, исходные коды которой занимали 5 Мегабайт.

В начале 2001-го, взамен версии ядра 2.2, содержащему большое количество ошибок, выходит версия 2.4.

17.12.2003 - выходит версия 2.6.0, в которой улучшена поддержка многопроцессорных систем: ядро 2.4 могло работать на серверах с двумя, четырьмя или восемью процессорами, а новая версия - могла управлять одновременно 32-мя процессорами. Также в новой версиси преодолён барьер файловой системы в 2 Терабайта. Также замечены и недостатки ядра? - по словам Курта Гарлоффа из SuSE - "менее эффективной стала работа с памятью. 2.6 сможет реально работать лишь с 24 гигабайтами оперативной памяти, в то время как 2.4 справлялась и с 32 гигабайтами. Новое ядро также чаще осуществляет проверку на новые события - 1000 раз в секунду по сравнению со 100 в прошлой версии, что замедляет работу системы в среднем на 1%".

22.06.2011 - вышла стабильная версия ядра 3.0, перескочив с номера версии 2.6.39. Кардинальных отличий в новой версии небыло - просто Линус Торвальдс решил, что «40» — слишком большое число для третьей позиции в номере версии.

октябрь 2011 г. - вышла стабильная версия ядра 3.1. В общей сложности, в версию добавлено более 9000 изменений, в числе которых: поддержка архитектуры OpenRISC, контроллёра игровой приставки Nintendo Wii, реализация подсистемы iSCSI, вложенной виртуализации в гипервизоре KVM, поддержка аппаратного ускорения некоторых карт nVidia, ускорена работа с файловой системой VFS.

Развитие дистрибутивов

Развитие дистрибутивов Linux Как разрасталось сообщество Linux, можно увидеть на этом генеалогическом дереве дистрибутивов.

Из большого множества, выделяются 3 основных дистрибутива, доживших до наших дней: Slackware, Debian, RedHat. На базе этой тройки, были созданы множество ответвлений. Некоторые дистрибутивы живы и в наше время, а некоторым не хватило сил для дальнейшего развития.

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

Разработка ядра сегодня

В отличие от коммерческих систем, таких как Microsoft Windows или Mac OS X, Linux не имеет географического центра разработки. Нет и организации, которая владела бы этой системой; нет даже единого координационного центра. Программы для Linux — результат работы тысяч проектов. Некоторые из этих проектов централизованы, например www.sourceForge.net или www.berlios.de, некоторые сосредоточены в фирмах. Многие проекты объединяют хакеров 4) со всего света, которые знакомы только по переписке. Создать свой проект или присоединиться к уже существующему может любой и, в случае успеха, результаты работы станут известны миллионам пользователей. Пользователи принимают участие в тестировании свободных программ, общаются с разработчиками напрямую, что позволяет быстро находить и исправлять ошибки и реализовывать новые возможности.

История развития UNIX-систем Linux является UNIX-совместимой, однако основывается на собственном исходном коде]] Именно такая гибкая и динамичная система разработки, невозможная для проектов с закрытым кодом, определяет исключительную экономическую эффективность Linux 5). Низкая стоимость свободных разработок, отлаженные механизмы тестирования и распространения, привлечение людей из разных стран, обладающих разным видением проблем, защита кода лицензией GPL — всё это стало причиной успеха свободных программ 6).

Конечно, такая высокая эффективность разработки не могла не заинтересовать крупные фирмы, которые стали открывать свои проекты. Так появились Mozilla (Netscape, AOL), OpenOffice.org (ORACLE), свободный клон InterBase (Borland) — Firebird, SAP DB (SAP). IBM способствовала переносу Linux на свои мейнфреймы.

С другой стороны, открытый код значительно снижает себестоимость разработки закрытых систем для Linux и позволяет снизить цену решения для пользователя. Вот почему Linux стала платформой, часто рекомендуемой для таких продуктов, как СУБД Oracle, DB2, Informix, SyBase, SAP R3, Domino.

Сообщество Linux поддерживает связь посредством групп пользователей Linux.

Ресурсы

Примечания

1) , 2) Из книги "Just for fun" (Ради удовольствия), Линус Торвальдс, Дэвид Даймонд.
3) Кто был первым? Slackware или Yggdrasil? - об этом до сих пор спорят
4) Тут имеется в виду слово «хакер» в его первоначальном понимании — чрезвычайно квалифицированный ИТ-специалист.
Печать/экспорт