KomBat Channel
апрель 2019.
7314

Что означают термины физическая память и виртуальная память Windows 7, если не отвечать на вопрос текстом из Википедии?

Ответить
Ответить
Комментировать
5
Подписаться
1
2 ответа
Поделиться

Компьютер для своей работы нуждается в памяти.

  1. Есть память «медленная». Она нужна для складирования хранимой на компьютере информации. Ваши фильмы, музыка и прочее. Примером такой памяти может служить жёсткий или SSD-диск.
  2. Есть память «быстрая». Скорость доступа к ней в сотни и тысячи раз выше, чем к «медленной» памяти. Используется она для обеспечения непосредственной работы компьютера и программ в момент их выполнения. Выпускается в виде отдельных «планок» ОЗУ (оперативное запоминающее устройство), дорого стоит и подключается в специальный разъём на материнской плате.
    Но ОЗУ, понятное дело, имеет ограниченный объём. И в том случае, если системе его не хватает, у компьютера есть два варианта: намертво зависнуть или временно положить часть данных в медленную память (на жёсткий диск). Да, скорость работы (производительность) сильно упадёт, но ничего другого не остаётся.

Операционная система резервирует на жёстком диске некоторый объём как раз для того, чтобы в случае необходимости «подстраховать» ОЗУ при переполнении.

Физическая память — это планки ОЗУ (их можно потрогать, открыв корпус системного блока), а зарезервированное на всякий случай на жестком диске пространство именуется виртуальной памятью. Тот файл, который непосредственно его резервирует, называют файлом подкачки. Его размер, если вас не устраивает заданный системой по умолчанию, можно изменить в настройках (пролистайте в самый конец).

Сергей Грибовотвечает на ваши вопросы в своейПрямой линии
25
0

Приятно читать

+1
Ответить
Прокомментировать

Похоже, у самого Микрософта есть некоторая путаница в терминах, но то, что приведено в ответе Сергея - это файл подкачки, один из механизмов виртуальной памяти, но это нельзя назвать виртуальной памятью целиком. Поясню.

Физическая память - это, понятно, та память, где физически хранятся данные программ. Когда-то давно, во времена DOS и первых версий UNIX в системе могла быть активной одновременно только одна программа, каждая считала себя первой и единственной и отсчитывала память с первых же ячеек памяти по физическим адресам. Однако потом появилась потребность в многозадачности, когда несколько программ работают параллельно, и возникла проблема - теперь память нужно было как-то делить между разными программами, причем как-то сохранить совместимость с программами, которые считают себя единственными занимающими память, потому что при многозадачности они просто писали бы свои данные в одни и те же ячейки физической памяти, т.е. мешали бы друг другу выполнять свою работу. 

И вот тогда появляется решение в виде виртуальной памяти - физическая память на уровне операционной системы разделяется на отдельные блоки определенного размера (размер можно настраивать), также называемые виртуальными страницами (virtual page). И программам не дают доступ к физическим ячейкам памяти напрямую, вместо этого на каждый вызов программы на выделение памяти ей выделяется отдельная страница или несколько страниц, которая может быть в начале, конце или середине физических ячеек памяти - это уже совершенно неважно для самой программы, каждая из запущенных одновременно программ фактически получает возможность обращаться с памятью так, как будто она единственная в памяти и не беспокоиться о том, что она перезапишет чьи-то данные. Именно для этого и нужна виртуальная память.

А файл подкачки - это средство виртуальной памяти, когда часть данных записывается на жесткий диск, чтобы сэкономить оперативную память, здесь Сергей правильно написал.

Подробнее механизм описан у Микрософт на другой странице.

2
0
Прокомментировать
Ответить
Читайте также на Яндекс.Кью
Читайте также на Яндекс.Кью