Вступление про Linux и не только
Этот человек в отдельных представлениях не нуждается! Он уже писал для нашего сайта цикл статей о Евро 2012 (финальной части чемпионата европы по футболу), проходившей в нашем родном городе Львове.
На этот раз он решил написать для нашего сайта новую статью, посвященную операционной системе «Linux» (Линукс), которой мы с удовольствием и открываем новый раздел на сайте!
Что-то вроде оглавления:
- Истоки реки Linux.
- Взрыхление почвы для "ядерного писателя".
- Альтернативное ядро и почему именно Торвальдс?
- Феномен развития GNU/Linux.
- Сегодняшнее положение Linux на рынке электронных устройств.
- Терминология: Open Source или Free software?
- На чем зарабатывают Linux компании.
-
Заключение. А ты - установил Linux?
Истоки реки Linux
Мы все знаем, что Linux это - круто… он выполняет бесконечные циклы за 5 секунд
Линус Торвальдс о преимуществах Linux на Amsterdam Linux Symposium.
Откуда и почему появился Linux? Да, этот вопрос иногда мучает продавцов в отделах сбыта некой корпорации (той в которой сотрудники, играя в дартс, на мишенях используют фото автора Linux), а также части держателей акций упомянутой "почти монополии". Впрочем, такой вопрос появляется не только у них. Итак, откуда? Из славного прошлого, конечно!
Ведь как было раньше: программу писали в машинных кодах, а это процесс медленный и трудоемкий. "Старались" и производители самих вычислительных машин, радуя пользователей, разнообразием и совершенствованием аппаратной части («железа») вычислительных комплексов. Также усложнялись и сами пользовательские программы - все это привело к появлению операционных систем (ОС) - комплекса системных программ для взаимодействия пользователей (нас с Вами) с компьютером. ОС абстрагировали нас от нюансов функционирования «железа» компьютера и значительной части рутины, при написании самих программ.
Операционных систем было предостаточно. Выделим ОС Multics, оказавшую большое влияние на компьютерную индустрию в середине 60-х годов. Концепции и многие идеи Multics используются доныне в современных ОС.
Несколько человек, разрабатывавших ОС Multics, стали заниматься новой ОС. Так в конце 60-х годов была написана первая версия ОС "UNICS" (Uniplexed Information and Computing System - односложная информационная и вычислительная служба) позже название превратилось в известное всем - UNIX.
Затем появилась версия UNIX на языке высокого уровня Си, что упрощало перенос этой ОС на новое «железо» и, в конечном итоге, способствовало стремительному росту ее популярности. Не пришлось долго ждать и коммерческих версий UNIX.
С появлением программных продуктов возникает и естественное желание, у причастных к их появлению, увековечить авторство над ними. Первой ласточкой условно можно считать ленту с компьютерной программой, предоставленную на регистрацию в Copyright Office в США 30 ноября 1961 года.
Что за зверь такой этот "copyright"?
В английском языке слово “копирайт” обозначает действие, которое может производиться только автором, либо - с разрешения автора. Символ “копирайта” © подтверждает право распространения, но никак не владение авторскими правами. Например, автор программы, за которую заказчик заплатил деньги, таки является ее автором, но заказчик, снабдив программу охранным знаком ©, имеет право на ее распространение.
К началу 90-х годов, в основном, сформировалось законодательство, признающее программное обеспечение (ПО) объектом интеллектуальной собственности - своего рода товаром, принадлежащим автору или иному правообладателю. Соответственно, программами можно торговать, а права владения и использования ПО охраняются законодательно. Закон, в настоящее время, рассматривает исходный текст программы наравне с литературным произведением :)
Производители компьютеров и ПО для защиты своих интересов начинают «пугать» пользователей лицензией – своеобразным договором между обладателем авторских прав и пользователем (покупателем) программного обеспечения. Пользователь при этом, по видимому, должен принять вид кота, которому пообещали больше никогда не давать сметану, поджать "хвост" и вытянуться? :)
Фото - кликабельно:
Как наглядный пример сказанного выше - показательный случай, не так давно произошедший с автором сайта и рассказанный им на форуме.
Взрыхление почвы для "ядерного писателя"
Знаешь, нужно быть не просто хорошим программистом, чтобы написать систему, подобную Linux. Нужно быть ещё и хитрой сволочью.
Письмо в группу comp.os.linux.development.system.
Но находятся люди (богатыри!), считающие, что должно быть и ПО с гарантированно открытым процессом разработки и с всегда доступным исходным программным кодом. В 80-х годах Ричард Столлмэн (основатель движения свободного ПО) инициирует проект GNU - создание свободной UNIX-подобной ОС с нуля, без использования оригинального исходного кода UNIX. Аббревиатура операционной системы GNU это - игра слов: GNU’s Not UNIX — «GNU — не UNIX».
Позже им же (с помощью юристов) в 1988 году составляется GPL GNU - General Public License (Открытое лицензионное соглашение GNU) - лицензия на свободное ПО. GPL создается как часть проекта GNU для использования вместе с программными разработками.
Благодаря GPL, сегодня, используя ПО в рамках GNU GPL, мы имеем право свободно копировать, модифицировать (потому что имеем доступ к исходному коду), распространять (в том числе и на коммерческой основе) программы, созданные под этой лицензией. Гарантируется также, что и пользователи всех производных программ - получат упомянутые права на условиях той же лицензии.
Таким образом реализуется принцип наследования прав - «copyleft» (термин, придуманный тем же Ричардом Столлмэном в противовес упоминавшемуся «copyright»). Лицензируя свою работу на условиях GNU GPL, разработчики программы сохраняют за собой авторство над ней. Версий лицензий на сегодняшний день есть три: GPL v1, GPL v2 и GPL v3.
А в начале 1991-го года произошло еще одно замечательное событие - финский студент со шведскими корнями Линус Торвальдс приобрел IBM-совместимый персональный компьютер и - прилично разочаровался в MS-DOS (напомним, это первая ОС от Microsoft Corporation). MS-DOS поставлялась тогда вместе со многими IBM-совместимыми компьютерами. Она, мягко говоря, не впечатлила Торвальдса использованием возможностей, тогдашнего продвинутого чипа Intel серии і386. Он решительно предпочитал более мощную и стабильную ОС UNIX, используемую им на компьютерах Хельсинского университета.
Торвальдс попытался раздобыть ОС UNIX меньше чем за 5 000$, но это ему не удалось (к счастью для всех нас). Линус рассматривал также альтернативную ОС MINIX, от профессора Амстердамского университета Эндрю Таненбаума (Andrew Tanenbaum), но она не устроила его, так как не все ее исходные коды были доступны. В MINIX Торвальдсу также не хватало некоторых функций и той производительности, которой обладала UNIX.
Тогда студент (на тот момент Линус был студентом Хельсинского университета) решает создать новую ОС с нуля! В основу ее ложится как MINIX, так и UNIX. Он берет перерыв в учебе (академический отпуск по-нашему) и посвящает все свободное время проекту.
Если быть скучно-точным, то здесь, в первую очередь, речь идет о разработке с нуля ядра новой ОС. Термин «ядро» в разных ОС трактуется по-разному. В данном контексте под ядром (англ. "kernel") ОС, подразумевается часть операционной системы, постоянно находящаяся в оперативной памяти (ОЗУ) и реализующая базовые функции всей системы: управление процессами, памятью, устройствами ввода-вывода, планировщиком заданий, обработкой системных прерываний и т.д.
В ОЗУ находится, по крайней мере, большая часть ядра. Такой подход удобен тем, что обеспечивает высокую скорость работы самой ОС.
У ядра есть и функции для поддержки приложений: приложения могут обращаться к нему с запросами, системными вызовами, например, для открытия и чтения файла, вывода графической информации на дисплей и т.д. Функции ядра, которые могут вызываться приложениями, образуют интерфейс прикладного программирования - API (Application Programming Interface).
Чтобы подчеркнуть наличие части ОС GNU на момент написания ядра Торвальдсом и, вообще, для политкорректности, при упоминании этой ОС, мы будем употреблять обозначение GNU/Linux.
Неизвестно, в полной ли мере осознавал Торвальдс огромную работу, которую необходимо было проделать, а также последствия сего для своей жизни и жизни других людей, но в октябре осенью того же года миру была представлена первая официальная версия ОС за номером 0.02. Она могла работать, как с bash shell (традиционный текстовый пользовательский интерфейс в Unix-подобных системах для обработки и исполнения команд), так и с GCC (GNU Compiler Collection) - набор компиляторов для различных языков программирования, разработанный в рамках проекта GNU.
По признанию самого Торвальдса, одним из его лучших решений было выпустить Linux под лицензией GNU General Public License, а не в соответствии с более строгими лицензиями, как планировалось до этого. Это позволило любому желающему изучать, использовать, изменять, расширять и распространять ОС GNU/Linux, оставляя свободным доступ ко всем ее исходным кодам. И эта ОС привлекла многих разработчиков, которые начали изменять, исправлять и улучшать ее. Благодаря соответствующему лицензионному соглашению, ОС GNU/Linux быстро стала совместным проектом, который и по сей день разрабатывается огромным количеством людей.
Статистика использования операционной системы GNU/Linux и количество ее пользователей начали стремительно расти. Это, фактически, стало началом крупнейшего совместного проекта, о котором когда-либо знал мир!