Скачать презентацию Управление оперативной памятью Иерархия памяти Регистры CPU Скачать презентацию Управление оперативной памятью Иерархия памяти Регистры CPU

05 Память.ppt

  • Количество слайдов: 26

Управление оперативной памятью Управление оперативной памятью

Иерархия памяти Регистры CPU Оперативная память Вторичная память Иерархия памяти Регистры CPU Оперативная память Вторичная память

Иерархия памяти Регистры CPU Оперативная память SSD HDD Быстродействие, Цена за бит Ёмкость устройства Иерархия памяти Регистры CPU Оперативная память SSD HDD Быстродействие, Цена за бит Ёмкость устройства Кэш-память CPU

Локальность Принцип локальности или локализации обращений: Реальные программы в течение ограниченного промежутка времени работают Локальность Принцип локальности или локализации обращений: Реальные программы в течение ограниченного промежутка времени работают с небольшим набором адресов памяти.

Схема работы кэш-памяти Запрос CPU ОЗУ КЭШ Быстрый ответ Медленный ответ Схема работы кэш-памяти Запрос CPU ОЗУ КЭШ Быстрый ответ Медленный ответ

Понятие сегмента Сегмент – область памяти определённого назначения, внутри которой поддерживается линейная адресация. Код Понятие сегмента Сегмент – область памяти определённого назначения, внутри которой поддерживается линейная адресация. Код процесса P 1 Стек процесса P 2 Код процесса P 2 P 1 Данные процесса P 2 Код разделяемой библиотеки Стек процесса Р 1 P 2

Связывание адресов Текст программы … int i; … Логический адрес 64 байт от начала Связывание адресов Текст программы … int i; … Логический адрес 64 байт от начала сегмента Физический адрес 165398 Сегмент данных массив физической памяти

Связывание адресов Этап компиляции Вся информация о расположении программы в памяти известна при компиляции Связывание адресов Этап компиляции Вся информация о расположении программы в памяти известна при компиляции Этап загрузки ОС осуществляет коррекцию адресов при загрузке программы Этап выполнения Программа может быть перемещена в памяти в процессе выполнения

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

Схема с фиксированными разделами • Разбиение памяти на участки фиксированной величины • Связывание на Схема с фиксированными разделами • Разбиение памяти на участки фиксированной величины • Связывание на этапах загрузки или компиляции P 3 P 2 P 1 Раздел 3 Раздел 2 Раздел 1 ОС

Оверлейная структура А B C D E Оверлейная структура А B C D E

Свопинг (swapping) Свопинг - перемещение выполняющегося процесса целиком из оперативной памяти на внешний носитель. Свопинг (swapping) Свопинг - перемещение выполняющегося процесса целиком из оперативной памяти на внешний носитель. Процесс может быть возвращен в то же место или в другое.

Схема с переменными разделами В начале память свободна и не разделена на разделы При Схема с переменными разделами В начале память свободна и не разделена на разделы При загрузке процесса ему выделяется необходимый объем памяти При выгрузке память освобождается

Схема с переменными разделами P 1 ОС P 2 P 1 ОС P 3 Схема с переменными разделами P 1 ОС P 2 P 1 ОС P 3 P 2 P 4 ОС

Стратегии размещения Стратегия первого подходящего (first fit) Стратегия лучшего подходящего (best fit) Стратегия наименее Стратегии размещения Стратегия первого подходящего (first fit) Стратегия лучшего подходящего (best fit) Стратегия наименее подходящего (worst fit)

Страничная память Физическая и логическая память представляются состоящими из блоков одинакового размера, называемых страницы Страничная память Физическая и логическая память представляются состоящими из блоков одинакового размера, называемых страницы (page) для логической памяти, кадры (frame) для физической. Размер страниц фиксирован и обычно кратен степени 2. Одна страница соответствует одному кадру.

Связь логического и физического адресов Логический адрес Номер виртуальной страницы p Смещение внутри страницы Связь логического и физического адресов Логический адрес Номер виртуальной страницы p Смещение внутри страницы d Таблица страниц атрибуты Номер физического кадра p’ Физический адрес Смещение внутри кадра d

Сегментная организация памяти Является следствием логического разделения памяти Размер сегмента ограничен адресным пространством CPU, Сегментная организация памяти Является следствием логического разделения памяти Размер сегмента ограничен адресным пространством CPU, может меняться динамически

Связь логического и физического адресов Логический адрес Номер сегмента s Смещение d Таблица дескрипторов Связь логического и физического адресов Логический адрес Номер сегмента s Смещение d Таблица дескрипторов атрибуты Адрес начала сегмента + Смещение от начала памяти Физический адрес

Странично-сегментная организация памяти Логический адрес Сегмент s Таблица сегментов Страница p Смещение d Таблица Странично-сегментная организация памяти Логический адрес Сегмент s Таблица сегментов Страница p Смещение d Таблица страниц cегмента s Номер физического кадра p’ Физический адрес Смещение внутри кадра d

Виртуальная память Память процесса разбивается на части (например страницы) Выполняется динамическая трансляция логического адреса Виртуальная память Память процесса разбивается на части (например страницы) Выполняется динамическая трансляция логического адреса в физический При отсутствии страницы в ОЗУ она догружается (подкачивается) с жесткого диска.

Виртуальная память Программа не ограничена объемом ОЗУ и имеет доступ к всему адресному пространству Виртуальная память Программа не ограничена объемом ОЗУ и имеет доступ к всему адресному пространству CPU Возможно частое и гибкое перемещение процессов в памяти, что позволяет разместить больше процессов Объем ввода-вывода меньше, чем в свопинге Обеспечивается контроль доступа к памяти и защита адресных пространств процессов

Структура таблицы страниц Структура адреса: (p, d) где p – номер виртуальной страницы, d Структура таблицы страниц Структура адреса: (p, d) где p – номер виртуальной страницы, d – смещение Запись таблицы страниц: n n n номер физического кадра бит присутствия биты защиты бит модификации …

Многоуровневые таблицы страниц Логический адрес P 1 (10 бит) P 2 (10 бит) d Многоуровневые таблицы страниц Логический адрес P 1 (10 бит) P 2 (10 бит) d (12 бит) 0: 0: P 1: P 2: 1023: Таблица первого уровня 1023: Таблица второго уровня кадр p’ d Физический адрес

Translation Lookaside Buffer (TLB) Номер страницы атрибуты Номер физического кадра ? = Номер страницы Translation Lookaside Buffer (TLB) Номер страницы атрибуты Номер физического кадра ? = Номер страницы ? =

Инвертированная таблица страниц Записи соответствуют физическим кадрам Достаточно одной таблицы на все процессы Усложнён Инвертированная таблица страниц Записи соответствуют физическим кадрам Достаточно одной таблицы на все процессы Усложнён поиск необходимой записи – можно применить хеширование