Каждому процессу выделяется память, такая память называется виртуальной. В этой статье я покажу вам, чем отличаются виртуальная и физическая память Windows.
Виртуальная и физическая память Windows
Для каждого нового процесса, в операционной системе Windows, выделяется некоторый объём оперативной памяти. Процесс не обязательно должен использовать весь выделенный объем памяти, он может занять всего лишь часть. Этот объем памяти называется виртуальным адресным пространством.
Процесс помещает все свои данные в выделенное ему виртуальное адресное пространство. И кстати, он не заботится о реальном расположении памяти. Собственно говоря, физическая память может находиться в оперативной памяти или на жестком диске. Такая память, расположенная на жёстком диске, называется SWAP. В Windows SWAP — это файл на жёстком диске в который помещаются данные из оперативной памяти. Данные в этом файле хранятся точно также как и в оперативной памяти.
Виртуальную память так назвали, потому что процесс думает что он в операционной системе один. Процесс видит только выделенный ему объём памяти (своё виртуальное адресное пространство) и не знает сколько в системе реально физической памяти.
Соотношение виртуальной памяти с физической
В общем работу виртуальной и физической памяти можно представить, таким образом:
- процесс помещает свои данные в ячейки памяти, которые принадлежат его виртуальному адресному пространству;
- вместе с тем, виртуальные ячейки связаны с физическими ячейками в оперативной памяти или на жестком диске в SWAP;
- и в итоге процессу не обязательно знать про физическое расположение памяти.
Размер виртуального адресного пространства теоретически ограничивается архитектурой компьютера. Но операционная система накладывает дополнительные ограничения.
Архитектура | Теоретический предел | Реальный предел для системных компонентов Windows | Реальный предел для виртуального адресного пространства процесса |
---|---|---|---|
32-разрядная | 4 ГБ | 2 ГБ | 2 ГБ |
64-разрядная | 16 ЭБ = = 17600000000 ГБ | 128 ТБ = = 128000 ГБ | 128 ТБ = = 128000 ГБ |
Вы можете спросить, куда девается остальная память на 64-разрядной Windows? Она просто игнорируется, так как пока сложно себе представить такой объём оперативной памяти.
У физической памяти тоже есть лимит и он намного меньше чем лимиты для виртуальной памяти и составляет 24 ТБ.
Надеюсь вам стало понятнее зачем нужна виртуальная и физическая память Windows.