PowerPoint Presentation : Лекция №9 УПРАВЛЕНИЕ ПАМЯТЬЮ В СОВРЕМЕННЫХ ОПЕРАЦИОННЫХ СИСТЕМАХ
PowerPoint Presentation : Лекция №9 Управление памятью в UNIX и SOLARIS Операционные системы UNIX SVR4 и Solaris 2 и старше используют СТРАНИЧНУЮ организацию виртуальной памяти Страничное распределение эффективно работает с пользовательскими процессами и дисковым вводом-выводом, но мало годиться для управления памятью ядра. Поэтому в этих операционных системах используется специальный механизм распределения памяти ядра
PowerPoint Presentation : Лекция №9 Страничная система Структуры данных Для страничной виртуальной памяти UNIX использует следующие машинно-независимые структуры: Таблица страниц. Дескриптор дискового блока Таблица кадров Таблица использования свопинга.
PowerPoint Presentation : Лекция №9 Страничная система Таблица страниц Обычно для каждого процесса используется одна таблица страниц, в которой каждой странице виртуальной памяти процесса соответствует одна запись Запись таблицы страниц: Номер кадра Возраст Копирование при записи Модифицирована Обращения В памяти Защищен-ность Указывает кадр в реальной памяти Указывает, как долго страница находится в памяти без обращения к ней Устанавливается, когда страница разделяется несколькими процессами. Если один из процессов производит запись в страницу, сначала должны быть сделаны отдельные копии страницы для каждого из совместно использующих ее процессов Указывает, изменено ли содержимое страницы Указывает, что к странице были обращения. Этот бит устанавливается равным 0 при загрузке и может периодически сбрасываться алгоритмом замещения страниц Указывает, что страница находится в основной памяти Указывает, что разрешена операция записи
PowerPoint Presentation : Лекция №9 Страничная система Дескриптор дискового блока В этой таблице каждой странице процесса соответствует запись, описывающая дисковую копию этой страницы. Запись дескриптора дискового блока: Номер устройства свопинга Номер блока устройства Тип памяти Номер логического устройства вторичной памяти, хранящей соответствующую страницу Расположение блока страницы на устройстве вторичной памяти Вторичная память может представлять собой модуль свопинга или исполнимый файл. В последнем случае имеется признак, указывающий, должна ли распределяемая виртуальная память быть предварительно очищенной
PowerPoint Presentation : Лекция №9 Страничная система Таблица кадров Описывает каждый кадр реальной памяти; таблица проиндексирована номерами кадров. Запись таблицы кадров: Состояние страницы Количество ссылок Логическое устройство Номер блока Указатель на данные кадра Указывает, свободен ли кадр или содержит страницу. В этом случае указывается статус страницы: на устройстве свопинга, в выполнимом файле, или выполняется прямое обращение к памяти Количество процессов, обращающихся к странице Логическое устройство, содержащее копию страницы Расположение блока копии страницы на логическом устройстве Указатель на другие записи таблицы в списке свободных страниц и в хеш-таблице страниц
PowerPoint Presentation : Лекция №9 Страничная система Таблица использования свопинга Для каждого устройства свопинга имеется своя таблица, в которой для каждой страницы на этом устройстве имеется своя запись Запись таблицы использования свопинга: Количество ссылок Идентификатор страницы Количество записей таблицы страниц, указывающих на страницы на устройстве свопинга Идентификатор страницы в модуле вторичной памяти
PowerPoint Presentation : Лекция №9 Страничная система Замещение страниц Алгоритм замещения страниц в UNIX представляет собой усовершенствованный часовой алгоритм, известный как часовой алгоритм с двумя стрелками . Начало списка страниц Конец списка страниц Передний указатель Задний указатель Важные параметры для алгоритма: Частота сканирования и Охват Частота сканирования обычно обратно пропорциональна количеству свободной памяти
PowerPoint Presentation : Лекция №9 Управление памятью в Windows 2000 Карта виртуальных адресов W2K Каждый пользовательский процесс W2K получает отдельное 32-битовой адресное пространство, предоставляющее процессу до 4 Гбайт памяти. Внутреннее адресное пространство по умолчанию: 0x0000000 0 0x000 0 FFFF 0x00 0 10000 0x7FFEFFFF 0x7FFF0000 0x7FFFFFFF 0x80 0 00000 0xFFFFFFFF Предназначено для помощи программисту в перехвате присвоений указателю NULL Пользовательское адресное пространство Защитная страница, недоступная пользователю. Эта страница облегчает операционной системе проверку выхода указателя за границы блока памяти Системное адресное пространство. Пользователю недоступно.
PowerPoint Presentation : Лекция №9 Страничная система W2K Пользовательское пространство разделяется на страницы фиксированного размера, каждая из которых может быть загружена в основную память Страница может находиться в одном из трех состояний: Доступна. Страница в настоящее время не используется процессом. Зарезервирована. Множество смежных страниц, которые диспетчер виртуальной памяти предназначает процессу, но которые не учитываются в квоте памяти процесса до их использования. Когда процесс требует записи в память, часть зарезервированной памяти передается процессу. Размещена. Страницы, для которых диспетчер виртуальной памяти выделяет память в страничном файле на диске.