Что представляет собой виртуальная память

Виртуальная память компьютера сочетает в себе активную оперативную память, а также память неактивных DASD для формирования широкого спектра последовательных адресов. С появлением первых ПК эта функция присутствовала в стандартной комплектации, постоянно изменяясь и модернизируясь.

виртуальная память

Основное понятие

В программировании виртуальная память – это метод управления запоминающим устройством, разработанный для многозадачности ядра. Это технология виртуализации хранения данных, доступная для определенных процессов или задач. В первую очередь это относится к непрерывному пространству адресов, которое является уникальным для каждого запущенного процесса. Операционная система управляет виртуальным адресным пространством, а также производит назначение реальной памяти для виртуальной. Процессор автоматически переводит виртуальные адреса в физические с помощью специального аппаратного управления памятью, которое часто упоминается как блок управления. Пока виртуальные адреса осуществляют поиск реальных мест памяти, этот процесс выполняется непрерывно. Когда такая трансляция оказывается неудачной, операционная система берет нагрузку на себя и перемещает нужные страницы памяти с резервным хранилищем в основную память, восстанавливая прерванный процесс. Когда виртуальная память заканчивается, компьютер начинает работать некорректно.

виртуальная память это

Это упрощает организацию приложений в случае, когда они должны использовать больше кода и данных, чем может поместиться в оперативной памяти. Кроме того, при выполнении процессов, когда даны отдельные адресные пространства, данная методика обеспечивает защиту приложений путем изоляции памяти у других процессов.

Значение

Виртуальная память позволила сделать прикладное программирование проще за счет сокрытия фрагментации физической памяти. Это обеспечивается путем делегирования ядру управления иерархией памяти (устраняя необходимость для программы в обработке накладок). Кроме того, когда каждый процесс выполняется в своем собственном выделенном адресном пространстве, устраняется необходимость перемещения программного кода.

виртуальная память заканчивается

Использование

Виртуальная память является неотъемлемой частью современной компьютерной архитектуры, ее реализация требует определенной аппаратной поддержки, обычно представленной в виде блока управления памятью, встроенного в процессор. В некоторых случаях эмуляторы и виртуальные машины могут использовать аппаратную поддержку для увеличения производительности своих виртуальных реализаций памяти. Большинство современных операционных систем, поддерживающих виртуальную память, также запускают каждый процесс в своем собственном выделенном адресном пространстве. Встроенные и другие специальные разновидности компьютерных систем, которые требуют очень быстрого и постоянного отклика, могут не использовать виртуальную память за счет уменьшения детерминизма. Иногда система виртуальной памяти может спровоцировать непредсказуемые ловушки, которые могут привести к нежелательному колебанию во время операций ввода/вывода. Это происходит потому, что иногда используются не рассчитанные на такую нагрузку аппаратные средства.