Виртуальная память.

advertisement
Виртуальная память. (Virtual memory)
Организация. (Organization)
Виртуальная память – организация памяти, которая позволяет процессу
адресовать пространство памяти намного большее, чем имеется в системе.
Основная проблема
Процесс работает с виртуальными адресами V, а процессор с реальными R.
Необходимо уметь быстро преобразовывать V в R.
1. Преобразование каждого адреса V в реальный R.
Совершенно нереальный механизм.
Таблица преобразований займет всю память и вытеснит
процесс. Если ее попытаться хранить во внешней памяти,
то скорость работы процесса очень существенно снизится.
2. Преобразование блока виртуальных адресов V в блок
реальных адресов R.
Реальный механизм. Таблица преобразований компактна и
может храниться в КЭШ.
Требует двухкомпонентного адреса
V(S,d)
Где S – номер блока, а d смещение от начала блока
Методы организации виртуальной памяти
СТРАНИЧНАЯ – все блоки одинаковые по размеру
СЕГМЕНТНАЯ – все блоки разные по размеру
СЕГМЕНТНО-СТРАНИЧНАЯ – все сегменты разные по размеру, но
состоят из целого числа одинаковых блоков
Трансляция адреса при страничной организации памяти
CPU
Memory
Management
Unit
VPN
Physical Memory
Offset
PPN
Virtual
Address
Offset
Physical
Address
Page Table
PTBR
+
PTE
VPN – Virtual Page Number
PPN - Physical Page Number
PTBR –Page Table Base Register
PTE – Page Table Entry
Структура Page Table
17
Page Table
Write
Execute
Append
PTBR
1C00
Read
1C00
Address
17
PPN
Bit present
VPN
T
AC9F
T
F
T
F
1C17
+
1C00
Трансляция адреса при сегментной организации памяти
CPU
Memory
Management
Unit
VSN
Physical Memory
Offset
Address
Virtual
Address
+
Physical
Address
Segment Table
STBR
+
STE
VSN – Virtual Segment Number
STBR –Segment Table Base Register
STE – Segment Table Entry
Трансляция адреса при странично-сегментной организации памяти (1)
Virtual Address
VSN
VPN
Offset
PTE
PTE
STBR
+
STE
+
PTE
PPN
Offset
Physical Address
Segment Table
Page Table
Трансляция адреса при странично-сегментной организации памяти (2)
Virtual Address
VSN
Offset
Linear Virtual Address
STBR
STE
+
VDN
+
VPN
Offset
Segment Table
PDBR
+
PDE
+
PTE
PFN
Offset
Physical Address
Page Directory
Page Table
Download