Ос linux история создания. История создания Linux

Корни Linux прослеживаются ещё с 70-х годов 20-го века. Точкой отсчёта можно считать появление операционной системы Unix в 1969-м году в США в фирме Bell Laboratories, дочернем подразделении компании AT&T. Unix стала основной для большого количества операционных систем промышленного класса. Самые основные из них отображены на этой временной шкале:

Linux же больше всего обязан своей жизнью двум проектам — GNU и Minix.

GNU

История проекта GNU началась в сентябре 1983-го года. Основоположник проекта GNU, Ричард Столлман (Richard M. Stallman) работал в это время в лаборатории искусственного интеллекта Массачусетского технологического института (Massachusetts Institute of Technology, MIT, Cambridge, Massachusetts). Столлмана называют одним из самых выдающихся программистов нашего времени.

В той среде, к которой принадлежал Столлман, было принято свободно обмениваться программами и их исходными кодами. Лицензия же на Unix от AT&T, к примеру, стоила 40 000 долларов. Позволить себе купить её могли только достаточно крупные фирмы. А без обладания лицензией, программист не имел права использовать исходные коды системы в своих разработках. Это препятствовало обмену идеями в сфере программирования и сильно тормозило процесс создания программ, поскольку вместо того, чтобы позаимствовать готовый кусок кода для решения той или иной задачи, разработчик программы был вынужден писать эту часть кода заново, что сродни изобретению колеса.

Столлман решил изменить это положение вещей в программировании. В 1983-м году он объявил о начале разработки проекта GNU, целью которого было создание полностью открытой операционной системы:

Четверг, 27 сентября 1983 г., 12:35:59 EST

Свободный Unix!

После Дня Благодарения я начинаю писать Unix-совместимую программную систему GNU (Gnu’s Not Unix), которую буду предоставлять свободно(!) всем, кто может её использовать. Нужна помощь в виде времени, денег, программ и оборудования.

GNU будет содержать ядро плюс все утилиты, необходимые для того, чтобы писать и запускать программы на Cи: редактор, оболочку, компилятор Cи, линкер, ассемблер и ещё несколько вещей. После этого будут добавлены программа форматирования текста, YACC, игра Empire, электронная таблица и сотни других вещей. Мы надеемся включить всё, что обычно поставляется с Unix-системами, и всё, что ещё может оказаться полезным, в том числе онлайновую и печатную документацию.

GNU будет способна запускать программы Unix, но не будет идентична Unix. Мы будем вносить в систему улучшения, основываясь на нашем опыте работы с другими операционными системами...


Аббревиатура GNU расшифровывается как «GNU — это не Unix» (GNU is Not Unix). Unix всегда была несвободным ПО, то есть она лишает своих пользователей свободы сотрудничества, а также контроля над своими компьютерами (как Windows в наши дни). Чуть позже Столлман написал свой знаменитый Манифест GNU , который стал основой для лицензии GPL (GNU General Public License). Роль этой лицензии нельзя переоценить, она изменила всю компьютерную индустрию.

Основная идея GPL состоит в том, что пользователь должен обладать следующими четырьмя правами (или четырьмя свободами):

  • Правом запускать программу для любых целей (свобода 0);
  • Правом изучать устройство программы и приспосабливать её к своим потребностям (свобода 1), что предполагает доступ к исходному коду программы;
  • Правом распространять программу, имея возможность помочь другим (свобода 2);
  • Правом улучшать программу и публиковать улучшения, в пользу всего сообщества (свобода 3), что тоже предполагает доступ к исходному коду программы.
Программное обеспечение, распространяемое под этой лицензией, можно как угодно использовать, копировать, дорабатывать, модифицировать, передавать или продавать модифицированные (или даже немодифицированные) версии другим лицам при условии, что результат такой переработки тоже будет распространяться под лицензией GPL. Последнее условие — самое важное и определяющее в этой лицензии. Оно гарантирует, что результаты усилий разработчиков свободного ПО останутся открытыми и не станут частью какого-либо лицензированного обычным способом продукта. Оно также отличает свободное ПО от ПО, распространяемого бесплатно. Одно из требований этой лицензии состоит в том, что продавая ПО под лицензией GPL, вы должны предоставить исходные коды этого ПО каждому, кто захочет получить к ним доступ. Лицензия GPL «делает ПО свободным и гарантирует, что оно останется свободным».

К 1990-му году в рамках проекта GNU было создано большинство компонент, необходимых для функционирования свободной операционной системы. Помимо текстового редактора Emacs, Столлман создал компилятор gcc (GNU C Compiler) и отладчик gdb. Будучи выдающимся программистом, Ричард Столлман в одиночку сумел создать эффективный и надёжный компилятор, который превосходит по своим качествам продукты коммерческих поставщиков, создаваемые целыми группами программистов. Поскольку изначально при его создании ставилась задача обеспечения переносимости, сегодня существуют версии этого компилятора практически для всех операционных систем. Позже были созданы компиляторы и для других языков программирования, включая C++, Pascal и Fortran. Поэтому сейчас аббревиатура GCC расшифровывается как GNU Compiler Collection.

Как пишет Ричард Столлман: «К 1990-му году система GNU была практически закончена, не хватало только одного из базовых компонентов — ядра.» Ожидалось, что ядро (оно получило название Hurd) будет реализовано как набор серверных процессов, работающих на Mach — микроядре, создаваемом в Университете Карнеги-Меллона, а затем в Университете штата Юта. Начало разработки откладывалось в ожидании выпуска Mach, которое, как было обещано, будет выпущено в виде свободно распространяемого программного обеспечения. Но его появление всё откладывалось, и тут появилось ядро, разработанное финским студентом Линусом Торвальдсом, получившее название Linux. Линус создал его в попытках усовершенствовать свою домашнюю операционную систему Minix, о которой стоит упомянуть отдельно.

Minix

В течение 1990-х годов персональные компьютеры на основе микропроцессора Intel, оснащённые операционными системами от Microsoft, заняли господствующее положение на рынке настольных систем и захватили также существенную долю рынка серверов — традиционной сферы применения Unix-систем. Компьютеры на основе Intel и Intel-совместимых процессоров достигли вычислительной мощности, сравнимой с мощностью рабочих станций с Unix. Но большинство коммерческих Unix-систем не имели версий, способных работать на оборудовании Intel. Производители Unix обычно тесно сотрудничали с производителями конкретных процессоров или даже имели долю собственности в компаниях, производивших эти процессоры, а поэтому были заинтересованы в использовании своих собственных разработок. Примерами могут служить линейки процессоров SGI и MIPS.
Поскольку аппаратные возможности персоналок стремительно возрастали, естественно, что рано или поздно должны были появиться варианты Unix для компьютеров на основе Intel-совместимых процессоров. Один из таких вариантов Unix-подобной операционной системы, который сыграл особую роль в истории Linux, был разработан в январе 1987-го года Эндрю Таненбаумом (Andrew S. Tanenbaum), профессором Университета Врие, Амстердам, Нидерланды. Таненбаум был одним из ведущих специалистов в области разработки операционных систем. Свою операционную систему Minix (Миникс) он разработал как учебное пособие, на примере которого показывал студентам внутреннее устройство реальной операционной системы.

Конечно, как операционная система, Minix не была верхом совершенства. Она была ориентирована на микропроцессор Intel 80286, который в то время господствовал на рынке. Но у неё было одно очень важное качество — открытые исходные коды. Каждый, кто имел книгу Таненбаума «Операционные системы», мог изучить и проанализировать 12 000 строк кода, написанного на языке Си и на ассемблере. Это был тот редкий случай, когда исходные коды не были заперты под семью печатями в сейфах разработчика. Великолепный автор, Таненбаум сумел вовлечь самые выдающиеся умы компьютерной науки в обсуждение искусства создания операционных систем. Minix можно было приобрести и отдельно от книги, она могла быть реально установлена на персональный компьютер. Студенты компьютерных факультетов по всему миру корпели над книгой Таненбаума, вчитываясь в коды с целью понять, как работает та самая система, которая управляет их компьютером. И одним из таких студентов был Линус Торвальдс.

Linux

В 1991-м году, Линус Торвальдс , финский студент, чрезвычайно увлёкся идеей написать совместимое с Unix ядро операционной системы для своего персонального компьютера с процессором Intel. Прототипом для будущего ядра стала операционная система Minix: совместимая с Unix операционная система для персональных компьютеров, которая загружалась с дискет и умещалась в очень ограниченной в те времена памяти персонального компьютера.

25-го августа 1991-го года Линус Торвальдс направил первое сообщение о своей разработке в группу новостей comp.os.minix:

From: torvaldsSklaava.Helsinki.Fi (Linus Benedict Torvalds)
To: Newsgroups: comp.os.inix
Subject: Чего вам больше всего не хватает в minix?
Summary: небольшой опрос для моей операционной системы Message-ID: <[email protected]>
Date: 25 августа 1991 г., 20:57:08 GMT
Organization: University of Helsinki

Привет всем пользователям minix!

Я пишу (бесплатную) операционную систему (это просто хобби, ничего большого и профессионального вроде gnu) для AT 386(486). Я вожусь с этим с апреля, и она, похоже, скоро будет готова. Напишите мне, кому что нравится/не нравится в minix, поскольку моя ОС на неё похожа (кроме всего прочего, у неё — по практическим соображениям — то же физическое размещение файловой системы).

Пока что я перенёс в неё bash (1.08) и gсс (1.40), и всё вроде работает. Значит, в ближайшие месяцы у меня получится уже что-то работающее, и мне бы хотелось знать, какие функции нужны большинству. Все заявки принимаются, но выполнение не гарантируется:-)

Линус ([email protected])

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


Название «Linux» новая система получила следующим образом. Самого Торвальдса несколько смущало созвучие этого названия с его именем, поэтому он пытался назвать свою разработку Freax. Это название можно обнаружить в файле kernl/Makefile версии 0.11, и в исходных кодах других программ. Но Ари Лемке, который предоставил место для выкладывания системы на FTP сайте, назвал каталог pub/OS/Linux. И это название закрепилось за новой ОС.

Тот факт, что Линус выложил код своей ОС в интернет, был решающим в дальнейшей судьбе Linux. Хотя в 1991-м году интернет ещё не был так широко распространён, как в наши дни, зато пользовались им в основном люди, имеющие достаточную техническую подготовку. И уже с самого начала Торвальдс получил несколько заинтересованных откликов.

Примерно в феврале 1992-го года Линус высказал просьбу ко всем, кто уже пользовался или тестировал Linux, прислать ему открытку. Таких открыток было получено несколько сотен со всех концов света — из Новой Зеландии, Японии, Нидерландов, США. Это говорило о том, что Linux начала приобретать некоторую известность.

Вначале к разработке присоединились сотни, потом тысячи, потом сотни тысяч добровольных помощников. Система уже не была просто игрушкой для хакеров. Дополненная массой программ, разработанных в рамках проекта GNU, ОС Linux стала пригодна для практического использования. А то, что ядро системы распространялось под лицензией GNU General Public License, гарантировало, что исходные коды системы останутся свободными, то есть смогут копироваться, изучаться и модифицироваться без опасения нарваться на какое-либо преследование со стороны разработчика или какой-то коммерческой фирмы. Этот факт привлекал в ряды пользователей и сторонников Linux всё новых последователей, в первую очередь из числа студентов и программистов.

К этому времени сформировалась отдельная конференция в интернете, посвящённая Linux, — comp.os.linux. Энтузиасты образовали множество групп пользователей и в начале 1994-го года вышел первый номер журнала «Linux Journal». Linux привлекла внимание промышленных фирм и несколько небольших компаний начали разрабатывать и продавать собственные версии Linux.

Первоначально Линус Торвальдс не хотел продавать свою разработку. И не хотел, чтобы её продавал кто-то другой. Это было чётко прописано в уведомлении об авторских правах, помещённом в файл COPYING самой первой версии — 0.01. Причём требование Линуса налагало значительно более жёсткие ограничения на распространение Linux, чем те, которые провозглашались в лицензии GNU: не разрешалось взимать никаких денег за передачу или использование Linux. Но уже в феврале 1992-го года к нему стали обращаться за разрешением брать плату за распространение дискет с Linux, чтобы покрыть временные затраты и стоимость дискет. Кроме того, необходимо было считаться и с тем, что при создании Linux использовалось множество свободно распространяемых по интернету инструментов, самым важным из которых был компилятор GCC. Авторские права на него оговорены в общественной лицензии GPL, которую изобрёл Ричард Столлман. Торвальдсу пришлось пересмотреть свое заявление об авторских правах, и, начиная с версии 0.12, он тоже перешёл на использование лицензии GPL.

С технической точки зрения, Linux представляет собой только ядро Unix-подобной операционной системы, отвечающее за взаимодействие с аппаратной частью компьютера и выполнение таких задач, как распределение памяти, выделение процессорного времени различным программам и так далее. Кроме ядра, операционная система включает в себя множество различных утилит, которые служат для организации взаимодействия пользователя с системой. Успех Linux как операционной системы во многом обусловлен тем, что к 1991-му году в рамках проекта GNU уже было разработано множество утилит, свободно распространяемых в интернете. Проекту GNU не хватало ядра, а ядро, скорее всего, осталось бы невостребованным, если бы отсутствовали необходимые для работы утилиты. Линус Торвальдс оказался со своей разработкой в нужном месте в нужное время. И Ричард Столлман прав, когда настаивает на том, что операционную систему следует называть не Linux, а GNU/Linux. Но название Linux исторически закрепилось за этой ОС, поэтому мы тоже будем называть её просто Linux (не забывая о заслугах Столлмана и его сподвижников).

P.S. Я честно пролистал на Хабре все 36 страниц поисковой выдачи по запросу «история linux» и не нашёл ничего целостного по теме, что показалось мне довольно странным, учитывая популярность системы среди хабровчан. Информация по крупицам собиралась мной со всего интернета, отделены зёрна от плевел и, надеюсь, будет вам интересна.

UPD: Мне было сделано верное замечание по поводу временной шкалы. Я её переработал, заодно ещё раз проверил все даты. Думаю, что стало лучше и очевиднее.

Линус Бенедикт Торвальдс - знаменитый на весь мир финский программист, человек-легенда в компьютерном мире, особенно среди программистов. Прославился он тем, что создал операционную систему, совершившую переворот в компьютерной индустрии и породившую компьютерную «религию».

Детство Торвальдса

Родился знаменитый программист в столице Финляндии - городе Хельсинки, 28 декабря 1969, в семье журналистов. Был назван в честь известного химика - Линуса Паулинга, который был в свое время удостоен нобелевской премии. Мать Линуса работала переводчицей в издательстве финской газеты. Отец был коммунистом, однако после середины 70-ых, его интересы изменились и он стал радиожурналистом. Дядя Торвальдса работал на телевидении, а дед занимал пост главного газетного редактора. Его семья относилась к тому небольшому количеству жителей Финляндии, которые разговаривали на шведском, а таких было порядка 300 тысяч из 5 миллионов, населявших Финляндию.

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

Однако Линусу вскоре наскучили стандартные программы в компьютере и ему захотелось написать что-нибудь свое. Сначала он решил освоить BASIC, но вскоре возможностей этого языка программирования ему оказалось мало и он решил изучить другой, более сложный язык, но в тоже время обладающий большими возможностями - Assembler. Линус быстро обучался и ни на что не отвлекался. Отец пытался зародить в нем интерес к девочкам, спорту и многому другому, чем увлекались сверстники Линуса. Но все попытки были тщетны. Спустя несколько лет, Торвальдс признался в своей книге, что кроме математики и программирования, его в то время больше ничего не интересовало, к тому же, в других областях он просто не хотел разбираться.

Как появился Linux

Линус копил деньги и мечтал обзавестись собственным компьютером. В 1987 году, его мечта сбылась и он приобрел Sinclair Ql - 32-битный персональный компьютер, с процессором Motorola 68008, тактовой частотой 7.5 МГЦ и 128 Кб оперативной памяти.

Однако Линус не долго радовался своей покупке. Разочарование постигло его как только он узнал, что перепрограммировать установленную операционную систему нельзя. Для это было необходимо специальное оборудование, которого у него не было. В 19 лет он поступает на учебу в Хельсинкский университет, в котором раньше учились его родители. На момент зачисления, его познания в программировании были достаточно обширны, поэтому он поступил на отделение информатики. Язык программирования С Линус начал изучать в 1990 году на занятиях в университете. Это тот самый язык, который был использован им для написания ядра операционной системы Linux.

В 1991 году он заменяет свой старый компьютер и покупает новый, более мощный по тем временам: процессор Intel 386 с тактовой частотой 33 МГц и оперативной памятью на 4 Мб.

Но и этот компьютер его разочаровал, вернее его операционная система - MS-DOS, которая поставлялась в комплекте и использовала лишь половину возможностей процессора. Поэтому, Торвальдс решает заменить стандартную операционную систему на ту, что стоит на компьютерах в университете - операционная система UNIX. И тут он сталкивается с другой проблемой: самая дешевая UNIX с базовыми возможностями, стоит около пяти тысяч долларов. Таких денег у него нет, поэтому он решается обзавестись клоном UNIX, небольшой операционной системой под названием MINIX. Система была написана для студентов, изучающих UNIX. Ее автором был Эндрю Таненбаумом - специалист в области операционных систем.

Несмотря на то, что MINIX была создана для процессоров на базе Intel x86, и намного мощнее MS-DOS, у нее было много недостатков. Система была платной (однако не сильно дорогой), функционал бедный и ко всему прочему - половина кода была закрыта. Линус Торвальдс не смог с этим смириться и поэтому решил написать свою операционную систему, нечто среднее, между UNIX и MINIX. Вряд ли он тогда думал о том, сколько это займет у него времени и уж точно не ожидал, что его система не только изменит его дальнейшую жизнь, но и всю компьютерную индустрию.

О своем намерении, он решил заявить в конференции MINIX. Это было 25 августа 1991 года. Вот оригинал его сообщения:

Оригинал письма

Subject: Что бы вы хотели увидеть в Minix?

(Небольшой опрос для моей новой операционной системы)

Привет всем пользователям Minix -

Я разрабатываю операционную систему (бесплатную, просто хобби - не такую большую и

профессиональную как GNU) для процессоров 386 (486). Я начал еще в апреле и сейчас уже есть

первые результаты. Я бы хотел узнать мнение о том, что Вам нравится /не нравится в Minix, так как моя

операционная система основывается на нем кое в чем (то же строение файловой системы -но это чисто по

практическим соображениям).

Я уже портировал bash(1.08), gcc (1.40) и все вроде нормально работает. Отсюда следует что в

течении следующих нескольких месяцев я получу первую рабочую версию и поэтому хотел бы

знать что людям нужно больше всего.

Любые предложения приветствуются, но не обещаю, что воплощу их в жизнь:)

Linus Torvalds [email protected]

Цитаты Линуса

Ниже представлен список наиболее известных цитат Линуса Торвальдса:

«Здесь я хочу рассказать о своих золотых правилах. Первое: обращайся с другими так, как ты хочешь, чтобы они обращались с тобой. Следуя этому правилу, в любой ситуации будешь знать, что делать. Второе: гордись тем, что делаешь. Третье: делай все с удовольствием».

«Каждый прочитавший эту колонку подумает, что растущие тяготы моей роли главного хакера превратили меня в сволочь. Но это неверно. Я всегда был сволочью».

«Девочек я приводил домой, только когда они хотели позаниматься. Это было не так уж часто, и я никогда не был инициатором, но отец питает иллюзии, что заниматься они хотели не только математикой. (По его мнению, они купились все на ту же формулу: значительный нос=значительный мужчина)».

«Программы - как секс: лучше, когда это бесплатно».

«Microsoft - не есть зло, просто у них по-настоящему паршивые операционные системы».

«Мое имя Линус, и я ваш Бог».

«Видите ли, вы не только должны быть хорошим кодером, чтобы создать систему, подобную Линуксу, вы еще должны быть и хитрожопым сукиным сыном».

Философия Линукса: «Смейся в лицо опасности». Ой. Не то. «Сделай сам». Да, правильно.

«Некоторые говорили мне, что жирный пингвин, по их мнению, не в полной мере олицетворяет изящество Линукса. Но по-моему, на них просто никогда не несся разгневанный пингвин со скоростью под 200 км/ч».

«Интеллект - это способность избегать выполнения работы, но так, чтобы она при этом была сделана».

Когда ты говоришь, «Я написал программу, которая роняет Windows», люди просто тупо смотрят на тебя и отвечают: «Да мне такие программы вместе с системой достались, бесплатно».

«Я совсем не сомневаюсь, что виртуализация полезна в некоторых областях. Вот в чем я сильно сомневаюсь, так это что она когда-нибудь будет иметь такое влияние, которого хотят те, кто имеет отношение к виртуализации».

«Итак, большинство из вас, скорее всего, будет невыносимо маяться от скуки в Рождество, и вот вам идеальное развлечение. Протестируйте 2.6.15-rc7. Все магазины будут закрыты, и на самом деле не будет лучшего занятия между поеданием пищи».

Что такое Linux ? это — многозадачная и многопользовательская операционная система для бизнеса, образования и индивидуального программирования. Linux принадлежит семейству UNIX -подобных операционных систем.

В данной статье, мы расскажем не много о Linux.

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

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

Что такое UNIX ? это — одна из самых популярных в мире операционных систем благодаря тому, что ее сопровождает и распространяет большое число компаний. Первоначально она была создана как многозадачная система для миникомпьютеров в середине 70-ых годов, но с тех пор она выросла в одну из наиболее распространенных операционных систем. Существуют версии UNIX для многих систем, начиная от персонального компьютера, до суперкомпьютеров.

Linux — свободно распространяемая версия UNIX , первоначально была разработана Линусом Торвальдсом . Linux был создан с помощью многих UNIX -программистов и энтузиастов, тех, кто имеет достаточно навыков и способностей развивать систему.

Линус Торвальд проявил не обычное отношение к версиям, через свою историю выпуска дистрибутивов Linux.

5-го октября 1991 года Linux объявил первую «официальную» версию, и это версия 0.02. Многие это восприняли как создание некой «хакерской» системы. Основное внимание было нацелено на создание ядра. Никакие вопросы, поддержки работы с пользователем, документирования, тиражирования и т.п. к сожалению не обсуждались. Кажется, что и сегодня сообщество Linux-истов считает эти вопросы вторичными по сравнению с «настоящим программированием» развитием ядра.

После версии 0.03 Линус скачком перешел в нумерации к версии 0.10, а все потому, как в проект пришло достаточное количество людей, для его развития . После нескольких последовавших пересмотров версий, Линус вывел новую версию, с номером 0.95, тем самым показать свое впечатление, что вот уже скоро «официальная» версия. Это было в марте 1992 г.

Сегодня Linux — это полноценная ОС семейства UNIX , способная работать с X Windows, TCP/IP, Emacs, UUCP, mail и USENET. Практически все важнейшие программные пакеты были поставлены и на Linux, т.е. для Linux теперь доступны и коммерческие пакеты. Все большее разнообразие оборудования поддерживается по сравнению с первоначальным ядром.

Системные характеристики Linux — это многозадачная многопользовательская операционная система (точно также как и другие версии UNIX) . Linux достаточно хорошо совместим с рядом стандартов на уровне исходных текстов. И это с не спроста, создавал ась данная система с целью иметь такую совместимость.

Linux поддерживает различные типы файловых систем для хранения данных. Некоторые файловые системы, такие как файловая система ext2fs, были созданы специально для Linux. Поддерживаются также другие типы файловых систем, такие как Minix-1 и Xenix. Реализована также файловая система MS-DOS, позволяющая обращаться к файлам MS-DOS на жестком диске.

Linux обеспечивает полный набор протоколов TCP/IP для сетевой работы. Поддерживается весь спектр клиентов и услуг TCP/IP, таких как FTP, telnet, NNTP и SMTP.

Ядро Linux сразу создано с учетом специального защищенного режима для процессоров Intel 80386 и 80486. Linux использует парадигму описания памяти в защищенном режиме.

Для увеличения объема памяти Linux осуществляет также разбиение диска на страницы: т.е. на диске может быть выделено до 256 Мбайт «пространства для свопинга» (swap space) .Linux в область свопинга выгружает не весь процесс, а только отдельные его части. Когда системе нужно больше физической памяти, то она с помощью свопинга выводит неактивные страницы на диск. Это позволяет выполнять более объемные программы и обслуживать одновременно больше пользователей. Однако свопинг не исключает наращивания физической памяти, поскольку он снижает быстродействие, увеличивает время доступа.

Ядро также поддерживает универсальный пул памяти для пользовательских программ и дискового кэша. При этом для кэша может использоваться вся память, и наоборот, кэш уменьшается при работе больших программ.

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

У Linux не существует «о ф ициального» дистрибутива. Существует много дистрибутивов, каждый из которых хорош для определенных целей.

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

Говоря “Linux”, люди чаще всего подразумевают группу операционных систем, разработанных на базе Linux. Хотя, по сути, Linux - это только ядро операционной системы, и для разработки полноценной операционной системы используются различные другие инструменты и библиотеки GNU проектов и других ресурсов. Кроме того, все больше разработчиков используют Linux для разработки и запуска мобильных приложений; Linux играет ключевую роль в разработке таких устройств, как хромбуки (портативные устройства под управлением операционной системы Chrome, которая в качестве ядра использует гибрид ядра Linux и сервисов, разработанных компанией Google).

Linux стал популярен по следующим причинам:

  • актуальность дистрибутивов и активная поддержка сообществами разработчиков;
  • возможность запускаться на самом разном оборудовании;
  • низкие требования по части ресурсов;
  • возможность установить программы из существующих репозиториев.

Но список причин, конечно, только этими не исчерпывается; существуют не только практические, но и этические причины. Например, многие разработчики воспринимают Linux как выражение открытости, самовыражения и доступности.

История разработки

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

Что такое Unix?

Unix - это собрание кроссплатформенных многопользовательских и многозадачных операционных систем.

Можно сразу сказать, что в данный момент Unix-системы являются одними из самых исторических важных операционных систем. Влияние Unix распространилось и на языки программирования: язык C был разработан во время разработки Unix-систем.

Разработкой Unix занималась корпорация Bell Laboratories - в 1969 году они показали первую систему Unix. Чем дальше, тем большую популярность обретали системы Unix - в 70-х их начали устанавливать на компьютеры в учебных заведениях.

При создании Unix разработчики поставили перед собой три основные задачи:

  1. Использование минимального количества функций, сохранение простоты.
  2. Общность: одинаковые методы и механизмы используются в разных случаях.
  3. Комбинирование программ для решения задач, а не разработка новых программ с нуля.

Что касается отличительных особенностей Unix, то это:

  1. Практически постоянное использование командной строки.
  2. Использование конвейнеров.
  3. Настройка системы через использование простых (зачастую текстовых) файлов.

Unix имеет свою собственную философию. Программист Дуглас Макилрой, который разработал конвейнер в Linux, определил следующие правила:

Пишите программы, которые делают что-то одно и делают это хорошо.

Пишите программы, которые бы работали вместе.

Пишите программы, которые бы поддерживали текстовые потоки, поскольку это универсальный интерфейс.

Одна из проблем, коснувшаяся Unix, - наличие разных версий и множества программ, которые писали разработчики под свои нужды; из-за низкой совместимости программы, работающие с одной версией Unix, могли не работать на машинах с другими версиями. В итоге было решено создать общий документ, в котором будут указаны стандарты, которым должны следовать разработчики.

В 1983 году было объявлено о создании GNU (GNU’s Not UNIX), Unix-подобной операционной системы. Произошло это под влиянием идеи основателя проекта Ричарда Столманна о необходимости создания свободно распространяемой операционной системы и вообще программного обеспечения с открытым исходным кодом.

Ричард Столманн также основан движение свободного программного обеспечения и сформулирован четыре права, которыми должен обладать пользователь: он может запускать программу для любых целей, он может изучать программы и изменять их согласно своим потребностям, он может распространять программу, чтобы помочь другим, и он может публиковать улучшения программы, чтобы помочь сообществу в целом. Все это в первую очередь говорило о том, что исходный код программы должен быть доступен всем.

Именно эта мысль вдохновила Линуса Торвальдса, создателя Linux, начать в 1991 году работу над своей операционной системой. Linux, как и GNU, это Unix-подобная система, то есть система, появившаяся под влиянием Unix.

В дальнейшем именно система GNU/Linux станет той системой, которую сейчас называют просто Linux.

Что такое Multics?

Multics — или Multiplexed Information and Computing Service («Мультиплексная информационная и вычислительная служба») — это одна из самых первых операционных систем, в которой была реализована плоская модель хранения данных и четко разделена концепция файлов (сегментов). Создание Multics началось в 1964 году. Над системой работали разработчики компании Bell Laboratories — через несколько лет часть разработчиков начнет работу над созданием Unix.

Multics разрабатывали для того, чтобы, во-первых, дать возможность использовать ресурсы ЭВМ большому количеству пользователей одновременно; во-вторых, дать пользователям возможность совместно использовать данные; в-третьих, обеспечить хорошую скорость работы с данными.

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

История Linux

История Linux начинается в 1991 году, когда финский программист Линус Торвальдс стал разрабатывать ядро операционной системы для своего компьютера. Свои наработки он выложил на сервере, и это стало ключевым событием в истории Linux. Сначала десятки, потом сотни и тысячи разработчиков поддержали его проект - общими усилиями на свет появилась полноценная операционная система.

Как уже было сказано, на Linux значительно повлияла система Unix, это заметно даже по названию. Впрочем, изначально проект назывался Freax - от слов “free” (бесплатный) и “freak” (странный), но в дальнейшем название было изменено на гибрид имени создателя (Линус) и Unix.

Эмблемой Linux стал Такс (Tux) - пингвин, нарисованный в 1996 году программистом и дизайнером Ларри Юингом. Впрочем, идею использовать именно пингвина придумал сам Линус Торвальдс. Теперь Такс является символом не только Linux, но и свободного программного обеспечения в целом.

Первая официальная версия Linux 1.0 вышла в 1994 году; вторая версия пошла в 1996 году. Товарный знак Linux был зарегистрирован на год раньше, в 1995.

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

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

По факту Linux до сих представляет собой ядро Unix-подобной операционной системы, которое выполняет различные низкоуровневые задачи. В то же время проект GNU нуждался в ядре - разработка Линуса Торвальдса была очень своевременной.

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

Популярные дистрибутивы Linux

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

То есть, как уже было сказано в начале статьи, дистрибутив Linux - это операционная система, которая состоит из ядра Linux и утилит, которые разрабатываются в рамках GNU.

Количество существующих дистрибутивов Linux превышает 600 разновидностей, более 300 из которых постоянно дорабатываются и обновляются.

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

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

Linux Mint

Linux Mint - дистрибутив, основанный на Ubuntu и Debian. Linux Mint обладает красивым и удобным дизайном и подойдет даже начинающим пользователям. Поэтому его часто устанавливают на домашние компьютеры для того, чтобы иметь простую и удобную систему. Дистрибутив имеет поддержку различных мультимедийных форматов, в том числе включает проприетарные программы (Adobe Flash), поэтому хорошо подходит для работы с мультимедиа.

Manjaro - дистрибутив, основанный на Arch Linux. Благодаря большому количеству предустановленных программ (например, для офисной работы) он достаточно дружественен к новичкам, но в то же время имеет возможность тонкой настройки, множество пакетов, и стабилен в целом.

Arch - мощный дистрибутив, базирующийся на принципах простоты, современности, прагматизма, гибкости и идеи, что в центре внимания должен быть пользователь. Однако принцип простоты распространяется не на использование системы, а на ее внутреннюю организацию (принципы KISS и Unix-way). Поэтому Arch рассчитан на опытных пользователей, которые самостоятельно настроят и установят необходимые им утилиты.

Linux - собирательное название операционных систем, построенных на базе свободного программного обеспечения GNU и использующие одноименное ядро. Оно создаётся и распространяется в соответствии с моделью разработки свободного и открытого программного обеспечения. Поэтому общее название не подразумевает какой-либо единой «официальной» комплектации Linux; они распространяются в основном бесплатно в виде различных готовых дистрибутивов, имеющих свой набор прикладных программ и уже настроенных под конкретные нужды пользователя.

Она относится к UNIX-подобным, то есть в век зарождавшегося DOS и первых робких графических интерфейсов Atari и Apple она была как минимум многообещающей. Уникальность GNU как ОС состоит в том, что автор вот уже 31 год не может ее завершить, точнее ее ядро - GNU Hurd. Позднее, в 1985 году, Столлман основал Free Software Foundation, а в 1989 году составил GNU General Public License (GNU GPL). Цель GNU GPL - предоставить пользователю права копировать, модифицировать и распространять (в том числе на коммерческой основе) программы и гарантировать, что и пользователи всех производных программ получат вышеперечисленные права.

Зато другой талант, Линус Торвальдс, с успехом использовал наработки Столлмана для создания ОС Linux. 17 сентября 1991 года Линус Торвальдс выложил в сеть Linux Kernel 0.01 - исходный код Linux весом всего 64Kb. Прототипом для будущего ядра стала операционная система MINIX: совместимая с UNIX операционная система для персональных компьютеров, которая загружалась с дискет и умещалась в очень ограниченной в те времена памяти персонального компьютера. MINIX был создан Эндрю Таненбаумом в качестве учебной операционной системы, демонстрирующей архитектуру и возможности UNIX, но непригодной для полноценной работы. Именно полноценное ядро для своего ПК и хотел сделать Линус Торвальдс. Название своему ядру он дал freax, но позже оно было изменено хозяином ftp сервера на Linux - гибрид имени создателя и слова UNIX.

Тот факт, что Линус выложил код своей ОС в интернет, был решающим в дальнейшей судьбе Linux. Хотя в 1991-м году интернет ещё не был так широко распространён, как в наши дни, зато пользовались им в основном люди, имеющие достаточную техническую подготовку. И уже с самого начала Торвальдс получил несколько заинтересованных откликов.

Примерно в феврале 1992-го года Линус высказал просьбу ко всем, кто уже пользовался или тестировал Linux, прислать ему открытку. Таких открыток было получено несколько сотен со всех концов света - из Новой Зеландии, Японии, Нидерландов, США. Это говорило о том, что Linux начала приобретать некоторую известность.

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

А то, что ядро системы распространялось под лицензией GNU General Public License, гарантировало, что исходные коды системы останутся свободными, то есть смогут копироваться, изучаться и модифицироваться без опасения нарваться на какое-либо преследование со стороны разработчика или какой-то коммерческой фирмы. Этот факт привлекал в ряды пользователей и сторонников Linux всё новых последователей, в первую очередь из числа студентов и программистов.

К этому времени сформировалась отдельная конференция в интернете, посвящённая Linux, - comp.os.linux. Энтузиасты образовали множество групп пользователей и в начале 1994-го года вышел первый номер журнала «Linux Journal». Linux привлекла внимание промышленных фирм и несколько небольших компаний начали разрабатывать и продавать собственные версии Linux.

Первоначально Линус Торвальдс не хотел продавать свою разработку. И не хотел, чтобы её продавал кто-то другой. Это было чётко прописано в уведомлении об авторских правах, помещённом в файл COPYING самой первой версии - 0.01. Причём требование Линуса налагало значительно более жёсткие ограничения на распространение Linux, чем те, которые провозглашались в лицензии GNU: не разрешалось взимать никаких денег за передачу или использование Linux. Но уже в феврале 1992-го года к нему стали обращаться за разрешением брать плату за распространение дискет с Linux, чтобы покрыть временные затраты и стоимость дискет. Кроме того, необходимо было считаться и с тем, что при создании Linux использовалось множество свободно распространяемых по интернету инструментов, самым важным из которых был компилятор GCC. Авторские права на него оговорены в общественной лицензии GPL, которую изобрёл Ричард Столлман. Торвальдсу пришлось пересмотреть свое заявление об авторских правах, и, начиная с версии 0.12, он тоже перешёл на использование лицензии GPL.

С технической точки зрения, Linux представляет собой только ядро Unix-подобной операционной системы, отвечающее за взаимодействие с аппаратной частью компьютера и выполнение таких задач, как распределение памяти, выделение процессорного времени различным программам и так далее. Кроме ядра, операционная система включает в себя множество различных утилит, которые служат для организации взаимодействия пользователя с системой. Успех Linux как операционной системы во многом обусловлен тем, что к 1991-му году в рамках проекта GNU уже было разработано множество утилит, свободно распространяемых в интернете. Проекту GNU не хватало ядра, а ядро, скорее всего, осталось бы невостребованным, если бы отсутствовали необходимые для работы утилиты. Линус Торвальдс оказался со своей разработкой в нужном месте в нужное время. И Ричард Столлман прав, когда настаивает на том, что операционную систему следует называть не Linux, а GNU/Linux. Но название Linux исторически закрепилось за этой ОС, поэтому мы тоже будем называть её просто Linux (не забывая о заслугах Столлмана и его сподвижников).

Заключение

История ОС насчитывает примерно полвека. Она во многом определялась и определяется развитием элементной базы и вычислительной аппаратуры. На данный момент мировая компьютерная индустрия развивается очень стремительно.Производительность систем возрастает, а следовательно возрастают возможности обработки больших объёмов данных. Операционные системы класса MS-DOS уже не справляются с таким потоком данных и не могут целиком использовать ресурсы современных компьютеров.Поэтому в последнее время происходит переход на более мощные и наиболее совершенные операционные системы класса UNIX , примером которых и является Windows NT ,выпущенная корпорацией Microsoft.

Литература

    Гордеев А. В. Операционные системы: Учебник для вузов. - 2-е изд. - СПб.: Питер, 2007. - 416 с. - ISBN 978-5-94723-632-3.

    Иртегов Д. В. Введение в операционные системы. - 2-е изд. - СПб.: BHV-СПб, 2007. - ISBN 978-5-94157-695-1.

    Таненбаум Э . С . Многоуровневая организация ЭВМ = Structured Computer Organization. - М.: Мир, 1979. - 547 с.

    Таненбаум Э. С. Современные операционные системы = Modern Operating Systems. - 2-е изд. - СПб.: Питер, 2005. - 1038 с. - ISBN 5-318-00299-4.

    Таненбаум Э. С. , Вудхалл А. С. Операционные системы. Разработка и реализация = Operating Systems: Design and Implementation. - 3-е изд. - СПб.: Питер, 2007. - 704 с. - ISBN 978-5-469-01403-4.

    Шоу А. Логическое проектирование операционных систем = The Logical Design of Operating Systems. - М.: Мир, 1981. - 360 с.