ОС - Организация памяти

Содержание

Слайд 2

Виды памяти CPU Memory Disk Registers Cash DRAM On other nodes

Виды памяти

CPU

Memory

Disk

Registers

Cash

DRAM

On other
nodes

Flash

Flash

HDD

Network

L1

L2

L3

UMA

NUMA

Flash

ZIP

…..

Instruction

Data

Store buffer

Слайд 3

Способы организации основной памяти (DRAM) Однопрограммные системы Мультипрограммные системы с фиксированными

Способы организации основной памяти (DRAM)

Однопрограммные системы
Мультипрограммные системы с фиксированными разделами с

трансляцией и загрузкой в абсолютных адресах
Мультипрограммные системы с фиксированными разделами с трансляцией и загрузкой перемещаемых модулей
Мультипрограммные системы с переменными разделами
Системы со свопингом (SWAP)
Слайд 4

Основные функции системы управления памятью (Memory Manager) отображение адресного пространства процесса

Основные функции системы управления памятью (Memory Manager)
отображение адресного пространства процесса на

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

Выборка – когда загружать очередной процесс (или часть его кода) в

Выборка – когда загружать очередной процесс (или часть его кода) в

память
по запросу
с упреждением

Размещение – куда загрузить выбранный кусок кода (блок)
первый подходящий (быстро!)
наиболее подходящий (минимизация потерь!)
наименее подходящий (утилизация остатков!)

Замещение – что надо убрать из памяти если нет места для загрузки очередного блока
«старейший» блок
наименее часто используемый
тот, к которому дольше не было обращений
тот, к которому дольше не будет обращений (идеал!)

Слайд 6

Однопрограммные системы Free User task ОС Free User (overlay) User (resident)

Однопрограммные системы

Free

User task

ОС

Free

User (overlay)

User (resident)

ОС

User task

User (resident)

User (ovl 1)

User (ovl 2)

User

(ovl N)

User task

Защита области памяти процесса

Rg (bottom)

Rg (top)

Регистры границ

Слайд 7

Схема с фиксированными разделами Раздел 3 Раздел 2 Раздел 1 ОС

Схема с фиксированными разделами

Раздел 3

Раздел 2

Раздел 1

ОС

3

2

1

2

1

1

Трансляция и загрузка в абсолютных

адресах (раздельные очереди процессов)

Плюсы: простота организации работы, высокая скорость загрузки

Минусы: число одновременно загруженных процессов ограничено и не зависит от занимаемой ими памяти;
переход в свободный раздел невозможен.

ОС

Free !!!

Слайд 8

Схема с фиксированными разделами Раздел 3 Раздел 2 Раздел 1 ОС

Схема с фиксированными разделами

Раздел 3

Раздел 2

Раздел 1

ОС

Трансляция и загрузка перемещаемых модулей

(общая очередь процессов)

Плюс: простое управление очередью.

Минус: сложный загрузчик.

Слайд 9

Схема с переменными разделами Процесс 1 ОС - неиспользуемая память Процесс

Схема с переменными разделами

Процесс 1

ОС

- неиспользуемая память

Процесс 1

ОС

Процесс 2

Процесс 1

ОС

Процесс

3

ОС

Стратегии выбора разделов:
first fit - первый подходящий по размеру
best fit - наиболее подходящий по размеру
worst fit - наименее подходящий по размеру

Free

Плюс: эффективное использование памяти

Минус: необходимость периодической дефрагментации.