Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Операционные системы. Персонализация и виртуальная память в Windows 7.pdf
Скачиваний:
37
Добавлен:
11.03.2016
Размер:
1.52 Mб
Скачать

наборе; страница в листе ожидания (если удалена их всех наборов и ещё не переопределена); страница в листе изменения (если менеджер памяти заранее загрузил её из файла подкачки, предугадав необходимость); процесс ссылается на выделенную виртуальную страницу в первый раз [20a].

2.1.2 Глобальное использование памяти

Менеджер памяти Windows 7 следит за страницами, которые не находятся в рабочих наборах, помещая их в один из четырёх листов:

Нулевой лист (англ. Zero page list).

oСтраницы, инициализированные нулём и готовые к использованию, когда менеджеру понадобится новая страница [20a].

Лист изменения (англ. Modified page list).

oСтраницы, которые были изменены, но к которым не обращались некоторое время, из-за чего были убраны из рабочего набора. После того, как эти страницы были копированы в файл подкачки, они перемещаются в лист ожидания. Когда памяти начинает не хватать, менеджер сначала копирует несколько страниц в файл и проверяет состояние системы, если нехватка всё равно приближается, то он начинает быстро копировать больше страниц.

Когда система больше не подвержена риску, менеджер копирует страницы в фоновом режиме. Такой принцип работы уменьшает риск проблем с целостностью данных, которые могут возникнуть, если страницы этого листа останутся в памяти [20a].

Лист ожидания (англ. Standby page list).

oНеизменённые («чистые», «негрязные» — копия которых в файле подкачки ровно такая же) страницы, которые были удалены из рабочих процессов.

Чаще это страницы из недавно использованных файлов. Это делает данный лист кэшем. При надобности менеджер быстро возвращает страницу в нужный рабочий набор. Все эти страницы могут быть переопределены для новых выделений памяти, почему и относятся к доступной памяти. Именно этот лист детерминирует тот факт, что много свободной памяти не есть хорошо для производительности, о чём мы поговорим в разделе 2.2.

Свободный лист (англ. Free page list).

oНеизменённые страницы, которые не были выделены ни для какой цели или были выделены и уже возвращены для повторного использования. Менеджер имеет подпроцесс, который периодически просыпается, чтобы инициализировать данные страницы и переместить их в нулевой лист [20a].

Страница 16 из 31

На рис. 12 представлена нижняя левая таблица под названием «Физическая память».

Рисунок 12

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

Зарезервировано оборудованием (англ. Hardware Reserved). Резервации обычно составляют около 10-70Мб, но в зависимости от аппаратной конфигурации может достигать и нескольких сотен Мб. Примеры элементов, которые могут влиять на эту цифру включают: System BIOS; ресурсы материнской платы, такие как I/O

продвинутые программируемые контроллеры прерываний APIC; любой девайс,

требующий ввод-вывод через порты, такой как звуковая карта; PCI-E

конфигурационное пространство; любая дополнительная PCI память; VGA память для видео апертуры; другой чипсет и системные устройства, такие как флэш девайсы

Используется (англ. In Use). Память, используемая процессами, драйверами и ОС.

Из «установленного» количества памяти вычитается память, «зарезервированная оборудованием», а также находящаяся в категориях «ожидания», «изменено» и

«свободно».

Изменено (англ. Modified). Страницы из листа изменения. Память, которая должна быть помещена на диск, чтобы её можно было переопределить (поместить в лист ожидания).

Ожидание (англ. Standby). Страницы из листа ожидания. Кэшированные данные,

которые давно не использовались и могут быть возвращены или переопределены для других целей.

Свободно (англ. Free). Страницы из свободного и нулевого листов. Память, которая не имеет никаких важных значений и будет первая использована в случае необходимости.

Иобщая статистика:

Доступно (англ. Available). Память, которая может незамедлительно быть использована для различных целей. Включает в себя память типов «Ожидание» и

«Свободно» (то есть три листа).

Страница 17 из 31

Кэшировано (англ. Cached). Кэшированная память для оперативного доступа.

Включает в себя память типов «Ожидание» и «Изменено» (то есть два листа).

Всего (англ. Total). Объём физической оперативной памяти, которая доступна для работы процессов, драйверов и ОС. Из «установленного» количества памяти вычитается память, «зарезервированная оборудованием»

Установлено (англ. Installed). Объём установленной физической оперативной памяти.

2.1.3 Графики

Это правая таблица (рис. 13).

 

 

 

 

 

 

Все графы сохраняют информацию за последнюю минуту.

 

 

 

 

Верхний граф называется «Использование физической памяти» и

 

 

представляет собой количество используемой физической памяти в

 

 

процентах.

 

 

 

 

 

 

Нижний граф называется «Ошибок отсутствия страницы

в

 

 

памяти/сек.» и представляет собой количество страничных

 

 

прерываний (по оси ординат от 0 до 100 шт).

 

 

 

 

 

Термин Commit Charge используется

 

 

не только для конкретного процесса

 

 

(Commit в таблице процессов),

но и

 

 

для системы в целом. Представляет

Рисунок 13

 

 

собой

используемую

физическую

оперативную

память

(но, как говорилось ранее, не включает в себя всю

используемую ОЗУ) и используемую часть файла

подкачки. На рисунке 13 видно, что использовано около

35%

виртуальной

памяти (рус.

 

название

графика

«Выделение памяти»). Если

взглянуть на

данные

диспетчера задач на рис. 14, можно увидеть общее количество виртуальной памяти (термин Commit Charge

Рисунок 14

Limit; на рис. 23Гб) — всего занято 9Гб, из которых одна

 

часть (менее, чем используемые 6,83Гб) являются физической оперативной памятью,

другая (более, чем 2,17Гб) находятся в файле подкачки и ещё некоторое количество в memory-mapped файлах.

Страница 18 из 31