Примечание
64-разрядная версия Windows ХР, которая будет работать на процессоре Intel Itanium, сможет поддерживать до 16 Терабайт виртуальной памяти. Это огромное увеличение по сравнению с объемом памяти, доступным на более распространенной 32-разрядной версии Windows ХР Professional. С удвоением размера числового значения, которое сможет обрабатывать процессор, легко понять, почему ХР, вероятнее всего, будет преуспевать. Предоставляя приложениям, требующим большие структуры данных и более быстрые возможности обработки чисел, чем это может обеспечить 32-разрядная машина, пользователи, нуждающиеся в более мощных вычислительных возможностях, найдут их в Windows ХР.
Из 4 Гб диапазона адресной памяти 2 Гб зарезервировано для операционной системы непосредственно, а оставшиеся 2 Гб зарезервированы для приложения. Это означает, что с точки зрения приложения, есть фактически 2 Гб памяти. Однако, одна важная вещь, о которой не стоит забывать, - это то, что виртуальная память является виртуальной. Другой момент - это то, что количество адресов, с которыми Windows ХР может работать, на самом деле гораздо больше, и что существует разница между памятью, выделенной одному приложению, и всей памятью, установленной на компьютере. Помните также о том, что есть адреса виртуальной памяти и физическая память. Виртуальные адреса - это просто пронумерованные сегменты в адресном пространстве, которые могут быть использованы процессом. Физическая память - фактическая память, установленная на вашем компьютере. VMM заботится об отображении виртуальных адресов на физические адреса памяти.
Следить за адресным пространством памяти процесса и координировать эти адреса с фактической физической памятью, установленной в компьютер - это и есть функция VMM. Диапазон адресов памяти от 00000000Н до 7FFFFFFF11 (шестнадцатеричную запись любят использовать многие программисты). Кроме того, помните, что каждый процесс использует тот же диапазон адресов. Вы можете подумать, что адресный интервал может быть разделен среди одновременно протекающих процессов, каждый из которых получит только часть адресного интервала; однако это не так. Каждый процесс может использовать весь адресный интервал. VMM следит за адресами каждого запущенного процесса.
Нет сомнения, что многие из вас знают, что первоначальным разработчиком Windows NT был Дэвид Катлер (David Cutler), он также был главным разработчиком операционной системы Digital Equipment Corporation's Virtual Memory System, теперь называемой OpenVMS. Естественно, что Windows ХР использует улучшенные методы работы виртуальной памяти, похожие на использующиеся в OpenVMS.
Страничная адресация виртуальной памяти
Способы управления виртуальной памятью, предоставляемые Windows ХР, на первый взгляд могут показаться сложными, но в действительности это простой процесс создания 4 Гб памяти при гораздо меньшем объеме физической памяти, имеющейся па компьютере. Несколько важных положений, которые следует помнить, говоря о виртуальной памяти, основанной на страницах:
32-разрядная виртуальная адресация.
Каталоги страниц.
Таблицы страниц.
Блоки страниц.
Буферы хранения трансляции.
Файлы страниц.