Похожие презентации:
Схемы распределения памяти. (Тема 13)
1. Схемы распределения памяти
СХЕМЫРАСПРЕДЕЛЕНИЯ
ПАМЯТИ
Курс лекций
«Системное программное обеспечение»
«System Software»
«Операционные системы»
для студентов специальностей АСОИ и ИИ
Павел Кочурко
доцент кафедры ИИТ, к.т.н.
2. Распределение памяти
• Статическое2GiB
• Динамическое
Process 2
Nlog
RAM
Nphys
Process 1
Nlog
0
Nphys
3. Статическое распределение Один процесс в памяти
2GiBВсё физическое адресное
пространство отведено одному
логическому адресному
пространству
Process
RAM A
Nlog
Nphys
0
+: простота, не нужна трансляция
адреса, Nlog=Nphys
-: не подходит для многозадачных
систем
4. Статическое распределение Схема с фиксированными разделами
Process 4RAM
Process 3
Process 2
Process 1
Память заранее разбивается на
разделы, которые потом не изменяются
В каждый раздел – по одному процессу
+: простота
-: количество процессов в системе
ограничено количеством разделов;
размер логического адресного
пространства не может быть больше
физического раздела;
внутренняя фрагментация
5. Динамическое распределение Схема с переменными разделами
Process 8Process 7
Process 6
Process 5
RAM
Process 4
Process 3
Process 2
Process 1
Best Fit
Память заранее не разбивается,
процессы размещаются друг за
другом.
Выгружаясь, они освобождают
разделы произвольного размера.
Лучшая стратегия размещения:
Worst Fit
Process 9
с т.з. экономии памяти – Best Fit
с т.з. производительности – 1st Fit
First Fit
+: нет ограничения количества
процессов в системе
-: размер логического
пространства ограничен
размером свободного раздела;
внешняя фрагментация
6. Динамическое распределение Страничная память
dd
Nphys
p
Nlog
RAM
f
Nlog=p:d
Физическая память
разбивается на фреймы
Логическая – на страницы
того же размера
Любая страница – в любой
свободный фрейм
Nlog=p:d f:d Nphys
+: минимизация
фрагментации; нет
ограничений на размер и
количество процессов
-: усложнение схемы
трансляции; отсутствие
осмысленности разбиения
логического пространства на
страницы и невозможность
разных прав доступа к
разным фреймам процесса
7. Динамическое распределение Сегментная память
stackd
d
shared data
shared code
Nphys
s
Nlog
data
code
RAM
S
stack
data
code
Nlog=s:d
Физическое пространство
не разбивается,
логическое – по смыслу на
сегменты произвольного
размера
Сегменты размещаются в
любых свободных местах
физического
+: осмысленность
разбиения к разным
сегментам можно иметь
разный доступ
-: фрагментация;
необходимость стратегии
размещения; ограничения,
аналогичные «схеме с
переменными разделами»
8. Динамическое распределение Странично-сегментная память
dstack
shared data
d
p
f
shared code
s
data
code
Nlog
RAM
Nphys
stack
data
code
Nlog=s:p:d
Физическая память
разбивается на фреймы
Логическая на сегменты
Каждый сегмент
разбивается на страницы,
которые размещаются в
фреймах
+:осмысленность
разбиения сочетается с
отсутствием
фрагментации и
ограничений
-:усложнение процесса
трансляции
9. Вопросы?
ВОПРОСЫ?http://iit.bstu.by/ss