24522

Понятие виртуальной памяти, ее назначение. Свопинг

Доклад

Информатика, кибернетика и программирование

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

Русский

2013-08-09

14.41 KB

81 чел.

Вопрос 27. Понятие виртуальной памяти, ее назначение. Свопинг.

§5.3.2.1. Виртуальная память.

Понятие виртуальной памяти.

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

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

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

Виртуальная память – это совокупность программно-аппаратных средств, позволяющих использовать прикладные программы, размер которых превосходит имеющуюся оперативную память.

Виртуальная память решает следующие задачи:

- размещение данных в запоминающих устройствах разного типа, например часть кодов программы в оперативной памяти, а часть на диске;

- выбор образов процессов или их частей для перемещения из оперативной памяти на диск и обратно;

- перемещение по мере необходимости данных между памятью и диском;

- преобразование виртуальных адресов в физические.

Все эти действия выполняются автоматически, без участия программиста.

Виртуализация памяти может быть осуществлена на основе двух различных подходов:

- свопинг (swapping) – образы процессов выгружаются на диск и возвращаются в оперативную память целиком;

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

Свопинг (подкачка) представляет собой частный случай виртуальной памяти, он более прост в реализации. Однако свопингу свойственна избыточность, поскольку когда ОС решает активизировать процесс, для его выполнения, как правило, не требуется загружать в оперативную память все его сегменты полностью. Аналогично при освобождении памяти для загрузки нового процесса обычно не требуется выгружать предыдущий процесс на диск целиком, достаточно вытеснить на диск только часть его образа. Перемещение избыточной информации замедляет работу системы, а также приводит к неэффективному использованию памяти.

Из-за этих недостатков свопинг как основной механизм управления памятью почти не используется в современных ОС. На смену ему пришел более совершенный механизм виртуальной памяти.

Наиболее распространенными реализациями виртуальной памяти являются страничное, сегментное и странично-сегментное распределение памяти.

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

Сегментная виртуальная память предусматривает перемещение данных сегментами – частями виртуального адресного пространства произвольного размера, полученными с учетом смыслового значения данных.

Сегментно-страничная виртуальная память использует двухуровневое деление: виртуальное адресное пространство делится на сегменты, а затем сегменты делятся на страницы. Единицей перемещения данных здесь является страница. Этот способ управления памятью объединяет в себе элементы обоих предыдущих подходов.


 

А также другие работы, которые могут Вас заинтересовать

59898. ОСОБИСТІСТЬ УЧНЯ 102.5 KB
  Належність особистості до певного суспільства до певної системи суспільних відносин визначає її психологічну та соціальну сутність. Характерними ознаками особистості є наявність у неї свідомості виконувані нею суспільні ролі суспільно корисна спрямованість її діяльності.
59899. Visual Basic 6. Руководство разработчика 7.18 MB
  Основные элементы управления ctiveX. Усовершенствованные элементы Visul Bsic. Усовершенствованные элементы управления ctiveX. Дополнительные элементы управления ctiveX. Специальные темы. Конструирование элементов управления ctiveX Часть V Программирование баз данных на Visul Bsic.
59900. Розв’язування задач за допомогою пропорції 251 KB
  Окрім овочів і фруктів багато вітаміну С міститься в хвої сосни приблизно в 7 разів більше ніж в лимонах. У 100 грамах чорної смородини міститься приблизно 250 міліграм вітаміну С 1мг = 0001 грама. Визначте вміст вітаміну С в грамах на 1 кг чорної смородини.
59901. Витамины встали в строй – гриппу и простуде объявили бой! 44 KB
  Воспитательное мероприятие: Витамины встали в строй гриппу и простуде объявили бой Синьор Апельсин: В мире очень я известный Апельсинчиком зовусь Очень-очень я полезный Я всем детям пригожусь.
59902. Декоративно-прикладное искусство. Вытынанка. Декоративная композиция в технике вытынанки 274 KB
  Цель урока: познакомить учащихся с одним из традиционных видов украинского декоративно-прикладного искусства вытынанкой и основными приемами ее выполнения; развивать у учащихся творческое воображение фантазию совершенствовать навыки работы в технике вытынанки...
59903. Витинанка – вид народного мистецтва. Виконання композиції «Дерево життя» 165.5 KB
  Мета: дати поняття про мистецтво витинанки; показати виникнення становлення та розвиток цього мистецтва в Україні; формувати навички виготовлення витинанок; виховувати розуміння взаємозв’язку внутрішньої та зовнішньої...
59904. Загальні правила і рекомендації щодо розвитку бігової витривалості у дітей шкільного віку 43 KB
  Давньогрецькі мудреці говорили: Хочеш бути здоровим бігай Хочеш бути гарним бігай Хочеш бути розумним бігай Цими словами вони підкреслюють величезне значення бігу задля укріплення здоров’я досягнення гармонічності статури розвитку розумових здібностей.
59905. У войны не женское лицо… 72.5 KB
  На сцену со свечами в руках выходят семь учеников. 1й ученик: Усталость падает на грудь И ломит плечи. 2й ученик: Окутать ноги в теплый плед И сном забыться И чтобы юность прошлых лет Могла присниться.
59906. Вторая мировая война (1939-1945г.г.). Причины и начало Второй мировой войны. События 1939-1941 г.г. 75 KB
  Цель: Раскрыть причины и характер Второй мировой войны; дать характеристику ходу боевых действий в 1939-1941 г.1121 Хрестоматия Карта: Вторая мировая война Начало 2 мировой войны в Европе сентября 1939 июнь 1941 г.