|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Секции, проекции и проецируемые файлы
Объект-секция может быть большим и занимать много страниц. Для экономии своего виртуального адресного пространства процесс может отобразить только нужную ему часть секции; эта отображенная часть называется проекцией ( view ) секции. Проекция служит окном в совместно используемую область памяти, и разные процессы могут отображать разные проекции секции или даже несколько проекци Объект-секция Как и в случае других объектов, диспетчер объектов создает и инициализирует заголовок объекта-секции. Диспетчер виртуальной памяти определяет тело объекта-секции и предоставляет сервисы, которые могут вызываться потоками пользовательского режима для чтения и изменения атрибутов, хранящихся в теле объекта-секции (см. Рис. 3.Объект секция).
Рис. 3. Объект секция Максимальный размер – максимальное число байт, до которого может расти размер секции, а в случае проецируемого файла равен размеру файла. Защита страниц – постраничная защита памяти назначается всем страницам секции при ее создании. Файл подкачки/проецируемый файл – указывает создана ли секция пустой (резервное хранилище – файл подкачки) или загружена из файла (резервное хранилище – проецируемый файл). Базированная/небазированная – секция должна располагаться по одному и тому же виртуальному адресу во всех использующих ее процессах или в разных процессах она может располагаться по разным виртуальным адресам. Отображение проекции секции делает часть секции видимой в виртуальном адресном пространстве некоторого процесса. Аналогично, удаление проекции секции удаляет ее из адресного пространства процесса. Совместное использование имеет место, когда два процесса отображают в свои адресные пространства фрагменты одной и той же секции. В этом случае процессы должны синхронизировать доступ к секции, чтобы избежать одновременного изменения данных. Для синхронизации можно использовать любые объекты синхронизации. Для того чтобы отобразить проекцию секции, процесс должен сначала получить ее описатель. У процесса, создавшего секцию, этот описатель уже есть. Другие процессы могут получить этот описатель, используя именование, наследование или дублирование. К ак и в случае с виртуальной памятью, проецируемые файлы позволяют резервировать регион адресного пространства и передавать ему физическую память. Различие между этими двумя механизмами состоит в том, что в последнем случае физическая память не выделяется из страничного файла, а берется из файла на диске. Как только этот файл спроецирован в память, к нему можно обращаться так, как будто он целиком в нее загружен. Проецируемые файлы применяются для: Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.) |