Предпосылки возникновения и история операционных систем GNU/Linux UNIX, GNU, MINIX, LINUX, развитие GNU/Linux
Введение Операционные системы на базе ядра Linux представляют собой очень многообразную группу Unix- подобных операционных систем. Более грамотное название этих операционных систем GNU/Linux. Каждый конкретный тип операционной системы на базе ядра Linux принято называть дистрибутивом. Каждый дистрибутив имеет собственное имя. Например, дистрибутивами GNU/Linux являются следующие операционные системы : Debian, AltLinux, Mandriva, Fedora, Ubuntu и многие другие. Каждый дистрибутив так или иначе развивается на протяжении своего относительно длинного или короткого периода « жизни », поэтому представлен различными версиями.
UNIX В настоящее время уже нет « чистой » Unix, хотя на заре своего появления она была одной единственной и неповторимой. Unix в свое время послужила основой для появления множества операционных систем, которые сегодня мы называем «Unix- подобные », и заложила важные принципы разработки и функционирования ОС вообще. Unix начала разрабатываться в 1969 г. группой программистов, работавших в американской фирме Bell Laboratories. В начале 70- х годов для удобства разработки Unix, а скорее для того, чтобы большая часть ОС была независима от архитектуры компьютера, Денисом Ритчи и Кеном Томпсоном был создан язык Си. На этом языке до сих пор пишутся основные части большинства ОС. Основной задачей при разработки Unix в то время было создание удобной среды для программистов. Приветствовался совместный труд при разработке программ. Так легче было увидеть ошибки, выделить хорошие идеи и забраковать тупиковые. К середине 70- х Unix уже был достаточно широко распространен. Коллектив каждой организации, обзаведясь копией Unix ( который распространялся бесплатно ), старался его улучшить и расширить под свои нужды. Поэтому к концу десятилетия уже начинают появляться разновидности Unix. И даже появляется вариант коммерческого Unix' а. В начале 80- х Unix был выбран в качестве системы, под которой планировалось развивать сетевой протокол TCP/IP, тем самым он получил хорошую поддержку для дальнейшего совершенствования и « прижился » на серверах. С появлением коммерческих Unix' ов, полноценное развитие системы приостановилось. Это было связано с тем, что каждая фирма, продающая свой Unix, запрещала распространять свои исходные коды. Другие программисты не могли воспользоваться уже сделанным и начинали реализовывать уже созданную кем - то функцию или программу сначала. Кроме того, каждая фирма вносила свои собственные изменения. В результате программы, написанные для одной системы, не могли работать в другой. Т. е. Unix' ы стали несовместимы между собой. Хотя вопросами стандартизации Unix в последствие стали заниматься, однако закрытость системы оказала на нее негативное влияние, и возможно привело к тому, что она упустила возможность возможность развиваться в сторону персональных компьютеров.
GNU В 1982 г. Ричард Столлман столкнулся с ситуацией, когда лицензия ПО не позволяла ему обмениваться исходниками программ в стенах института, где он работал. Он нашел это возмутительным и неестественным до такой степени, что ушел с работы. В 1983 г. он основал проект GNU, целью которого было создание открытой и свободной ОС. GNU это аббревиатура фразы "GNU - это не UNIX" (GNU - Not UNIX). Проект Ричарда Столлмана был поддержан многими людьми. Для того, чтобы программисты могли писать программы Столлман разработал редактор Emacs. Потом был основан благотворительный фонд, отвечающий за распространение свободного ПО. Фонд получал некоторые деньги для проекта GNU путем распространения ПО и продажи руководств и сопутствующих услуг. На протяжении 80- х годов в рамках проекта GNU была создана достаточно большая коллекция ПО. Однако к 90- му году ядро операционной системы еще не было готово.
MINIX В 1987 г. Эндрю Таненбаум создал маленькую учебную Unix- подобную операционную систему, которую назвал Minix. На основе этой системы студенты Таненбаума знакомились с принципами работы ОС и с тем, из чего она состоит. Для того, чтобы каждый мог изучить исходные коды системы, она распространялась под лицензией, позволяющей ее свободное распространение ( аналогично программному обеспечению из проекта GNU). ОС Minix так или иначе оказала влияние на рождение Linux, т. к. большинство студентов изучали строение ОС именно на ее основе.
LINUX В 1991 г. Линус Торвальдс познакомился с ОС Minix. Однако она не удовлетворяла его потребности в полной мере. И он начал создавать собственную операционную систему, программируя системные вызовы. К концу лета 91 года уже появляется сырой вариант ядра системы. В последствие данное ядро получило имя Linux. Примечание. Ядро операционной системы обеспечивает взаимодействие программ ( прикладных и системных ) с аппаратной частью компьютера, регулирует распределение памяти и процессорного времени между работающими программами. Поскольку Linux был свободен ( каждый мог копировать ) и открыт ( исходные коды были доступны ), он начала быстро распространяться и видоизменяться.
Развитие GNU/Linux Поскольку проекту GNU в начале 90- х не хватало только ядра, то ядро Linux оказалось как нельзя кстати. Постепенно оно « обрастало » различным ПО из проекта Столлмана и превращалось в полноценную операционную систему GNU/Linux. В дальнейшей разработке этой операционной системы приняли участие множество людей по всему миру, которые в основном общались между собой с помощью Интернет. Спустя достаточно небольшой промежуток времени ( возможно несколько лет ) появились компании, продающие свои версии ( дистрибутивы ) операционных систем на базе ядра Linux. Следует иметь ввиду, что свобода и открытость не есть аналогия бесплатности. Еще недавно Интернет был медленный и дорогой, поэтому пользователи GNU/Linux часто заказывали диски почтой и оплачивали поставщику расходы средств и времени. Также в мире Linux фирмы зарабатывают путем оказания технической поддержки. Например, покупая коробочную версию того или иного дистрибутива, вам предоставляется возможность в течение нескольких месяцев или лет задавать вопросы по ( или телефону ) при возникновении трудностей при использовании ПО. Если первые версии Linux были трудны в установке и настройке, то разработчики дистрибутивов позаботились о том, чтобы поставить Linux на компьютер мог обычный пользователь. Поскольку GNU/Linux занимались и занимаются многие люди и фирмы, каждый из которых вносит свои улучшения и дополнения, то в настоящее время существует огромное количество дистрибутивов. Дистрибутивы различаются между собой по многим признакам, например, областью применения ( для сервера или ПК ) или системой управления пакетами ( как устанавливается ПО ) и др. С течением времени Linux адаптировали под разные архитектуры компьютеров, поэтому в настоящее время встречается на многих устройствах. На сегодняшний день операционные системы GNU/Linux больше распространены на серверах и суперкомпьютерах и в малой степени на персональных компьютерах. Однако движение в сторону последних наблюдается.
Дистрибутивы Linux Ubuntu дистрибутив, основанный на Debian GNU/Linux и быстро завоевавший популярность. Поддерживается сообществом, разрабатывается Canonical Ltd. Основная сборка ориентирована на лёгкость в освоении и использовании, при этом существуют серверная и минимальная сборки. Linux Mint дистрибутив, основанный на Ubuntu и полностью с ним совместимый, включающий в себя по умолчанию Java, Adobe Flash и многое другое. openSUSE дистрибутив, разрабатываемый сообществом при поддержке компании Novell. Отличается удобством в настройке и обслуживании благодаря использованию утилиты YaST. Fedora поддерживается сообществом и корпорацией RedHat, предшествует выпускам коммерческой версии RHEL. Debian GNU/Linux дистрибутив, разрабатываемый обширным сообществом разработчиков. Служит основой для создания множества других дистрибутивов. Отличается строгим подходом к включению несвободного ПО. Mandriva Linux французско - бразильский дистрибутив, объединение бывших Mandrake и Conectiva ( англ.). Slackware один из старейших дистрибутивов, отличается консервативным подходом в разработке и использовании. Gentoo дистрибутив, полностью собираемый из исходных кодов. Позволяет очень гибко настраивать конечную систему и оптимизировать производительность, поэтому часто называет себя мета - дистрибутивом. Ориентирован на экспертов и опытных пользователей. Arch Linux ориентированный на применение самых последних версий программ и постоянно обновляемый, поддерживающий одинаково как бинарную, так и установку из исходных кодов и построенный на философии простоты KISS, этот дистрибутив ориентирован на компетентных пользователей, которые хотят иметь всю силу и модифицируемость Linux, но не в жертву времени обслуживания. CentOS дистрибутив Linux, основанный на свободных исходных текстах коммерческого дистрибутива Red Hat Enterprise Linux компании Red Hat, и совместимый с ним. Срок поддержки каждой версии CentOS составляет 7 лет ( с помощью выпуска обновлений безопасности ). Новая версия CentOS выходит раз в 2 года и каждая версия регулярно обновляется ( каждые 6 месяцев ) для поддержки новых аппаратных средств. В результате это приводит к безопасной, легко обслуживаемой, надежной, предсказуемой и масштабируемой Linux среде.
Open Source ( открытое программное обеспечение ) Идея программного обеспечения с открытым исходным кодом достаточно проста : когда программисты могут читать, распространять и изменять код, то он будет доведен до совершенства. Люди могут изменить его, исправлять, отлаживать, они могут делать это достаточно быстро, согласно требованиям современности. Это ПО будет более гибким и лучше по качеству, чем программное обеспечение, которое был разработано с использованием обычных способов, потому что больше людей испытали его в разнообразных условиях, по сравнению с тем, что может когда - либо себе позволить разработчик закрытого ПО.
Проекты Open Source Операционная система Linux SAMBA - протокол, используемый для передачи файлов и печати на работающих связанных ПК, изначально поддерживается MS Windows NT, OS/2 и Linux, обеспечивает взаимосвязь в смешанных средах. Сервер Apache HTTP. Сервер работает на UNIX, Windows NT и многих других операционных системах. Изначально известный как A PAtCHy server (« пятнистый сервер »), получившийся на основе существующего кода и серии заплаток, готовый код заслужил имя родного американского племени Apache, известного своими превосходными навыками в стратегии военного дела и неисчерпаемой выносливостью. Apache показал себя более быстрым, стабильным и функционально полным, чем многие другие веб - серверы. OpenOffice.org свободный пакет офисных приложений, разработанный с целью предоставить альтернативу Microsoft Office как на уровне форматов, так и на уровне интерфейса пользователя. Одним из первых стал поддерживать новый открытый формат OpenDocument. Официально поддерживается на платформах Microsoft Windows, GNU/Linux Intel, Mac OS X Intel/PowerPC и Solaris SPARC/Intel. Существуют порты для OpenSolaris, FreeBSD и Linux PowerPC.
Резюме Linux – это одна из реализаций UNIX. Linux – операционная система, написанная на языке программирования Си. De gustibus et coloribus non disputandum est (« О вкусах и цветах не спорят »): для каждого найдется свой Linux. Linux использует инструменты GNU, ряд свободно доступных стандартных инструментов для обслуживания операционной системы.