Чем отличаются AWE и PAE в управлении памятью Windows

AWE и PAE часто упоминают рядом, но одно не является обязательной частью другого. В 32-битных системах эти механизмы решают разные задачи в управлении памятью.

Два разных уровня

Address Windowing Extensions (AWE) позволяет приложению выделять физические страницы и по очереди отображать разные их участки в окно виртуального адресного пространства процесса. При этом указатели в коде остаются 32-битными, а приложение получает способ работать с большими объёмами физической памяти, маппируя нужные участки в своё виртуальное пространство.

Physical Address Extension (PAE) относится к способу адресации физической памяти на уровне процессора x86: он расширяет длину физического адреса, позволяя системе обращаться к объёмам RAM, превышающим предел 32-битного физического адреса. Наличие PAE даёт возможность системе и драйверам использовать больше физической памяти, но сама по себе не меняет поведения виртуального адресного пространства процесса.

Почему сочетание было полезно

В конфигурациях с большим объёмом физической памяти комбинация PAE и AWE позволяла 32-битному процессу работать с данными, которые не помещаются одновременно в его стандартное виртуальное пространство, путём оконного отображения разных участков физической памяти. В 64-битных процессах потребность в таком обходе адресного ограничения обычно исчезает из‑за большого виртуального пространства.

Важно отметить, что AWE не создаёт дополнительной памяти и не отменяет аппаратных и системных ограничений на объём доступной RAM. Также выделенные через AWE физические страницы, как правило, не выгружаются в файл подкачки; поэтому при использовании этого механизма следует учитывать влияние на доступные ресурсы системы и не удерживать чрезмерные объёмы физической памяти, чтобы не лишить их других процессов.