Мотивировка концепции виртуальной памяти
Виртуальная память
Виртуальная память– распространенная стратегия распределения памяти, используемая во всех современных операционных системах, основанная на идее расширения физической памяти путем размещения расширенной памяти на диске и использования таблиц страниц (или сегментов) для трансляции адресов. В лекции рассмотрены следующие вопросы:
· Мотивировка концепции виртуальной памяти;
· Потребность в страничной организации;
· Создание процесса и его пространства виртуальной памяти;
· Замена страницы;
· Размещение фреймов;
· Thrashing;
· Примеры организации виртуальной памяти в различных ОС.
Мотивировка концепции виртуальной памяти
Концепция виртуальной памятиоснована на идеях отделения логической памяти пользователя от физической памяти и расширения логической памяти путем хранения ее образа на диске.
При исполнении программы только часть ее кода и данных, к которым происходит обращение, в каждый момент требует размещения в физической памяти. Поэтому, естественно, возникает идея расширитьпространство логической памяти, которое может быть реализовано намного большего размера, чем физическая память. Это и есть основной принцип организации виртуальной памяти.
Виртуальная память поддерживает совместное использование одного и того же адресного пространства более чем одним процессом, создание и исполнение облегченных процессов в общем пространстве виртуальной памяти.
Виртуальная память допускает более эффективное создание процесса, чем предшествующие схемы организации памяти и процессов.
Заметим, что концепция виртуальной памяти непосредственно не связана ни со страничной, ни с сегментной стратегиями распределения памяти. Виртуальная память может быть реализована различными способами, например, с помощью:
· страничной организации по требованию (paging on demand);
· сегментной организации по требованию (segmentation on demand).
В приведенных терминах подчеркивается динамический характер управления виртуальной памятью: термин по требованиюозначает, что страница или сегмент будут размещены в физической памяти только в случае, если к ним реально происходит обращение из программы пользователя. Причем если размер обрабатываемой области виртуальной памяти (например, массива) очень велик – например, 1000 страниц, то в физической памяти будет размещена только та его страница, к которой обращается пользовательская программа.
Принцип управления виртуальной памятью иллюстрируется рис. 1.
Рис.1.Виртуальная память и физическая память.
Из схемы видно, что виртуальная память, как предполагается, больше, чем физическая память. Взаимодействие между частями виртуальной памяти и физической памяти происходит через отображение памяти –системную таблицу (сегментов, страниц и т.п.). Образ виртуальной памяти процесса хранится на диске.
Дата добавления: 2016-03-15; просмотров: 609;