Хорошо известно, что 32-разрядные системы могут обрабатывать только 4 ГБ как максимальный объем оперативной памяти.
Под Linux это ограничение также распространяется на разделы подкачки? Если объем подкачки RAM + превышает 4 ГБ, будет ли он полностью использован?
Если ответ «нет, это не относится к обмену», почему?
Ответы:
Нет, представьте, что RAM - это ваш рабочий стол, а пространство подкачки / виртуальная память - как шкаф Вы можете поместить много информации в картотеку, но к ней сложно получить доступ. Любые бумаги, которые вы хотите использовать, вы должны вытащить и положить их на стол; проблема в том, что стол может вместить только столько бумаг одновременно.
32-разрядные машины могут иметь только рабочий стол размером 4 ГБ (2 ^ 32 или около 4 миллиардов байт), но у них все еще может быть почти неограниченное количество шкафов для хранения документов. Они просто должны «поменять» документы, когда стол заполнен, и им нужно посмотреть на другую страницу, которая находится в шкафу.
Причина, по которой он не применяется к свопу, заключается в том, что доступ к содержимому ОЗУ или выполнение кода из него ограничены размером чисел, с которыми он может работать. Думайте об этом, как будто у вас на столе может быть только 4 миллиарда слов, потому что это столько, сколько вы можете сосчитать, и вам нужно работать непосредственно со словами. «Слово 3 547 введено с ошибкой. Измените слово 3 452 780 на« Привет ». Удалите слово 6».
Теперь каждая страница может содержать 4000 слов. Подвох заключается в том, что когда вы ссылаетесь на пространство подкачки, вы не ссылаетесь на него по слову, а только по странице. Таким образом, вы все еще можете сосчитать до 4 миллиардов, но вы можете сосчитать до 4 миллиардов страниц. 4 миллиарда страниц на самом деле содержат 16 триллионов слов - намного, намного выше, чем вы можете сосчитать.
64-разрядные машины могут считать выше, поэтому они могут разместить все страницы на столе сразу, если у них достаточно большая стойка. Даже если вы поместите очень большой рабочий стол в 32-разрядный компьютер, вы все равно сможете сосчитать только до 4 миллиардов, поэтому у вас нет возможности сослаться на все дополнительные слова на рабочем столе.
источник
Вы путаете физическую и виртуальную память.
ОЗУ - это физическая память. Пространство подкачки может содержать много виртуальных адресных пространств по 4 ГБ.
источник