Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОПЕРАЦИОННЫЕ СИСТЕМЫ И ОБОЛОЧКИ.doc
Скачиваний:
46
Добавлен:
21.09.2019
Размер:
799.74 Кб
Скачать

5.2.3. Управление памятью

В Windows 9x и Windows 2000 каждый процесс имеет свое адресное пространство

до 4 Гб памяти (не физическое ОЗУ). Физическая память ограничена системными

ресурсами: ОЗУ и дисковым пространством. Windows выделяет приложению 2 Гб

памяти, а остальные 2 Гб резервируются u1076 для нужд ядра.

Если объем ОЗУ меньше, чем 4 Гб, то Windows использует механизм виртуальной

памяти: когда объем ОЗУ будет исчерпан, часть содержимого физической памяти

переносится на жесткий диск. Этот механизм называется подкачкой.

Для каждого процесса ядро поддерживает таблицу страниц – структуру,

позволяющую преобразовать виртуальные адреса в физические.

Виртуальная память Windows использует механизм отображения области

физической памяти на любую область 32-разрядных адресов для того, чтобы любая

программа как бы обладала своим собственным физическим ОЗУ.

Каждая программа имеет собственное виртуальное адресное пространство, которое

диспетчер виртуальной памяти преобразует в адреса физического ОЗУ или в файлы на

жестком диске.

Физическое и виртуальное (логическое) адресное пространство каждого процесса

разделено на страницы – кванты памяти, размер которых зависит от компьютера. Ядро

может перемещать страницы памяти в страничный файл на диске и обратно. Когда

страница перемещается в физическую память, ядро обновляет таблицу страниц

соответствующего процесса. Когда ядру требуется место в физической памяти, оно

50

вытесняет самые старые страницы физической памяти в страничный файл. Все это

происходит незаметно для приложения.

5.2.4. Выполнение приложений

Windows 9x и Windows NT выполняют приложения по-разному, особенно 16-

разрядные.

Механизм сообщений Windows используется для управления приложениями.

Сообщение генерируется всякий раз, когда происходит событие, например, перемещение

мыши. Сообщения помещаются в очередь сообщений. Активное приложение постоянно

просматривает свою очередь и извлекает из нее поступившие сообщения.

Обмен сообщениями в Windows основан на том, что у каждого приложения своя

очередь сообщений, т.е. каждый поток имеет собственную очередь сообщений и не

влияет на поведение других работающих приложений. Если одно из приложений

разрушится, то остальные будут выполняться на основе вытесняющей многозадачности

(для Win32-приложений). 16-разрядные приложения используют общую очередь

сообщений и в случае сбоя, пока проблема не будет решена, остальные приложения не

получат доступа к очереди.

Windows NT выполняет приложение в рамках виртуальной машины. Фактически

ВМ – среда для выполнения приложения, которая эмулирует все ресурсы компьютера.

Для приложения ВМ – полноценный компьютер.

Каждая виртуальная машина включает в себя следующие компоненты:

- карту памяти, определяющую объем виртуальной памяти, доступный этой

виртуальной машине;

- контекст выполнения, определяемый состоянием регистров виртуальной

машины;

- набор ресурсов, доступных приложению.

Основные достоинства виртуальной машины Windows:

- виртуальная память, выделенная отдельной ВМ, изолирована от виртуальной

памяти, выделенной другой ВМ;

- средства защиты памяти и портов ввода-вывода позволяют защитить каждое из

входящих в систему устройств.

Драйвер устройства – программный компонент, получающий команды из ОС и

преобразующий их в команды конкретным устройствам. Часто драйверы

разрабатываются производителем устройства. Драйверы позволяют разрабатывать

аппаратно независимые приложения. Компоненты, для которых используются драйверы:

- дисплеи;

- звуковые карты;

- устройства связи;

- принтеры;

- сетевые адаптеры.

Драйвер может принадлежать к одной из групп: защищенного режима и

реального режима.

Драйверы реального режима созданы для работы в реальном режиме ОС MS-DOS.

Они не так безопасны и устойчивы, как драйверы защищенного режима. Драйвер

защищенного режима (виртуальный драйвер) обеспечивает быстрый разделяемый доступ

к устройству. Код защищенного режима выполняется более эффективно.

Windows 9x поддерживает оба типа драйверов, а Windows NT только драйверы

защищенного режима.

51