Существует много неправильных представлений об ограничении памяти в 32-разрядных ОС Windows.
Прежде всего, когда я говорю ОЗУ, это включает в себя все виды ОЗУ. Так что не только обычная, но и ваша видеопамять.
Максимальный доступный объем оперативной памяти на процесс для 32-разрядной ОС составляет 2 ГБ. Если у вас 64-разрядная ОС, 32-разрядный процесс может выделить до 4 ГБ.
Кроме того, вся ОС может адресовать только 4 ГБ для каждого объединенного процесса, в то время как 64-разрядные ОС могут выделять 8 ТБ.
Также интересно то, что этот лимит складывается в выгружаемый пул. Это означает, что 32-разрядная ОС не может использовать более 2 ГБ, что означает 6 ГБ для всех приложений, включая виртуальную память. Конечно, это не имеет ничего общего с оперативной памятью, так как остальные 2 ГБ будут храниться в файле подкачки, ограниченном скоростью вашего жесткого диска.
Для получения дополнительной информации см. Ограничения памяти для выпусков Windows.
Примечание: это только для приложений. 32-разрядная ОС Windows может выделить до 4 ГБ, но 2 ГБ из этого выделены только для системного использования, оставляя только 2 ГБ для приложений. В некоторых случаях (особенно в новых ОС) это делится на 3 ГБ для приложений и 1 ГБ для ядра.
Я обсуждал только Windows, потому что это контекст, в котором был задан вопрос. Я не знаком с ограничениями других ОС.