Эволюция операционных систем или как это было и как будет
Здравствуйте, Хабралюди!
Не многие знают и не многие помнят, с чего началась история компьютерного софта — операционные системы. Именно эту тему и выбрал школьник для своей МАН-овской работы (МАН — малая академия наук). Звучит оно так — эволюция операционных систем. Сразу скажу, что более 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. В отличие от той эволюции софта, которую мы наблюдали в девяностых и двухтысячных, новая эволюция все меньше зависет от производителей железа, и все больше — от производителей конечного ПО для пользователей.
За криворукость не ругать, если что — поправлять, автора не матюкать.
Понятие операционной системы, ее функции и виды
Операционная система — это комплекс взаимосвязанных системных программ, назначение которого — организация взаимодействия пользователя с компьютером и выполнение всех других программ.
Операционная система выполняет роль связующего звена между аппаратурой компьютера, с одной стороны, и выполняемыми программами, а также пользователем, с другой стороны.
Операционная система обычно хранится во внешней памяти компьютера — на диске. При включении компьютера она считывается с дисковой памяти и размещается в ОЗУ. Этот процесс называется загрузкой операционной системы.
В функции операционной системы входит:
основные функции (простейшие ОС) :
- Загрузка приложений в оперативную память и их выполнение;
- Стандартизованный доступ к периферийным устройствам (устройства ввода-вывода);
- Управление оперативной памятью (распределение между процессами, виртуальная память);
- Управление энергонезависимой памятью (Жёсткий диск, Компакт-диск и т.д.), как правило с помощью файловой системы;
- Пользовательский интерфейс;
дополнительные функции (развитые современные ОС) :
- Параллельное или псевдопараллельное выполнение задач (многозадачность);
- Взаимодействие между процессами;
- Межмашинное взаимодействие (компьютерная сеть);
- Защита самой системы, а также пользовательских данных и программ от злонамеренных действий пользователей или приложений;
- Разграничение прав доступа и многопользовательский режим работы (аутентификация, авторизация).
Операционную систему можно назвать программным продолжением устройства управления компьютера. Операционная система скрывает от пользователя сложные ненужные подробности взаимодействия с аппаратурой, образуя прослойку между ними. В результате этого люди освобождаются от очень трудоёмкой работы по организации взаимодействия с аппаратурой компьютера.
К современным операционным системам предъявляются следующие требования:
- совместимость — ОС должна включать средства для выполнения приложений, подготовленных для других ОС;
- переносимость — обеспечение возможности переноса ОС с одной аппаратной платформы на другую;
- надежность и отказоустойчивость — предполагает защиту ОС от внутренних и внешних ошибок, сбоев и отказов;
- безопасность — ОС должна содержать средства защиты ресурсов одних пользователей от других;
- расширяемость — ОС должна обеспечивать удобство внесения последующих изменений и дополнений;
- производительность — система должна обладать достаточным быстродействием.
По числу одновременно выполняемых задач выделяют ОС однозадачные (MS DOS, ранние версии PC DOS) и многозадачные (OS/2, UNIX, Windows).
В настоящий момент около 90% компьютеров используют КС Windows. Более широкий класс ОС ориентирован для использования на серверах. К этому классу ОС относятся семейство UNIX, разработки фирмы Microsoft (MS DOS и Windows), сетевые продукты Novell и корпорации IBM.
UNIX — многопользовательская, многозадачная ОС, включает достаточно мощные средства защиты программ и файлов различных пользователей. ОС UNIX является машинонезависимой, что обеспечивает высокую мобильность ОС и легкую переносимость прикладных программ на компьютеры различной архитектуры. Важной особенностью ОС семейства UNIX являются ее модульность и обширный набор сервисных программ, которые позволяют создать благоприятную операционную обстановку для пользователей -программистов (т. е. система особенно эффективна для специалистов — прикладных программистов).
Недостаток UNIX — большая ресурсоемкость, и для небольших однопользовательских систем на базе персональных компьютеров она чаще всего является избыточной. целом ОС семейства UNIX ориентированы прежде всего на большие локальные (корпоративные) и глобальные сети, объединяющие работу тысяч пользователей. Большое распространение UNIX и ее версия LINUX получили в сети Интернет, где важнейшее значение имеет машинонезависимость ОС.
DOS (ДОС) — семейство операционных систем для компьютеров, расшифровывается как «дисковая операционная система», что означает её ориентированность на использование дисковых накопителей, таких как жёсткий диск и дискета.
Существовали операционные системы с таким названием для больших ЭВМ производства IBM и их клонов в 60-80-х гг. XX века.
DOS является однозадачной операционной системой. После запуска управление передаётся прикладной программе, которая получает в своё распоряжение все ресурсы компьютера и может осуществлять ввод/вывод посредством как функций предоставляемых операционной системой, так и функций базовой системы ввода/вывода, а также работать с устройствами напрямую. MS-DOS (сокр. от англ. Microsoft Disk Operating System — дисковая ОС от Microsoft) — коммерческая операционная система для персональных компьютеров фирмы Microsoft. MS-DOS — самая известная ОС из семейства DOS, ранее устанавливаемая на большинство компьютеров.
В настоящее время MS DOS для управления персональными компьютерами практически не применяется. Однако ее не следует считать полностью исчерпавшей свои возможности и потерявшей актуальность. Низкие требования к аппаратным ресурсам оставляют DOS перспективной для практического использования. Так, в 1997 г. компания СаШега начала работы по адаптации DR DOS (аналог MS DOS) к рынку встроенных ОС мелких высокоточных устройств, присоединяемых к Интернету и интрннет-сетям. К этим устройствам относятся кассовые аппараты, факсы, персональные цифровые ассистенты, электронные записные книжки и др.
Операционные системы Windows — это семейство операционных систем, включающих: Windows 3.1, Windows for Workgroups 3.11, Windows 9X, Windows NT, Windows 2000, Windows ME, WindowsXP (первые две обычно называют операционными оболочками, поскольку ОС DOS для них устанавливалась отдельно).
Примечание
Состав модулей ОС, а также их количество зависит от семейства и вида ОС. Так, например, в ОС MS DOS отсутствует модуль, обеспечивающий графический пользовательский интерфейс.
Наиболее общим подходом к структуризации операционной системы является разделение всех ее модулей на две группы:
- Ядро – это модули, выполняющие основные функции ОС.
- Вспомогательные модули, выполняющие вспомогательные функции ОС. Одним из определяющих свойств ядра является работа в привилегированномрежиме.
Модули ядра выполняют следующие базовые функции ОС: Управление процессами, Управление системой прерываний, Управление памятью, управление устройствами ввода-вывода, Функции, решающие внутрисистемные задачи организации вычислительного процесса: переключение контекстов, загрузка/выгрузка страниц, обработка прерываний. Эти функции недоступны для приложений. Функции, служащие для поддержки приложений, создавая для них так называемую прикладную программную среду.
Приложения могут обращаться к ядру с запросами – системными вызовами – для выполнения тех или иных действий: для открытия и чтения файла, вывода графической информации на дисплей, получения системного времени и т.д. Функции ядра, которые могут вызываться приложениями, образуют интерфейс прикладного программирования – API (Application programming interface).
Пример.
Базовый код API Win32 содержится в трех библиотеках динамической загрузки (Dynamic Link Library, DLL): USER32, GDI32 и KERNEL32.
Kernel — модуль Windows, который поддерживает низкоуровневые функции по работе с файлами и управлению памятью и процессами. Этот модуль обеспечивает сервис для 16- и 32-разрядных приложений.
GDI (Graphics Device Interface) — модуль Windows, обеспечивающий реализацию графических функций по работе с цветом, шрифтами и графическими примитивами для дисплея и принтеров.
User — модуль Windows, который является диспетчером окон и занимается созданием и управлением отображаемыми на экране окнами, диалоговыми окнами, кнопками и другими элементами пользовательского интерфейса.
Ядро является движущей силой всех вычислительных процессов в компьютерной системе, и крах ядра равносилен краху всей системы, без него ОС является полностью неработоспособной и не сможет выполнить ни одну из своих функций. Поэтому разработчики операционной системы уделяют особое внимание надежности кодов ядра, в результате процесс их отладки может растягиваться на многие месяцы.
Обычно ядро оформляется в виде программного модуля некоторого специального формата, отличающегося от формата пользовательских приложений.
Вспомогательные модули ОС выполняют вспомогательные функции ОС (полезные, но менее обязательные чем функции ядра).
Примеры вспомогательных модулей:
- Программа архивирования данных.
- Программа дефрагментации диска.
- Текстовый редактор.
Вспомогательные модули ОС оформляются либо в виде приложений, либо в виде библиотек процедур. Вспомогательные модули ОС подразделяются на следующие группы:
утилиты – программы, решающие задачи управления и сопровождения компьютерной системы: обслуживание дисков и файлов.
системные обрабатывающие программы – текстовые или графические редакторы, компиляторы, компоновщики, отладчики.
программы предоставления пользователю дополнительных услуг пользовательского интерфейса (калькулятор, игры).
библиотеки процедур различного назначения, упрощающие разработку приложений (библиотека математических функций, функций ввода-вывода).
Как и обычные приложения, для выполнения своих задач утилиты, обрабатывающие программы и библиотеки ОС, обращаются к функциям ядра посредством системных вызовов.
Функции, выполняемые модулями ядра, являются наиболее часто используемыми функциями операционной системы, поэтому скорость их выполнения определяет производительность всей системы в целом. Для обеспечения высокой скорости работы ОС все модули ядра или большая их часть постоянно находятся в оперативной памяти, то есть являются резидентными.
Вспомогательные модули обычно загружаются в оперативную память только на время выполнения своих функций, то есть являются транзитными. Такая организация ОС экономит оперативную память компьютера.
Linux – это надежность и безопасность везде
Эта операционная система (основанная на базе Unix) несколько отличается от предыдущей.
Главное сердце — это ядро, в котором установлена поддержка драйверов (для работы с другими устройствами). Главное понятие в данной ОС — это пакет, т.к. она полностью состоит из пакетов.
Если в виндовс каждое приложение занимает свою папку, то в Linux файлы лежат по разным папкам: запускающие программу находятся в одном месте, конфигурационные файлы, связанные с настройками программ, — в другой папке.
Такое хранение и расположение файлов путает пользователей, но, с точки зрения логики, такое разделение кажется разумным.
Осветим преимущества этой ОС:
- бесплатность системы (на сайте с выбранным дистрибутивом скачиваем необходимый образ, записываем на флешку и устанавливаем на компьютеры пользователей);
- программное обеспечение бесплатное (графические редакторы, текстовые и т.д.);
- модификация программ, если знаешь язык программирования, то можно смело писать собственные программы или изменять существующие;
- запуск программ и игр, предназначенных для системы windows, выполняется через эмуляторы (wine, виртуальные машины);
- благодаря архитектуре и сложной системе написания вирусов и активации их на Linux, она весьма надежна и безопасна, поэтому Unix-подобные системы стоят «на страже» большинства серверов.
Но и здесь не обойтись без минусов:
- неполная поддержка аппаратного обеспечения (видеокарт, аудиокарт, принтеров и т.д.), но ситуация постоянно улучшается, с каждым новым релизом поддерживается все больше устройств;
- меньшее количество игр и программ, разработчикам коммерческого ПО невыгодно вкладываться в бесплатные версии программ, поэтому они остаются в сегменте Windows;
- необходимость постоянного самообучения, при возникновении проблем с программой и драйверами ответы на вопросы необходимо искать на форумах, посвященных данной ОС, так как они неочевидны.
Выигрывает этот раунд Windows. Пользователи не захотят разбираться в новой системе, им нужен результат: «чтобы сразу все работало». Linux — это операционная система для любителей познавать новое.
Дистрибутивы Linux становятся все более «дружелюбными» к пользователю, предлагая приятный графический интерфейс, практичные менеджеры пакетов, пополняющийся комплекс игр и приложений (в начале использования новичкам подойдут дистрибутивы Ubuntu, Linux Mint).