Перейти к содержимому

64-bit (x86-64)

Справочник по архитектуреFeex

x86-64 является 64-битным расширением архитектуры инструкций x86. Она определяет режимы выполнения, регистры и правила адресации; сама по себе она не задает полных требований приложения к процессору или операционной системе.

Что необходимо знать

x86-64 является 64-битным расширением архитектуры инструкций x86. Она определяет режимы выполнения, регистры и правила адресации; сама по себе она не задает полных требований приложения к процессору или операционной системе.

Как это работает

В 64-битном режиме регистры общего назначения могут содержать 64-битные операнды, и архитектура предоставляет дополнительные регистры и среду программирования, отличную от устаревшей 32-битной x86. Режим совместимости позволяет операционной системе поддерживать подходящие устаревшие приложения, но ОС сама определяет, какие форматы приложений и интерфейсы она предоставляет. 64-битный процессор не заставляет каждую инструкцию использовать 64-битные данные.

Области применения

Приложение, собранное для ABI x86-64, ожидает регистровую среду, соглашения о вызовах и базовый набор инструкций этого ABI. Бинарный файл Arm64 представляет собой другую архитектуру, даже несмотря на то, что обе называют себя 64-битными. Трансляция или эмуляция являются отдельными программными средствами, а не следствием наличия 64-битных регистров.

Как проверить поддержку и активацию

Для оборудования x86 расширенная функция CPUID 80000001H, EDX бит 29 перечисляет поддержку long mode. Поддерживаемая операционная система должна включить соответствующую страничную организацию памяти и среду выполнения. Проверяйте как архитектуру запущенной ОС, так и возможности процессора.

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

Чего не гарантирует данная функция

Обозначение 64-bit не определяет реализованную разрядность физического или виртуального адреса, предел установленной оперативной памяти, поддержку x86-64-v2/v3/v4, совместимость с Windows или пригодность для конкретного драйвера. Проверяйте каждое требование отдельно.

Совместимость и производительность на практике

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

Практический чек-лист для проверки

  1. Зафиксируйте точную модель процессора или платформы, а также задействованные версии приложения, ОС и среды выполнения. Сохраните точную формулировку возникшей ошибки или требования.
  2. Сверьтесь со справочными материалами производителя для этой точной модели, затем проверьте действующую поддержку и состояние активации в окружении, где выполняется программа.
  3. Сопоставьте каждое требование выбранного бинарного файла или бэкенда. Похожего названия функции, псевдонима или общего маркетингового обозначения технологии недостаточно.
  4. Убедитесь, что приложение выбрало предполагаемую реализацию. Используйте его документированные средства диагностики и поддерживаемый резервный код при несоблюдении требований.
  5. Вносите по одному поддерживаемому изменению за раз и повторяйте ту же рабочую нагрузку. Сохраняйте исходную конфигурацию и возможность отката.

Если функция указана в списке, но ПО не может ее использовать

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

Установите версию приложения, драйвера или среды выполнения, поддерживаемую для данной платформы, и при необходимости используйте документированную производителем базовую или резервную сборку. Обновление ПО не может создать инструкцию, отсутствующую в процессоре. Изменения микрокода и политик безопасности должны выполняться по процедуре производителя системы и с планом восстановления, а не по общим шаблонам оптимизации.

Источники и границы применимости пояснения

Руководство разработчика программного обеспечения для архитектур Intel 64 и IA-32 · x86-64 psABI: уровни архитектуры и микроархитектуры процессоров

Эти материалы определяют архитектурное поведение и требования к программному обеспечению. Они не подтверждают независимо каждое значение параметров на странице конкретной модели оборудования. Для проверки поддержки моделью используйте данные производителя на этой странице и проверяйте действующую конфигурацию системы. Данная статья не содержит результатов тестов производительности, сертификатов или дат независимых обзоров.

Источники и проверка

Редакционная принадлежность: Feex. Дата независимой проверки не зарегистрирована. Как мы проводим исследования.

Была ли эта статья полезна?

Достаточно ответа "да" или "нет". При желании выберите причину или оставьте короткую заметку.

Была ли эта статья полезна?