У вас тут путаниц большой.
1) объем
физической памяти определяется железом (дровами оси)
да, 32-х разрядная ось может юзать больше 4гб, но только при помощи костылей, так выньсервер, даже 32-хбитный может заюзать больше 4гб оперативки на ia32 используя PAE
2) объем адресуемой
виртуальной памяти определяется осью/разрядностью проца (4гб для XP32, 16тб xp64)
вот тут хоть кол чеши
3) объем
пользовательской виртуальной памяти (той что может пользоваться программа для хранения данных) определяется сугубо осью, для винхп32 это будет 2г, при запуске с ключем /3gb - 3г.
Тоисть, ни один процесс, запущенный под винхп не сможет создать скажем массив объемом больше 2-3г (кроме того, не нужно забывать, что никто не обещает вам, что этот массив будет целиком в оперативке, хрен там, система многозадачная, другие процессы тоже кушать хотят).
С другой стороны, 2 процесса уже могут, теоретически, забить своими данными вплоть до 3,5гб оперативки (тут не уверен, сколько именно вынь отжирает физической памяти по минимуму)
Добавлено:Windows XP чисто теоретически поддерживает 4гб озу, на практике она использует часть адрессной шины под свои системные нужны и адрессовать часть памяти в 4гигабайте просто не может. Они есть - но недоступны.
Скажу тебе больше, ты вообще не имеешь доступа к озу. Бывает попросишь у виндов 2гб, а она тебе даст 2метра а остальное в своп, вот ведь какая ерунда
Добавлено:ps.
Почитал сцылки Алиена,
таки да, винь32 без использования пае не сможет заюзать даже 4гб, ибо ядру нужны адреса для работы с PCI/AGP тоесть она не сможет юзать эти адреса для работы с памятью.
Хотя "никогда" это всеже слишком сильно.
Сообщение отредактировал deadok: 18 October 2007 - 13:15
Тута, типа, должно писаться: скока раз я кого убил, мое жизненное кредо и прочая ботва