Лекция: Особенности методов построения
При описании операционной системы часто указываются особенности ее структурной организации и основные концепции, положенные в ее основу.
К таким базовым концепциям относятся:
· Способы построения ядра системы – монолитное ядро или микроядерный подход. Большинство ОС использует монолитное ядро, которое компонуется как одна программа, работающая в привилегированном режиме и использующая быстрые переходы с одной процедуры на другую, не требующие переключения из привилегированного режима в пользовательский и наоборот. Альтернативой является построение ОС на базе микроядра, работающего также в привилегированном режиме и выполняющего только минимум функций по управлению аппаратурой, в то время как функции ОС более высокого уровня выполняют специализированные компоненты ОС – серверы, работающие в пользовательском режиме. При таком построении ОС работает более медленно, так как часто выполняются переходы между привилегированным режимом и пользовательским, зато система получается более гибкой – ее функции можно наращивать, модифицировать или сужать, добавляя, модифицируя или исключая серверы пользовательского режима. Кроме того, серверы хорошо защищены друг от друга, как и любые пользовательские процессы.
Рис. 11
· Построение ОС на базе объектно-ориентированного подхода дает возможность использовать все его достоинства, хорошо зарекомендовавшие себя на уровне приложений, внутри операционной системы, а именно: аккумуляцию удачных решений в форме стандартных объектов, возможность создания новых объектов на базе имеющихся с помощью механизма наследования, хорошую защиту данных за счет их инкапсуляции во внутренние структуры объекта, что делает данные недоступными для несанкционированно-го использования извне, структуризованность системы, состоящей из набора хорошо определенных объектов.
· Наличие нескольких прикладных сред дает возможность в рамках одной ОС одновременно выполнять приложения, разработанные для
нескольких ОС. Многие современные операционные системы поддерживают одновременно прикладные среды MS-DOS, Windows, UNIX (POSIX), OS/2 или хотя бы некоторого подмножества из этого популярного набора. Концепция множественных прикладных сред наиболее просто реализуется в ОС на базе микроядра, над которым работают различные серверы, часть которых реализует прикладную среду той или иной операционной системы.
Распределенная организация операционной системы позволяет упростить работу пользователей и программистов в сетевых средах. В распределенной ОС реализованы механизмы, которые дают возможность пользователю представлять и воспринимать сеть в виде традиционного однопроцессорного компьютера. Характерными признаками распределенной организации ОС являются: наличие единой справочной службы разделяемых ресурсов, единой службы времени, использование механизма вызова удаленных процедур (RPC) для прозрачного распределения программных процедур по машинам, многонитевой обработки, позволяющей распараллеливать вычисления в рамках одной задачи и выполнять эту задачу сразу на нескольких компьютерах сети, а также наличие других распределенных служб.
Рис. 12
Все ОС, созданные корпорацией Microsoft, можно условно разделить на три большие семейства:
1. MS-DOS и графические надстройки на него в виде Windows 3x.
2. Consumer Windows (Windows’95, 98/Me).
3. Windows NT MS-DOS.
В 1981 году корпорация IBM создала ПК IBM PC. ПК был оснащен 16-разрядной однопользовательской ОС, названной MS-DOS 1.0. ОС, состояла из резидентной программы размером 8 Кбайт.
Два года спустя была создана более мощная ОС MS-DOS 2.0, которая уже содержала 24 Кбайта резидентного кода.
После этого компания Intel выпускает 286 процессор и на базе его ПК IBM PC AT. Данный компьютер поставлялся с ОС MS-DOS 3.0, которая состояла из 36 Кбайт резидентного кода, но ОС MS-DOS все равно оставалась ориентирована на командную строку.
Windows 9x Windows 1.0 вышла в 1985 году. В 1987 году вышла новая версия 2.0. Обе они не добились коммерческого успеха, только ОС 3.0, выпущенная в 1990 году, принесла значительные доходы Microsoft.
В Windows 3x все программы работали в одном и том же адресном пространстве. Из-за чего ошибка в одной из них приводила к зависанию всей системы.
В августе 1995 года выходит Windows’95; новая версия Windows, так же как и поставляемая с ней MS-DOS v7.0, обладала всеми особенностями монолитной ОС, в том числе включая виртуальную память и систему управления процессом.
Windows 95 работала на основе файловой системы MS-DOS. В июне 1997 года была выпущена версия Windows 98. Основным отличием данной версии Windows от Windows 95 была разница в интерфейсе пользователя, более полная интеграция с Интернетом, поддержка USB-устройств.
В Windows 95 были 2 основные проблемы: во-первых, не смотря на то, что система была многозадачной, могла сложиться ситуация: если процесс был занят управлением какой-либо структуры данных в ядре, то по истечении его кванта времени управление передавалось другому процессу, при этом новый процесс мог получить структуру данных в противоречивом состоянии.
Чтобы предотвратить данную ситуацию, каждому процессу, попадающему в ядро, навешивался гигантский мьютекс, покрывающий все систему, но из-за этого уничтожалось много преимуществ многозадачности. Во-вторых, нижний 1 Мбайт адресного пространства совместно использовался всеми процессами. В результате ошибка одной программы могла повредить структуры нескольких других программ.
В 2000 году выходит ОС Windows Me. Это была та же Windows 98, включающая в себя некоторые дополнительные функции: функцию отката системы, улучшенную поддержку сети и многопользовательских игр, так же использование изображений, музыки и фильмов.