Все знают что 32битные версии виндовс показывают 3-3,5 ГБ доступной памяти, потому что адресное пространство отъедают аппаратные ресурсы, как то видео и тп. Но вроде бы если включить PAE с помощью несложной магии можно получить честные 4 ГБ. Так вот нет, это работает не так.
Оказывается Windows и так уже по умолчанию работает в режиме PAE, в 99% случаев. Но в 32битные ядра хардкодно забито ограничение в 4ГБ, чтобы избежать различных проблем с левыми драйверами. Программы видят только свои 32 битные адреса и ничего не знают о PAE, все остальное делает ядро. А вот драйвера просто обязаны знать про PAE и работать с ним, либо мы получаем BSOD. А с ограничением, память ремапленная выше 4 ГБ просто никогда не используется, и исчезают все проблемы. Ну и лицензии и сегментация рынка конечно.
И тут есть такой патч:
This patch allows you to use more than 3/4GB of RAM on an x86 Windows system. Works on Windows Vista SP2, Windows 7 SP0, Windows 7 SP1, Windows 8 and Windows 8.1.
http://wj32.org/wp/2013/10/25/pae-patch-updated-for-windows-8-1/ Работает! Видно и 4, и 6, и 8 ГБ, теоретически даже 64 ГБ, а может и 128.
Вот как я без этого раньше жил?
А вот собственно откуда патчик этот пошел:
http://www.geoffchappell.com/notes/windows/license/memory.htmРазоблачительная статья про то, как выдумав воображаемые проблемы с драйверами, Макрософт от жадности ограничило память клиентским версиям виндовс, чтобы основа основ бизнеса Макфрософт, корпоративные клиенты, из той же жадности не ставили сервера на клиентских версиях виндовс.