Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Топ:
Оснащения врачебно-сестринской бригады.
Теоретическая значимость работы: Описание теоретической значимости (ценности) результатов исследования должно присутствовать во введении...
Интересное:
Берегоукрепление оползневых склонов: На прибрежных склонах основной причиной развития оползневых процессов является подмыв водами рек естественных склонов...
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Начиная с процессоров семейства P6, архитектура IA-32 поддерживает адресацию физической памяти до 64 Гбайт (236 байт). Программа или задача не могли напрямую адресовать адреса в этом адресном пространстве. Вместо этого он обращается к отдельным линейным адресным пространствам до 4 ГБ, которые сопоставляются с физическим адресным пространством на 64 Гбайт через механизм управления виртуальной памятью. Используя этот механизм, операционная система может включить программу для переключения линейных адресных пространств 4-гигабайта в физическое адресное пространство 64 ГБ.
Использование расширенной физической адресации требует, чтобы процессор работал в защищенном режиме, а операционная система обеспечивала систему управления виртуальной памятью. См. «36-битная физическая адресация с использованием механизма подкачки PAE» в главе 3 «Управление памятью с защищенным режимом» в Руководстве разработчика программного обеспечения Intel® 64 и IA-32, том 3A.
Расчет адресов в 64-битном режиме
В большинстве случаев 64-разрядный режим использует плоское адресное пространство для кода, данных и стеков. В 64-битном режиме (при отсутствии переопределения размера адреса) размер эффективных вычислений адресов составляет 64 бита. Расчет эффективного адреса использует 64-разрядные базовые и индексные регистры и смещения с расширением знака до 64 бит.
В плоском адресном пространстве 64-битного режима линейные адреса равны эффективным адресам, так как базовый адрес равен нулю. Если сегменты FS или GS используются с ненулевой базой, это правило не выполняется. В 64-битном режиме добавляются эффективные компоненты адреса, а эффективный адрес усекается (см., Например, инструкцию LEA) перед добавлением полной базы 64-битного сегмента. База никогда не усекается, независимо от режима адресации в 64-битном режиме.
Указатель команд расширяется до 64 бит для поддержки смещения 64-битного кода. 64-разрядный указатель инструкции называется RIP. В таблице 3-1 показана взаимосвязь между RIP, EIP и IP.
Таблица 3-1. Размеры указателя команд
| Биты 63:32 | Биты 31:16 | Биты 15:0 | |
| 16-битный указатель команд | Не изменено | IP | |
| 32-битный указатель команд | Нулевое расширение | EIP | |
| 64-битный указатель команд | RIP |
Как правило, перемещения и немедленные действия в 64-битном режиме не распространяются на 64 бита. Они по-прежнему ограничены 32 битами и расширенными знаками при вычислении эффективных адресов. Однако в 64-битном режиме поддерживается поддержка 64-битного смещения и немедленных форм инструкции MOV.
Все 16-битные и 32-разрядные вычисления адресов в режиме IA-32e с нулевым расширением для формирования 64-разрядных адресов. Вычисления адресов сначала усекаются до эффективного размера адреса текущего режима (режим 64-бит или режим совместимости), как переопределенный любым префиксом размера адреса. Затем результат будет равен нулю - до полной ширины 64-битного адреса. Из-за этого 16-разрядные и 32-разрядные приложения, работающие в режиме совместимости, могут получить доступ только к низким 4 ГБ эффективных адресов с 64-битным режимом. Аналогично, 32-разрядный адрес, сгенерированный в 64-битном режиме, может получить доступ только к низким 4 ГБ эффективных адресов 64-битного режима.
Каноническая адресация
В 64-битном режиме адрес считается в канонической форме, если адресные биты 63 до самого значительного реализованного бита микроархитектурой установлены либо на все, либо на все нули.
Архитектура Intel 64 определяет 64-битный линейный адрес. Реализации могут поддерживать меньше. Первая реализация процессоров IA-32 с архитектурой Intel 64 поддерживает 48-битный линейный адрес. Это означает, что канонический адрес должен иметь биты с 63 по 48, установленные на нули или единицы (в зависимости от того, является ли бит 47 нулем или одним).
Хотя реализации не могут использовать все 64 бита линейного адреса, они должны проверять биты 63 через самый значительный реализованный бит, чтобы узнать, находится ли адрес в канонической форме. Если ссылка на линейную память не находится в канонической форме, реализация должна генерировать исключение. В большинстве случаев генерируется исключение общей защиты (#GP). Однако в случае явных или подразумеваемых ссылок на стек генерируется ошибка стека (#SS).
Инструкции, которые подразумевают ссылки на стек, по умолчанию используют регистр сегментов SS. К ним относятся PUSH / POPrelated инструкции и инструкции с использованием RSP / RBP в качестве базовых регистров. В этих случаях каноническая ошибка #SS.
Если инструкция использует базовые регистры RSP / RBP и использует префикс переопределения сегмента для указания сегмента без SS, каноническая ошибка генерирует #GP (вместо #SS). В 64-битном режиме в этой ситуации применимы только FS и GS-переопределения. Другие префикс переопределения сегмента (CS, DS, ES и SS) игнорируются. Обратите внимание, что это также означает, что переопределение SS-сегмента, примененное к ссылке на регистр «не стека», игнорируется. Такая последовательность все еще производит #GP для канонической ошибки (а не #SS).
|
|
|
История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!