Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

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



Объем оперативной памяти существенно сказывается на характере протекания вы-

числительного процесса, так как он ограничивает число одновременно выполняющихся

программ, т. е. уровень мультипрограммирования.

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

Такая подмена (виртуализация) оперативной памяти дисковой памятью позволяет повысить уровень мультипрограммирования, поскольку объем оперативной памяти те­перь не столь жестко ограничивает число одновременно выполняемых процессов. При этом суммарный объем оперативной памяти, занимаемой образами процессов, может существенно превосходить имеющийся объем оперативной памяти.

В данном случае в распоряжение прикладного программиста предоставляется вирту­альная оперативная память, размер которой намного превосходит реальную память систе­мы и ограничивается только возможностями адресации используемого процесса (в ПК на базе Pentium 23 2= 4 Гбайт). Вообще виртуальным (кажущимся) называется ресурс, обладающий свойствами (в данном случае большой объем ОП), которых в действитель­ности у него нет.

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

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

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

Недостатки свопинга:

· избыточность перемещаемых данных и отсюда замедление работы системы и неэффективное использование памяти;

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

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

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





Дата публикования: 2014-11-04; Прочитано: 414 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...