Эволюция операционных систем или как это было и как будет
Здравствуйте, Хабралюди!
Не многие знают и не многие помнят, с чего началась история компьютерного софта — операционные системы. Именно эту тему и выбрал школьник для своей МАН-овской работы (МАН — малая академия наук). Звучит оно так — эволюция операционных систем. Сразу скажу, что более 90% из Тырнета, но откопано далеко не в первых 2-х страницах поиска в Гугле.
Вступление
Компьютерные технологии в последнее время сделали значительный скачок вперед, и скоро невозможно будет представить наши жизни без помощи компьютера. Но без операционной системы компьютер — лишь набор микросхем. Именно на базе операционной системы работают все программы, которые мы используем, именно от ОС в первую очередь будет зависеть скорость и производительность нашего труда на компьютере.
Современный компьютер состоит из одного или нескольких процессоров, оперативной памяти, дисков, принтера, клавиатуры, мыши, монитора, сетевых интерфейсов и других различных устройств ввода-вывода. В итоге получается довольно сложная система. Если каждому программисту, который создает приложение, нужно будет разбираться во всех тонкостях работы всех этих устройств, то он не напишет ни строки кода. Более того, управление всеми этими компонентами и их оптимальное использование представляет собой очень непростую задачу. По этой причине компьютеры оснащены специальным уровнем программного обеспечения, который называется операционной системой, в задачу которого входит управление пользовательскими программами, а также управление всеми ресурсами железа.
Первая ОС
GM-НАА была первой операционной системой для компьютеров. Она была создана в 1955 году Робертом Патриком с General Motors и Оуэном Моком с North American Aviation. Она была основана на системном мониторе и работала на больших машинах. Основная функция GM-НАА — автоматическое выполнение новой программы, когда старая программа завершилась.
Возникновение Плато
В 1972 году была разработана система PLATO, которая имела ряд инноваций, таких как оранжевая плазменная панель. Она включала в себя память и функции растровой графики. Плазменный дисплей PLATO поддерживал возможность быстрой отрисовки векторных линий.Многие инноваций, ввела ОС PLATO, стали в дальнейшем фундаментом для разработки других компьютерных систем. Например, некоторые технологии были заимствованы и усовершенствованные компанией Apple.
Возникновение UNIX
Первая система UNIX была разработана в 1969 году в подразделении Bell Labs компании AT & T. С тех пор было создано большое количество различных UNIX-систем.Некоторые отличительные признаки UNIX-систем включают в себя:
1) Использование текстовых файлов для настройки и управления системой;
2) Широкое применение утилит, запускаемых в командной строке;
3) Взаимодействие с пользователем посредством виртуального устройства — терминала;
4) Представление физических и виртуальных устройств как файлов.
Идеи, заложенные в основу UNIX, оказали огромное влияние на развитие компьютерных операционных систем. В настоящее время UNIX-системы признаны одними из самых исторически важных ОС. Эта операционная система популяризирует идею иерархической файловой системы с произвольной глубиной вложенности.
Linux
Linux была создана в 1991 году Линусом Торвальдсом, финским студентом. Тот факт, что Линус сразу после создания ОС выложил исходный код своей ОС в Интернет, был решающим в дальнейшей судьбе Linux. Хотя в 1991 году Интернет еще не был так широко распространен, как в наши дни, зато пользовались им в основном люди, которые имеют достаточную техническую подготовку. И уже с самого начала Торвальдс получил несколько заинтересованных отзывов с предложением помочь в разработке, на что Линус ответил согласием, и уже через полгода к разработке присоединились сотни, потом сотни тысяч добровольных помощников.В силу того, что исходные коды Linux распространяются свободно и общедоступно, к развитию системы с самого начала подключилось большое число независимых разработчиков.
MS-DOS
MS-DOS — коммерческая операционная система фирмы Microsoft для IBM PC-совместимых персональных компьютеров. MS-DOS работает в режиме реального времени процессора x86. Обеспечивается единовременное выполнение только одной программы. MS-DOS была спроектирована так, чтобы пользователи могли легко заменить встроенный интерпретатор посторонними интерпретаторами командной строки, например 4DOS.
Windows, куда ж без нее
В 1985 году появляется первая версия Windows, которая не была оценена пользователями и ее проигнорировали. Возможно потому, что она всего лишь дополняла возможности DOS, будучи фактически графической оболочкой и надстройкой над комплектом MS-DOS.
Со временем, система Windows все более совершенствовалась, появилась полноценная графика, лишила пользователей от видения системных файлов, был преодолен барьер многозадачности, что позволяет запустить 2-3 программы.В 1992 году с момента возникновения Windows 3.1, по мнению многих пользователей и профессионалов, новые возможности ОС были оценены по достоинству. С версии Windos3.1 ОС получила начало 32-разрядная доступность к жесткому диску.
В 1998 году, 25 июня, новая OC Windows 98 вышла на рынок потребителей. Преимуществом, по сравнению с предыдущими образцами, были: полная интеграция с Интернетом, более совершенное управление интерфейсом, новый процессор Pentium II, графический портал AGP, шина USB.
Параллельно с предыдущими, началась разработка системы Windows XP, где окончательно решено отказаться от 16-разрядности в ядре системы, и перейти на 32-разрядную, с новой архитектурой и строением. Из преимуществ новой системы необходимо отметить следующее: это первая из систем с полностью настраиваемым интерфейсом, внедрением интеллектуального меню «Пуск». Также оптимально переработана панель — управляющая ПК.
Появление после Widows XP новой системы Windows Vista считают самым неудачным вариантом после всех предыдущих выпусков ОС. Ее представляют, как «генеральную репетицию» перед Windows 7. Казалось бы, неплохие качества новой системы должны были заинтересовать пользователей. Такие новшевства как встроенный поиск, трехмерность интерфейса Aero с красивыми заставками, хорошую защиту — ничего не помогло, все выполнено крайне неудачно, по мнению пользователей.
Windows 7 мало чем кроме нового интерфейса отменялась от Vista. Вариантов Windows 7 выпущено 5: Starter Edition, домашняя базовая, домашняя расширенная, профессиональная, максимальная.
Windows 8 в отличие от своих предшественников — Windows 7 и Windows XP использует новый интерфейс под названием Modern(Metro). Также в системе присутствует и рабочий стол, но уже в виде отдельного приложения.
Мобильные ОС
Сейчас все больший интерес пользователей привлекают смартфоны на различных операционных системах: Windows Phone, Boda, IOS. Самыми популярными из них являются IOS и AndroidOS.
IOS — мобильная операционная система, созданная на ядре Linux и разрабатываемой и выпускаемой американской компанией Apple. Была выпущена в 2007 году изначально — для iPhone и iPod Touch. Сейчас же она установлена на всех устройствах Apple. Такие нововведения как мобильный браузер Safari, визуальная голосовая почта, виртуальная клавиатура сделали IOS одной из наиболее популярных систем для смартфонов.
Андроид
Андроид — система, которая наиболее динамично развивается, разработанна для смартфонов(изначально для коммунникаторов(Айфон и его тачскрин изменили мнение Гугла)). Она является упрощенным вариантом аналогичных систем Windows и Linux, используемых на стационарных ПК и ноутбуках, ориентированной для тачскрина. Платформа Андроид состоит из операционной системы, интерфейса, связывающего ПО и мощных приложений.
Google Chrome OS (облачная ОС)
Chrome OS позиционируется как операционная система для различных устройств — от маленьких нетбуков до полноразмерных настольных систем и поддерживает x86-и ARM-архитектуры процессоров.
Новая ОС Google Chrome имеет открытый исходный код, основанный на оптимизированном Linux-ядре и управляется браузером Chrome.Главной особенностью будет доминирование веб-приложений над обычными функциями ОС. Ключевая роль при этом отводится браузеру.
Стратегия создания нового продукта подразумевает архитектуру, нетребовательную к аппаратным ресурсам персонального компьютера, используемого для выхода в сеть Интернет.
Все приложения, которые запускает система — веб-сервисы. Фактически, все действия, проходящих в на компьютере, выполняются в Интернете — нет необходимости устанавливать никаких офлайновых приложений. В связи с этим работа в Chrome OS не требует наличия у компьютера мощных ресурсов, ведь все процессы запускаются не на самом компьютере, а на серверах соответствующих служб.
Предсказания ворожеи
Операционная система пользователя становится чем-то похожим на веб-браузер, установленной на голое железо. Современный классический интерфейс (разработанный в Xerox PARC и впервые внедрен Apple почти 30 лет назад) отойдет в прошлое. Многие современные составных частей ОС станут просто не нужны, другие уйдут от пользователя и превратятся в сервисы API для программистов. Основным задачей ОС станет предоставление возможности запуска клиентской части облачных сервисов. И преимущества, которыми Microsoft в современном мире ОС, будет значительно уменьшены. Им придется придумывать новые способы привязки к себе пользователей и программистов в новом среде, более конкурентной, в сравнению с нынешней.
Многое зависит от решений, успехов и неудач крупных софтверных компаний, таких как Microsoft, Google. В отличие от той эволюции софта, которую мы наблюдали в девяностых и двухтысячных, новая эволюция все меньше зависет от производителей железа, и все больше — от производителей конечного ПО для пользователей.
За криворукость не ругать, если что — поправлять, автора не матюкать.
Источник
История Linux. Вкратце о главном
Корни Linux прослеживаются ещё с годов века. Точкой отсчёта можно считать появление операционной системы Unix в году в США в фирме Bell Laboratories, дочернем подразделении компании AT&T. Unix стала основной для большого количества операционных систем промышленного класса. Самые основные из них отображены на этой временной шкале:
Linux же больше всего обязан своей жизнью двум проектам — GNU и Minix.
История проекта GNU началась в сентябре года. Основоположник проекта GNU, Ричард Столлман (Richard M. Stallman) работал в это время в лаборатории искусственного интеллекта Массачусетского технологического института (Massachusetts Institute of Technology, MIT, Cambridge, Massachusetts). Столлмана называют одним из самых выдающихся программистов нашего времени.
В той среде, к которой принадлежал Столлман, было принято свободно обмениваться программами и их исходными кодами. Лицензия же на Unix от AT&T, к примеру, стоила 40 000 долларов. Позволить себе купить её могли только достаточно крупные фирмы. А без обладания лицензией, программист не имел права использовать исходные коды системы в своих разработках. Это препятствовало обмену идеями в сфере программирования и сильно тормозило процесс создания программ, поскольку вместо того, чтобы позаимствовать готовый кусок кода для решения той или иной задачи, разработчик программы был вынужден писать эту часть кода заново, что сродни изобретению колеса.
Столлман решил изменить это положение вещей в программировании. В году он объявил о начале разработки проекта GNU, целью которого было создание полностью открытой операционной системы:
После Дня Благодарения я начинаю писать 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 «делает ПО свободным и гарантирует, что оно останется свободным».
К году в рамках проекта GNU было создано большинство компонент, необходимых для функционирования свободной операционной системы. Помимо текстового редактора Emacs, Столлман создал компилятор gcc (GNU C Compiler) и отладчик gdb. Будучи выдающимся программистом, Ричард Столлман в одиночку сумел создать эффективный и надёжный компилятор, который превосходит по своим качествам продукты коммерческих поставщиков, создаваемые целыми группами программистов. Поскольку изначально при его создании ставилась задача обеспечения переносимости, сегодня существуют версии этого компилятора практически для всех операционных систем. Позже были созданы компиляторы и для других языков программирования, включая C++, Pascal и Fortran. Поэтому сейчас аббревиатура GCC расшифровывается как GNU Compiler Collection.
Как пишет Ричард Столлман: «К году система GNU была практически закончена, не хватало только одного из базовых компонентов — ядра.» Ожидалось, что ядро (оно получило название Hurd) будет реализовано как набор серверных процессов, работающих на Mach — микроядре, создаваемом в Университете Карнеги-Меллона, а затем в Университете штата Юта. Начало разработки откладывалось в ожидании выпуска Mach, которое, как было обещано, будет выпущено в виде свободно распространяемого программного обеспечения. Но его появление всё откладывалось, и тут появилось ядро, разработанное финским студентом Линусом Торвальдсом, получившее название Linux. Линус создал его в попытках усовершенствовать свою домашнюю операционную систему Minix, о которой стоит упомянуть отдельно.
Minix
В течение годов персональные компьютеры на основе микропроцессора Intel, оснащённые операционными системами от Microsoft, заняли господствующее положение на рынке настольных систем и захватили также существенную долю рынка серверов — традиционной сферы применения Unix-систем. Компьютеры на основе Intel и Intel-совместимых процессоров достигли вычислительной мощности, сравнимой с мощностью рабочих станций с Unix. Но большинство коммерческих Unix-систем не имели версий, способных работать на оборудовании Intel. Производители Unix обычно тесно сотрудничали с производителями конкретных процессоров или даже имели долю собственности в компаниях, производивших эти процессоры, а поэтому были заинтересованы в использовании своих собственных разработок. Примерами могут служить линейки процессоров SGI и MIPS. Поскольку аппаратные возможности персоналок стремительно возрастали, естественно, что рано или поздно должны были появиться варианты Unix для компьютеров на основе Intel-совместимых процессоров. Один из таких вариантов Unix-подобной операционной системы, который сыграл особую роль в истории Linux, был разработан в январе года Эндрю Таненбаумом (Andrew S. Tanenbaum), профессором Университета Врие, Амстердам, Нидерланды. Таненбаум был одним из ведущих специалистов в области разработки операционных систем. Свою операционную систему Minix (Миникс) он разработал как учебное пособие, на примере которого показывал студентам внутреннее устройство реальной операционной системы.
Конечно, как операционная система, Minix не была верхом совершенства. Она была ориентирована на микропроцессор Intel 80286, который в то время господствовал на рынке. Но у неё было одно очень важное качество — открытые исходные коды. Каждый, кто имел книгу Таненбаума «Операционные системы», мог изучить и проанализировать 12 000 строк кода, написанного на языке Си и на ассемблере. Это был тот редкий случай, когда исходные коды не были заперты под семью печатями в сейфах разработчика. Великолепный автор, Таненбаум сумел вовлечь самые выдающиеся умы компьютерной науки в обсуждение искусства создания операционных систем. Minix можно было приобрести и отдельно от книги, она могла быть реально установлена на персональный компьютер. Студенты компьютерных факультетов по всему миру корпели над книгой Таненбаума, вчитываясь в коды с целью понять, как работает та самая система, которая управляет их компьютером. И одним из таких студентов был Линус Торвальдс.
Linux
В году, Линус Торвальдс, финский студент, чрезвычайно увлёкся идеей написать совместимое с Unix ядро операционной системы для своего персонального компьютера с процессором Intel. Прототипом для будущего ядра стала операционная система Minix: совместимая с Unix операционная система для персональных компьютеров, которая загружалась с дискет и умещалась в очень ограниченной в те времена памяти персонального компьютера.
августа года Линус Торвальдс направил первое сообщение о своей разработке в группу новостей comp.os.minix:
From: torvaldsSklaava.Helsinki.Fi (Linus Benedict Torvalds)
To: Newsgroups: comp.os.inix
Subject: Чего вам больше всего не хватает в minix?
Summary: небольшой опрос для моей операционной системы Message-ID:
Date: 25 августа 1991 г., 20:57:08 GMT
Organization: University of Helsinki
Привет всем пользователям minix!
Я пишу (бесплатную) операционную систему (это просто хобби, ничего большого и профессионального вроде gnu) для AT 386(486). Я вожусь с этим с апреля, и она, похоже, скоро будет готова. Напишите мне, кому что нравится/не нравится в minix, поскольку моя ОС на неё похожа (кроме всего прочего, у неё — по практическим соображениям — то же физическое размещение файловой системы).
Пока что я перенёс в неё bash (1.08) и gсс (1.40), и всё вроде работает. Значит, в ближайшие месяцы у меня получится уже что-то работающее, и мне бы хотелось знать, какие функции нужны большинству. Все заявки принимаются, но выполнение не гарантируется 🙂
PS. Она свободна от кода minix и включает мультизадачную файловую систему. Она НЕ переносима (используется переключение задач 386 и пр.) и, возможно, никогда не будет поддерживать ничего, кроме АТ-винчестеров, потому что у меня больше ничего нет 🙁
Название «Linux» новая система получила следующим образом. Самого Торвальдса несколько смущало созвучие этого названия с его именем, поэтому он пытался назвать свою разработку Freax. Это название можно обнаружить в файле kernl/Makefile версии 0.11, и в исходных кодах других программ. Но Ари Лемке, который предоставил место для выкладывания системы на FTP сайте, назвал каталог pub/OS/Linux. И это название закрепилось за новой ОС.
Тот факт, что Линус выложил код своей ОС в интернет, был решающим в дальнейшей судьбе Linux. Хотя в году интернет ещё не был так широко распространён, как в наши дни, зато пользовались им в основном люди, имеющие достаточную техническую подготовку. И уже с самого начала Торвальдс получил несколько заинтересованных откликов.
Примерно в феврале года Линус высказал просьбу ко всем, кто уже пользовался или тестировал Linux, прислать ему открытку. Таких открыток было получено несколько сотен со всех концов света — из Новой Зеландии, Японии, Нидерландов, США. Это говорило о том, что Linux начала приобретать некоторую известность.
Вначале к разработке присоединились сотни, потом тысячи, потом сотни тысяч добровольных помощников. Система уже не была просто игрушкой для хакеров. Дополненная массой программ, разработанных в рамках проекта GNU, ОС Linux стала пригодна для практического использования. А то, что ядро системы распространялось под лицензией GNU General Public License, гарантировало, что исходные коды системы останутся свободными, то есть смогут копироваться, изучаться и модифицироваться без опасения нарваться на какое-либо преследование со стороны разработчика или какой-то коммерческой фирмы. Этот факт привлекал в ряды пользователей и сторонников Linux всё новых последователей, в первую очередь из числа студентов и программистов.
К этому времени сформировалась отдельная конференция в интернете, посвящённая Linux, — comp.os.linux. Энтузиасты образовали множество групп пользователей и в начале года вышел первый номер журнала «Linux Journal». Linux привлекла внимание промышленных фирм и несколько небольших компаний начали разрабатывать и продавать собственные версии Linux.
Первоначально Линус Торвальдс не хотел продавать свою разработку. И не хотел, чтобы её продавал кто-то другой. Это было чётко прописано в уведомлении об авторских правах, помещённом в файл COPYING самой первой версии — 0.01. Причём требование Линуса налагало значительно более жёсткие ограничения на распространение Linux, чем те, которые провозглашались в лицензии GNU: не разрешалось взимать никаких денег за передачу или использование Linux. Но уже в феврале года к нему стали обращаться за разрешением брать плату за распространение дискет с Linux, чтобы покрыть временные затраты и стоимость дискет. Кроме того, необходимо было считаться и с тем, что при создании Linux использовалось множество свободно распространяемых по интернету инструментов, самым важным из которых был компилятор GCC. Авторские права на него оговорены в общественной лицензии GPL, которую изобрёл Ричард Столлман. Торвальдсу пришлось пересмотреть свое заявление об авторских правах, и, начиная с версии 0.12, он тоже перешёл на использование лицензии GPL.
С технической точки зрения, Linux представляет собой только ядро Unix-подобной операционной системы, отвечающее за взаимодействие с аппаратной частью компьютера и выполнение таких задач, как распределение памяти, выделение процессорного времени различным программам и так далее. Кроме ядра, операционная система включает в себя множество различных утилит, которые служат для организации взаимодействия пользователя с системой. Успех Linux как операционной системы во многом обусловлен тем, что к году в рамках проекта GNU уже было разработано множество утилит, свободно распространяемых в интернете. Проекту GNU не хватало ядра, а ядро, скорее всего, осталось бы невостребованным, если бы отсутствовали необходимые для работы утилиты. Линус Торвальдс оказался со своей разработкой в нужном месте в нужное время. И Ричард Столлман прав, когда настаивает на том, что операционную систему следует называть не Linux, а GNU/Linux. Но название Linux исторически закрепилось за этой ОС, поэтому мы тоже будем называть её просто Linux (не забывая о заслугах Столлмана и его сподвижников).
P.S. Я честно пролистал на Хабре все 36 страниц поисковой выдачи по запросу «история linux» и не нашёл ничего целостного по теме, что показалось мне довольно странным, учитывая популярность системы среди хабровчан. Информация по крупицам собиралась мной со всего интернета, отделены зёрна от плевел и, надеюсь, будет вам интересна.
UPD: Мне было сделано верное замечание по поводу временной шкалы. Я её переработал, заодно ещё раз проверил все даты. Думаю, что стало лучше и очевиднее.
Источник