Как адресное пространство разбивается на разделы
Виртуальное адресное пространство каждого процесса разбивается на разделы. Их размер и назначение в какой-то мере зависят от конкретного ядра Windows (таблица 13-1)
Как видите, ядра 32- и 64-разрядной Windows 2000 создают разделы, почти одинаковые по назначению, но отличающиеся по размеру и расположению. Однако ядро Windows 98 формирует другие разделы. Давайте рассмотрим, как система использует каждый из этих разделов.
Раздел |
32-разрядная Windows 2000 (на х86 и Alpha) |
32-разрядная Windows 2000 (на х86 с ключом /3GB) |
64-разрядная Windows 2000 (на Alpha и А-64) |
Windows 98 | |||||
Для выявления |
0x00000000 |
0x00000000 |
0x00000000 00000000 |
0x00000000 | |||||
нулевых указателей |
0x0000FFFF |
0x0000FFFF |
0x00000000 0000FFFF |
0x00000FFF | |||||
Для совместимости с программами DOS и 16-разрядной Windows |
Hет |
Нет |
Нет |
0x00001000 0x003FFFFF | |||||
Для кода и данных |
0x00010000 |
0x00010000 |
0x00000000 00010000 |
0x00400000 | |||||
пол ьзовател ьс кого режима |
0x7FFEFFFF |
0xBFFFFFFF |
0x000003FF FFFEFFFF |
0x7FFFFFFF | |||||
Закрытый, |
0x7FFF0000 |
0xBFFF0000 |
0x000003FF FFFF0000 |
Нет | |||||
размером 64 Кб |
0x7FFFFFFF |
0xBFFFFFFF |
0x000003FF FFFFFFFF | ||||||
Для общих MMF (файлов, проецируемых в память) |
Нет |
Нет |
Нет |
0x80000000 0xBFFFFFFF | |||||
Для кода и данных |
0x800000000 |
0xC0000000 |
0x00000400 00000000 |
0xC0000000 | |||||
режима ядра |
0xFFFFFFFF |
0xFFFFFFFF |
0xFFFFFFFF FFFFFFFF |
0xFFFFFFFF |
Таблица 13-1. Так адресное пространство процесса разбивается на разделы
NOTE:
Microsoft активно работает над 64-разрядной Windows 2000. На момент напиcания книги эта система все еще находилась в разработке. Информацию по 64разрядной Windows 2000 следует учитывать при проектировании и реализации текущих проектов Однако Вы должны понимать, что какие-то детали скорее всего изменятся к моменту выхода 64-разрядной Windows 2000. То же самое относится и к конкретным диапазонам разделов виртуального адресного пространства и размеру страниц памяти на процессорах IA-64 (64-разрядной архитектуры Intel).