Сегментная организация Оперативной памяти.

 

Память делится на блоки разного размера, при этом появляется возможность

1) Установить права доступа к сегменту, например режим только чтение

2) Каждый сегмент предназначается для хранения определённого типа данных, например сегмент данных, сегмент кода и т.д.

Минусом такой организации является то, что на преобразование адресов из виртуальных в физические требуется несколько больше ресурсов.

 

Виртуальное

адресное Физическая память

пространство А Таблица Сегментов А

Сегмент 0
  Сегмент 1
Сегмент 2
Сегмент 3

 

Виртуальное

адресное

пространство Б Таблица сегментов Б

Сегмент 0
Сегмент 1
Сегмент 2

 

Т.е Возможно совместное использование памяти несколькими процессами.

 

Недостаток в том, что при нехватке физической памяти необходимо выгружать весь сегмент.

Странично-сегментная организация памяти.

 

Суть в том, что внутри сегментов памяти происходит деление на страницы, в итоге мы получаем преимущество сегментной организации и преимущество страничной организации в одном флаконе.

 

Схема:

Есть некий виртуальный адрес, он состоит из трёх компонентов, а именно Номер сегмента G, номер страницы P и смещение S

В этом случае на первом этапе берётся номер сегмента и по таблице сегментов определяется необходимая таблица страниц сегмента. И уже внутри этой таблицы по номеру страницы P определяется номер физической страницы памяти, к нему прибавляется смещение и в итоге мы получаем адрес ячейки памяти.

 

Недостаток данной организации в медленной (относительно) скорости преобразования адресов.

 

Практическая реализация в современных микропроцессорах.

 

Поддержка всех трёх способов организации виртуальной памяти в процессах фирмы INTEL существуют начиная с 386 процессоров (1995 год)

 

В требованиях к Windows 95 было написано, что она должна работать под управлением процессора не хуже Intel 80386 _

 

Механизм виртуальной памяти это не только аппаратная поддержка, но и программное обеспечение.

 

32-разрядные процессоры Intel могут отрисовать не больше 4 гигабайт памяти.