
Основные виды Windows (3.Х, 9x, nt, xp, ce)
Windows 3.x
|
Windows 3.x (3.1, 3.11) фирмы Microsoft (3.1 - 1987г.) представляет собой надстройку над MS DOS. Фактически, Windows «перехватывает» у DOS управление большинством ресурсов (кроме файловой системы). В части управления процессами Windows обеспечивает кооперативную (невытесняющую) многозадачность. Виртуальная память процесса сегментирована. При работе на процессорах i386 и последующих, которые аппаратно поддерживают сегментно-страничную модель, страничная часть адресации используется для создания виртуального пространства страниц, размер которого в 4 раза превышает размер реальной памяти, далее управление памятью ведется по сегментной модели в этом виртуальном пространстве страниц.
|
Программирование в Windows является событийно-управляемым. Программа представляет собой цикл, каждая итерация которого начинается с ожидания сообщения (каковым может быть, например, нажатие кнопки мыши), затем сообщение обрабатывается, и программа ожидает нового сообщения. Во время ожидания сообщения процесс может быть вытеснен.
Ядро Windows состоит из 3 основных модулей, из которых: Kernel – обеспечивает системные функции, User – объекты интерфейса пользователя, GDI – графические функции.
Основным нововведением Windows, обеспечившим ее популярность, является полноэкранный графический интерфейс пользователя.
Windows for Workgroups 3.11 расширена средствами совместного использования ресурсов локальной сети (файлы, принтеры).
Windows 9.x
|
Эта аббревиатура обозначает две наиболее популярные ОС фирмы Microsoft: Windows 95 (95 OSR2) и Windows 98 (98 SE, ME) во всех их реализациях. Windows 95 разработана Microsoft, прежде всего, для предотвращения перехода пользователей Windows 3.x в среду OS/2. Windows 95 справилась с этой задачей, но не за счет своих объективных достоинств, а за счет крупномасштабной рекламной компании, начавшейся задолго до ее появления на рынке. В отличие от Windows 3.x, Windows 95 является полнофункциональной ОС, код DOS в нее встроен только для поддержки приложений, выполняющихся на виртуальной машине DOS. Программы, написанные для Windows 95, используют 32-разрядную адресацию. Основу той части ОС, которая работает в пользовательском режиме, составляет системная виртуальная машина, в среде которой выполняются все приложения Win32, а также виртуальная машина |
Windows 3.x, в среде которой выполняются приложения Win16. Функции модулей Kernel, User, GDI – те же, что и в Windows 3.x, около 50% кода этих модулей просто перенесено из Windows 3.x.
В части многозадачности Windows 95 обеспечивает вытесняющую многозадачность (включая потоки) с динамически изменяемыми приоритетами. Планированием процессов занимается Диспетчер ВМ, работающий в режиме ядра. Однако, поскольку часть системного кода заимствована из Windows 3.x и является нереентерабельной, вытеснение процесса в момент, когда он выполняет системный вызов, не всегда возможно.
Процессу пользователя Windows 95 предоставляет плоское адресное пространство размером 4 Гбайт. Это реализуется за счет того, что каждому процессу выделяется только один сегмент, адрес представляет собой 32-разрядное смещение в сегменте. В верхней части виртуального адресного пространства располагаются объекты, общие для всех процессов, в том числе и системные модули. Системный вызов имеет вид вызова процедуры, находящейся в адресном пространстве процесса. Верхние части виртуальных адресных пространств всех процессов перекрываются, что создает потенциальную возможность для одного процесса «испортить» систему для всех. Значительная часть системных модулей реализована в виде библиотек динамической компоновки.
Для обеспечения взаимодействия между процессами Windows 95 представляет: общие области памяти (т.наз., файлы, отображаемые в память), семафоры, мьютексы (переменные взаимного исключения) и события (и то, и другое – разновидности семафоров), сообщения.
В первой версии использовалась модификация файловой системы FAT, в версии OSR FAT-32 была значительно модифицирована. Windows 95 обеспечивает инсталлируемые файловые системы – возможность одновременной загрузки и поддержки драйверов различных ФС.
Интерфейс Windows 95 графический, документо-ориентированный.
Основное отличие Windows 98 – в организации интерфейса. Используется три вида пользовательского интерфейса: Web-подобный (который может быть реализован через броузер Internet Explorer), классический и смешанный. При Web-подобном интерфейсе открываемые объекты (папки, файлы) выделяются одним лишь указанием мыши, а открываются однократным щелчком. Классический интерфейс – оставшийся от Windows 95. В нем объекты выделяются однократным щелчком мыши, а открываются двукратным щелчком. Смешанный пользовательский интерфейс обеспечивает любую комбинацию свойств Web-подобного и классического интерфейса.
В Windows 98 имеется множество других новаций и усовершенствований, суммарно это все-таки другая ОС, хотя и близкая к своей предшественнице.
Можно выделить расширенные возможности работы с файлами, улучшенные сетевые возможности, усовершенствованные и дополнительные средства мультимедиа, улучшенную поддержку устройств и технических средств, включая установку и обслуживание ОС.
Хотя Windows 9х с самого начала считались неким суррогатом, призванным обеспечить удержание фирмой позиций до выхода в свет принципиально новой ОС фирмы Microsoft (NT), эта система, по-видимому, будет сохраняться, и развиваться еще некоторое время для домашних и других ПК неответственного применения. Основным преимуществом Windows 9х является простота работы с ней. Основным минусом считается неустойчивость в работе, вызванная самим принципом построения ОС: приложения и модули ОС работают в одном адресном пространстве и легко уязвимы при сбоях приложений.
Windows NT
|
Windows NT явилась продолжением Microsoft проекта OS/2, предпринятым фирмой после того, как разошлись ее пути с IBM. С самого начала Windows NT планировалась как полностью 32-разрядная ОС с объектно-ориентированной структурой, предназначенная выполнять функции сервера. Windows NT доступна на большом числе аппаратных платформ CISC и RISC-процессоров, в том числе и в симметричных многопроцессорных архитектурах, но эффективно она работает только на платформе Intel-Pentium, где и получила широкое распространение. Windows NT строится на базе микроядра. Нижний уровень составляет уровень аппаратных абстракций, который обеспечивает доступ к аппаратным средствам для разработчиков драйверов. Ядро ОС обеспечивает переключение процессов, синхронизацию, обмен сообщениями, управление реальной памятью. |
Над ядром расположены модули исполнительной системы, также работающие в режиме ядра и являющиеся менеджерами ресурсов. В режиме процесса работают серверы, создающие среду для приложений. Основным является сервер Win32, остальные показанные на рисунке серверы в последних версиях не поддерживаются.
Windows NT является ОО системой, все системные ресурсы представляются как объекты. Важными составляющими ОС является подсистема безопасности, которая ведет базу данных безопасности, и менеджер безопасности, который проверяет права доступа для каждого объекта. Однако, в каждой последующей версии все большее число модулей (в том числе и драйверы независимых разработчиков) получают доступ в режим ядра, что повышает быстродействие, но снижает надежность работы ОС. Система обеспечивает вытесняющую многозадачность с динамическим изменением приоритетов потоков. Однако, задача планирования дисциплины распределения процессорного времени возлагается на процесс-сервер.
Windows NT предоставляет пользовательскому процессу виртуальное адресное пространство размером 2 Гбайт. Системные вызовы имеют вид обращения к процедурам, находящимся в верхней части виртуального адресного пространства. Однако на самом деле там находятся не сами системные модули, а лишь переходники, которые превращают вызов в сообщение, переправляемое при помощи модуля «Средства вызова локальных процедур» процессу-серверу, этот же переходник превращает ответное сообщение сервера в отклик на системный вызов. Таким образом, если процесс «испортит» верхнюю часть своего виртуального адресного пространства, он испортит только свои переходники, а не системные модули. Процесс-сервер работает в собственном 4-Гбайтном адресном пространстве, полностью изолированном от пространств пользовательских процессов.
Подобно OS/2 и Windows 95, Windows NT обеспечивает инсталлируемую ФС систему. Основная ФС – NTFS – обеспечивает хранение файлов в непрерывных экстентах дискового пространства и представление плана размещения файла в виде B+-дерева, а также мощные средства сохранения целостности ФС при помощи различных вариантов резервного копирования, включая технологию RAID-5.
Средства взаимодействия процессов идентичны в Windows 9х и Windows NT.
Очередная версия Windows NT – 5 получила название Windows 2000. Она выпускается в разных редакциях – для различных применений, включая Home Edition. Еще в середине 2001 года она считалась наиболее продвинутой ОС корпорации.
Общие черты Windows 9х и Windows NT
Простота использования
Автоматическое определение оборудования во время инсталляции;
Интерфейс пользователя нового поколения;
Технология Plug and Play;
Реальная многозадачность
Использование Win32® и OLE