Виртуальная память
Управление памятью объединяет три задачи Динамическое распределение памяти Отображение виртуальных адресов программы на физические адреса Реализация защиты памяти
Виртуальная память Виртуальная память представляет собой совокупность всех ячеек памяти – оперативной и внешней. Она имеет сквозную нумерацию от нуля до предельного значения адреса. Принцип виртуальной памяти предполагает, что пользователь имеет дело с кажущейся одноуровневой памятью, объем которой равен всему адресному пространству системы независимо от объема ОЗУ и объема памяти, необходимой для других программ, участвующих в мультипрограммной обработке.
Графическое представление ВП
Способы управления виртуальной памятью страничный сегментный странично-сегментный
Страничный способ управления памятью
Формат адреса в Itanium®2 64-адресное ВП с 16-ю страницами Объем страницы bytes (1024 Pbytes) Адрес – номер страницы (virtual page number) + смещение (page offset) 0x f8 – номер адреса, 4 – номер виртуальной страницы, 0x3f8 – с мещение 0x f8 4 0x3f8
Страничный способ управления памятью
Два варианта реализации таблицы страниц Многоуровневая таблица преобразования адресов Буфер быстрого преобразования адресов ( буфер ассоциативной трансляции (TLB))
Механизм преобразования виртуального адреса в физический в x86
Translation Lookaside Buffer (TLB)
Механизм преобразования виртуального адреса в физический в Itanium
Сегментный способ управления памятью
Сегментно-страничный способ управления памятью