Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

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



Ячейка памяти – элементарная адресуемая единица запо­минающего устройства.

Память для 32-разрядных процессоров 80х86 подразделяется на байты (8 бит), слова (16 бит), двойные слова (32 бит) и учетверенные слова (64 бит). Все пространство памяти разбивается на параграфы области из 16 смежных байт, начиная с нулевого адреса.

Более крупными единицами организации памяти являются страницы и сегменты.

Сегмент – единица памяти, которая в зависимости от режима работы процессора может быть 64 Кбайт, 1Мбайт или 4 Гбайта.

Страница памяти – единица памяти, обычно 4Кбайта.

Страничный сегмент – сегмент в памяти, разделенный на страницы.

Память может логически организовываться в виде одного или множества сегмен­тов переменной длины (в реальном режиме – фиксированной). Кроме сегмента­ции, в защищенном режиме возможно разбиение (Paging) логической памяти на страницы размером 4 Кбайта, каждая из которых может отображаться на любую область физической памяти. Начиная с 5-го поколения появилась возможность увеличения размера страницы до 4 Мбайт. Сегментация и разбиение на страницы могут применяться в любых сочетаниях. Сегментация является средством организации логической памяти на прикладном уровне. Разбиение на страницы применяется на системном уровне для управления физической памятью. Сегмен­ты и страницы могут выгружаться из физической оперативной памяти на диск и по мере необходимости подкачиваться с него обратно в физическую память. Таким образом реализуется виртуальная память.

Применительно к памяти различают три адресных пространства: логическое, линейное и физическое. Основным режимом работы 32-разрядных процессоров считается защищенный режим, в котором работают все механизмы преобразова­ния адресных пространств.

Логический адрес, также называемый виртуальным, состоит из селектора сегмента и эффективного адреса, называе­мого также смещением (offset).

Селектор сегмента хранится в старших 14 битах сегментного регистра (CS, DS, ES, SS, FS или GS), участвующего в адресации конкретного элемента памяти. По значению селектора из специальных таблиц, хранящихся в памяти, извлекается начальный адрес сегмента.

Эффективный адрес вычисляется по формуле

EA=Base+Index · Scale+Disp,

где Смещение (Displacement или Disp) – 8-, 16- или 32-битное число, включенное в команду;

База (Base) – содержимое базового регистра;

Индекс (Index) – содержимое индексного регистра;

Масштаб (Scale) – множитель (1, 2, 4 или 8), указанный в коде инструкции.

Блок сегментации транслирует логическое адресное пространство в 32-битное пространство линейных адресов. Линейный адрес образуется сложением базового адреса сегмента со смещением.

Базовый адрес – адрес, относительно которого указываются другие адреса в сегменте данных.

Смещение – величина, добавляемая к базовому адресу для получения исполнительного адреса.

Базовый адрес сегмента в реальном режиме образуется умножением содержимого используемого сегментного регис­тра на 16 (как и в 8086). В защищенном режиме базовый адрес загружается из дес­криптора, хранящегося в таблице, по селектору, загруженному в используемый сегментный регистр.

32-битный физический адрес памяти образуется после преобра­зования линейного адреса блоком страничной переадресации. Он выводится на внешнюю шину адреса процессора. В простейшем случае (при отключенном блоке страничной переадресации) физический адрес совпадает с линейным. Включенный блок страничной переадресации осуществляет трансляцию линейного адреса в физи­ческий страницами размером 4 Кбайт (для старших поколений процессоров так­же возможны страницы размером 2 или 4 Мбайт). Блок обеспечивает расшире­ние разрядности физического адреса процессоров шестого поколения до 36 бит.

Шина адреса разрядностью 32/64 бита позволя­ет адресовать 4/64 Гбайта физической памяти, но в реальном режиме доступен только 1 Мбайт младших адресов.





Дата публикования: 2015-04-10; Прочитано: 549 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.007 с)...