![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
Главной операцией управления памятью является размещение программы в основной памяти для ее выполнения процессором. Практически во всех современных многозадачных системах эта задача предполагает использование сложной схемы, известной как виртуальная память. Виртуальная память, в свою очередь, основана на использовании одной или обеих базовых технологий — сегментов и страниц. Перед тем как перейти к рассмотрению этих методов организации виртуальной памяти, мы должны сперва познакомиться с более простыми методами (табл. 7.1). Одна из приведенных в таблице технологий — распределение памяти — использовалась в различных вариациях в некоторых уже подзабытых к настоящему времени операционных системах. Две другие технологии — простая страничная организация и сегментация — сами по себе не используются, однако их рассмотрение в отрыве от виртуальной памяти упростит дальнейшее понимание предлагаемого материала.
Таблица 7.1. Технологии управления памятью
Технология | Описание | Сильные стороны | Слабые стороны |
Фиксированное распределение | Основная память разделяется на ряд статических разделов во время генерации системы. Процесс может быть загружен в раздел равного или большего размера | Простота реализации, малые системные накладные расходы | Неэффективное использование памяти из-за внутренней фрагментации, фиксированное максимальное количество активных процессов |
Динамическое распределение | Разделы создаются динамически; каждый процесс загружается в раздел строго необходимого размера | Отсутствует внутренняя фрагментация, более эффективное использование основной памяти | Неэффективное использование процессора из-за необходимости уплотнения для противодействия внешней фрагментации |
Простая страничная организация | Основная память распределена на ряд кадров равного размера. | Отсутствует внешняя фрагментация | Наличие небольшой внутренней фрагментации |
Простая сегментация | Каждый процесс распределен на некоторое количество страниц равного размера и той же длины, что и кадры. Процесс загружается путем загрузки всех его страниц в доступные, но не обязательно последовательные, кадры. Каждый процесс распределен на ряд сегментов. Процесс загружается путем загрузки всех своих сегментов в динамические (не обязательно смежные) разделы | Отсутствует внутренняя фрагментация | Улучшенное использование памяти и сниженные накладные расходы по сравнению с динамическим распределением |
Страничная организация виртуальной памяти | Все, как при простой страничной организации, с тем исключением, что не требуется одновременно загружать все страницы процесса. Необходимые нерезидентные страницы автоматически загружаются в память | Нет внешней фрагментации; более высокая степень многозадачности; большое виртуальное адресное пространство- | Накладные расходы из-за сложности системы управления памятью |
Сегментация виртуальной памяти | Все, как при простой сегментации, с тем исключением, что не требуется, одновременно загружать все сегменты процесса. Необходимые нерезидентные сегменты автоматически загружаются в память | Нет внутренней фрагментации; более высокая степень многозадачности; большое виртуальное адресное пространство; поддержка защиты и совместного использования | Накладные расходы из-за сложности системы управления памятью |
Дата публикования: 2014-12-08; Прочитано: 308 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!