Главная страница Случайная лекция Мы поможем в написании ваших работ! Порталы: БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика Мы поможем в написании ваших работ! |
Регионы ЛВАП и ФП
ЛВАП, выделяемое процессу в момент его создания, является свободным. Для обращения к любой его части в нём с помощью системной функции VirtualAlloc(…) выделяется определённые участки называемые регионами памяти. Операция выделения региона называется резервированием памяти. При резервировании памяти система выравнивает начало региона с учётом свойства гранулярности (структурированности памяти). Стандартное значение единицы гранулярности – 64Кб. При резервировании обеспечивается кратность размера региона размеру страницы памяти (4-8Кб). В момент создания процесса система резервирует региона адресного пространства для хранения служебной информации, в частности для блока определённого процесса. Кроме того, для управления потоками, существующими в процессе в данный момент, выделяются регионы для блоков переменных окружения потоков. Регионы под указанные блоки резервируются и освобождаются по мере завершения ранее запущенных потоков и создания новых потоков в процессе, либо завершения и создания новых процессов. Размеры этих регионов в общем случае не кратные 64Кб, но кратны размеру страницы. После использования региона он возвращается в ресурсы памяти – освобождение региона происходит с помощью функции VirtualFree(…). Чтобы зарезервированный регион или ВАП можно было бы использовать для выполнения поточных программ в процессоре, региона средствами управления памяти должна быть выделена ФП, эта ФП должны быть спроецирована на регион ВАП% передача ФП. При передаче ФП региону она может быть выделена не целиком, а в виду нескольких страниц, которые могут чередоваться со свободными страницами. Для любых регионов ФП выделяется прежде всего из страничного файла на жёстком диске. Реальный объём ОП имеет второстепенное значение. Размер страничного файла является основным фактором, определяющим общее количество памяти, которое доступно выполняющимся программам. В целом процедура доступа к элементу информации в ФП по адресу, формируемому из линейного ВАП может быть представлена: Рисунок. При выполнении поток в процессе осуществляется обращение к памяти. Для этого вырабатывается ВА в процессоре. Если соответствующий элемент информации, к которому обращается процесс уже находится в ОП, то процессор сразу же выполняет отображение ВА в ФА и осуществляет обращение по ФА. После чего элемент информации соответственно доступен для программы потока. Если элемент информации не обнаруживается в ОП, то проверяется его наличие в страничном файле. Если элемент информации отсутствует и в страничном файле, то в системе генерируется прерывание по нарушению доступа к памяти. Осуществляется обработка этого прерывания , в результате которой выполняется процесс ??? и диспетчер ОС предоставляет процессор одному из готовы к выполнению процессов. Если же элемент данных присутствует в страничном файле, то система начинает поиска свободной страницы в ОП для размещения в ней требуемых данных. Если свободная страница в текущий момент имеется, то выполняется загрузка данных из страничного файла в свободную страницу памяти и затем осуществляется отображение ВА в ФА. Если свободной страницы нет, то система освобождает одну из занятых страниц, реализуется алгоритмы замещения страниц в память. Если замещаемая страница не была модифицирована, то она просто освобождается, в противном случае она сначала копируется из ОП в страничный файл. После этого система переходит к страничному файлу, отсчитывает в нём запрашиваемый элемент информации, загружает на свободную страницу ОП и отображает ВА - > ФА. Чем чаще система копирует строку из Оп в страничный файл или наоборот переписывает страницы из этого файла в ОП, тем больше нагрузка на устройство внешней памяти; и тем медленнее работает подсистема управления памятью. В крайнем случае, может оказаться, что система будет расходовать большую часть времени на страничный обмен вместо выполнения полезной вычислительной работы. Это явление – пробуксовка системы. Если увеличить объём опер.?? ФП можно снизить частоту обращения к ВП и тем самым увеличить производительность системы. Этот способ повышения производительности считается более эффективным, чем простая замена процессора ЭВМ на более быстродействующий. При выполнении процедуры загрузки и подготовки к запуску программ в работе системы управления памятью имеются особенности. Не происходит простого копирования программ и данных из файла ВМ непосредственно в ФП, которая выделяется после преобразования ВА в А. В действительности при запуске программы система открывает используемый файл на жёстком диске и определяет объём программного кода и данных, затем резервирует регион линейного ВАП и устанавливается, что ФП?? связана с этим регион является сам .exe файл. Означает, что вместо использования пространства ВП из страничного файла система использует содержимое .exe файла программы. Программа загружается быстрее, а размер страничного файла может быть уменьшен.
Дата добавления: 2014-10-10; просмотров: 365; Нарушение авторских прав Мы поможем в написании ваших работ! |