ћерион Ќетворкс

9 минут

јрхитектуры х64 и х86 €вл€ютс€ одними из наиболее широко используемых типов архитектур системы команд (ј—  или ISA – Instruction Set Architecture), созданными Intel и AMD. ISA определ€ет поведение машинного кода и то, как программное обеспечение управл€ет процессором.

ISA – это аппаратный и программный интерфейс, определ€ющий, что и как может делать ÷ѕ.

ѕрочитав эту статью, вы узнаете разницу между архитектурами х64 и х86.


„то из себ€ представл€ет архитектура х86?

х86 – это тип ISA дл€ компьютерных процессоров, разработанный Intel в 1978 году. јрхитектура х86 основана на микропроцессоре Intel 8086 (отсюда и название) и его модификации 8088. »значально это была 16-битна€ система команд дл€ 16-битных процессоров, а позже она выросла до 32-битной системы команд.

 оличество битов показывает, сколько информации ÷ѕ может обработать за цикл. “ак, например, 32-разр€дный ÷ѕ передает 32 бита данных за тактовый цикл.

Ѕлагодар€ своей способности работать практически на любом компьютере, от обычных ноутбуков до домашних ѕ  и серверов, архитектура х86 стала достаточно попул€рной среди многих производителей микропроцессоров.

Ќаиболее значительным ограничением архитектуры х86 €вл€етс€ то, то она может обрабатывать максимум 4096 ћб ќ«”. ѕоскольку общее количество поддерживаемых комбинаций равно 232 (4 294 967 295), то 32-разр€дный процессор имеет 4,29 миллиарда €чеек пам€ти. ¬ каждой €чейке хранитс€ 1 байт данных, а в сумме это примерно 4 √б доступной пам€ти.

Ќа сегодн€шний день термин х86 обозначает любой 32-разр€дный процессор, способный выполн€ть систему команд х86.


„то из себ€ представл€ет архитектура х64?

х64 (сокращение от х86-64) – это архитектура системы команд, расширенна€ до 64-битного кода. ¬ ее основе лежит архитектура х86. ¬первые она была выпущена в 2000 году. ќна представл€ла два режима работы – 64-битный режим и режим совместимости, который позвол€ет пользовател€м запускать 16-битные и 32-битные приложени€.

ѕоскольку вс€ система команд х86 остаетс€ в х64, то старые исполн€емые файлы работают практически без потери производительности.

јрхитектура х64 поддерживает гораздо больший объем виртуальной и физической пам€ти, чем архитектура х86. Ёто позвол€ет приложени€м хранить в пам€ти большие объемы данных.  роме того, х64 увеличивает количество регистров общего назначени€ до 16, обеспечива€ тем самым дополнительную оптимизацию использовани€ и функциональность.

јрхитектура х64 может использовать в общей сложности 264 байта, что соответствует 16 миллиардам гигабайт (16 эксабайт) пам€ти. √ораздо большее использование ресурсов делает эту архитектуру пригодной дл€ обеспечени€ работы суперкомпьютеров и машин, которым требуетс€ доступ к огромным ресурсам.

јрхитектура х64 позвол€ет ÷– обрабатывать 64 бита данных за тактовый цикл, что намного больше, чем может себе позволить архитектура х86.


х86 VS х64

Ќесмотр€ на то, что оба эти типа архитектуры основаны на 32-битной системе команд, некоторые ключевые отличи€ позвол€ют их использовать дл€ разных целей. ќсновное различие между ними заключаетс€ в количестве данных, которые они могут обрабатывать за каждый тактовый цикл, и в ширине регистра процессора.

х64 vs х86

ѕроцессор сохран€ет часто используемые данные в регистре дл€ быстрого доступа. 32-разр€дный процессор на архитектуре х86 имеет 32-битные регистры, а 64-разр€дный процессор – 64-битные регистры. “аким образом, х64 позвол€ет ÷ѕ хранить больше данных и быстрее к ним обращатьс€. Ўирина регистра также определ€ет объем пам€ти, который может использовать компьютер.

¬ таблице ниже продемонстрированы основные различи€ между системами команд архитектур х86 и х64.

ISA

х86

х64

¬ыпущена

¬ыпущена в 1978 году

¬ыпущена в 2000 году

—оздатель

Intel

AMD

ќснова

ќснована на процессоре Intel 8086

—оздана как расширение архитектуры х86

 оличество бит

32-битна€ архитектура

64-битна€ архитектура

јдресное пространство

4 √Ѕ

16 ЁЅ

Ћимит ќ«”

4 √Ѕ (фактически доступно 3,2 √Ѕ)

16 миллиардов √Ѕ

—корость

ћедленна€ и менее мощна€ в сравнении с х64

ѕозвол€ет быстро обрабатывать большие наборы целых чисел; быстрее, чем х86

ѕередача данных

ѕоддерживает параллельную передачу только 32 бит через 32-битную шину за один заход

ѕоддерживает параллельную передачу больших фрагментов данных через 64-битную шину данных

’ранилище

»спользует больше регистров дл€ разделени€ и хранени€ данных

’ранит большие объемы данных с меньшим количеством регистров

ѕоддержка приложени€

Ќет поддержки 64-битных приложений и программ.

ѕоддерживает как 64-битные, так и 32-битные приложени€ и программы.

ѕоддержка ќ—

Windows XP, Vista, 7, 8, Linux

Windows XP Professional, Windows Vista, Windows 7, Windows 8, Windows 10, Linux, Mac OS

 


‘ункции

 ажда€ архитектура системы команд имеет функции, которые ее определ€ют и дают некоторые преимущества в тех или иных вариантах использовани€. —ледующие списки иллюстрируют функции х64 и х86:

х86

  • »спользует сложную архитектуру со сложным набором команд (CISC-архитектуру).
  • —ложные команды требуют выполнени€ нескольких циклов.
  • х86 имеет больше доступных регистров, но меньше пам€ти.
  • –азработана с меньшим количеством конвейеров обработки запросов, но может обрабатывать сложные адреса.
  • ѕроизводительность системы оптимизируетс€ с помощью аппаратного подхода – х86 использует физические компоненты пам€ти дл€ компенсации нехватки пам€ти.
  • »спользует программную технологию DEP (Data Execution Prevention – ѕредотвращение выполнени€ кода).

х64

  • »меет возможность обработки 64-битных целых чисел с преемственной совместимость дл€ 32-битных приложений.
  • (“еоретическое) виртуальное адресное пространство составл€ет 264 (16 эксабайт). ќднако на сегодн€шний день в реальной практике используетс€ лишь небольша€ часть из теоретического диапазона в 16 эксабайт – около 128 “Ѕ.
  • х64 обрабатывает большие файлы, отобража€ весь файл в адресное пространство процессора.
  • Ѕыстрее, чем х86, благодар€ более быстрой параллельной обработке, 64-битной пам€ти и шине данных, а также регистрам большего размера.
  • ѕоддерживает одновременную работу с большими файлами в нескольких адресных пространствах.  роме того, х64 одновременно эмулирует две задачи х86 и обеспечивает более быструю работу, чем х86.
  • «агружает команды более эффективно.
  • »спользует программную технологию DEP (Data Execution Prevention – ѕредотвращение выполнени€ кода).

ѕрименени€

»з-за того, что эти две архитектуры имеют различные функции и имеют различи€ в доступе к ресурсам, скорости и вычислительной мощности, кажда€ архитектура используетс€ дл€ различных целей:

х86

  • ћногие компьютеры по всему миру по-прежнему основаны на операционных системах и процессорах х86.
  • »спользуетс€ дл€ игровых консолей.
  • ѕодсистемы облачных вычислений по-прежнему используют архитектуру х86.
  • —тарые приложени€ и программы обычно работают на 32-битной архитектуре.
  • Ћучше подходит дл€ эмул€ции.
  • 32-битный формат по-прежнему более предпочтителен при производстве аудио из-за возможности совмещени€ со старой аудиотехникой.

х64

  • ¬се большее число ѕ  используют 64-разр€дные процессоры и операционные системы на основе архитектуры х64.
  • ¬се современные мобильные процессоры используют архитектуру х64.
  • »спользуетс€ дл€ обеспечени€ работы суперкомпьютеров.
  • »спользуетс€ в игровых консол€х.
  • “ехнологии виртуализации основаны на архитектуре х64.
  • ќна лучше подходит дл€ новых игровых движков, так как она быстрее и обеспечивает лучшую производительность.

ќграничени€

» хот€ обе ISA имеют какие-то ограничени€, х64 – все же более новый и более совершенный тип архитектуры. Ќиже приведен список ограничений дл€ обоих типов архитектур:

х86

  • »меет ограниченный пул адресуемой пам€ти.
  • —корость обработки ниже в сравнении с архитектурой х64.
  • ‘ирмы-поставщики больше не разрабатывают приложени€ дл€ 32-битных операционных систем.
  • ƒл€ современных процессоров требуетс€ 64-битна€ ќ—.
  • ¬се устройства в системе (видеокарты, BIOS и т.д.) совместно используют доступную оперативную пам€ть, оставл€€ еще меньше пам€ти дл€ ќ— и приложений.

х64

  • ќна не работает на устаревших устройствах.
  • ≈е высока€ производительность и скорость, как правило, потребл€ют больше энергии.
  • ћаловеро€тно, что 64-разр€дные драйверы будут доступны дл€ старых систем и оборудовани€.
  • Ќекоторое 32-разр€дное программное обеспечени€ не полностью совместимо с 64-разр€дной архитектурой.

 ак проверить, на какой архитектуре работает ваш компьютер – х64 или х86?

≈сли вы купили ѕ  в последние 10-15 лет, то он с большой долей веро€тности работает на архитектуре х64. ƒл€ того, чтобы проверить, €вл€етс€ ли ваш компьютер 32-разр€дным или 64-разр€дным, выполните следующие действи€:

Ўаг 1: ќткройте настройки

¬ Windows 10 нажмите на клавишу Windows и щелкните значок «Settings» («Ќастройки»).

ѕроверить архитектуру в Windows

Ўаг 2: ќткройте параметры системы

¬ меню настроек выберите пункт «System» («—истема»).

ѕроверить архитектуру в Windows

Ўаг 3: Ќайдите характеристики устройства

¬ыберите пункт «About» («ќ программе») на левой панели и в разделе «Device specifications» («’арактеристики устройства») найдите тип системы:

ѕроверить архитектуру в Windows

¬ приведенном выше примере система представл€ет собой 64-разр€дную операционную систему с процессором на базе архитектуры х64.

„ерез командную строку это можно сделать быстрее:

wmic OS get OSArchitecture

Ќу а дл€ Linux нужно выполнить команду:

uname -m

„то лучше – х86 или х64?

Ќесмотр€ на то, что и у х86, и у х64 есть свои преимущества, будущее не терпит ограничений, а это значит, что х86 практически перестанет использоватьс€ или будет полностью выведена из использовани€.   тому же, х64 намного быстрее, может выдел€ть больше оперативной пам€ти и имеет возможности параллельной обработки через 64-битную шину данных. Ёто делает ее лучшим вариантом при выборе между двум€ типами архитектуры.

≈сли стоит выбор, какую ќѕ установить, то всегда лучше отдать предпочтение в пользу 64-разр€дной ќ—, поскольку она может запустить как 32-разр€дное, так и 64-разр€дное программное обеспечение. ј вот ќ— на базе х86 работает только с 32-разр€дным программным обеспечением.

¬ общем и целом, х64 гораздо более эффективна, чем х86, поскольку использует всю установленную оперативную пам€ть, предоставл€ет больше места на жестком диске, имеет более высокую скорости шины и общую лучшую производительность.


«аключение

ƒанна€ стать€ показала различи€ между архитектурами системы команд х86 и х64, а также описала их функции, возможные применени€ и ограничени€. ѕримите во внимание все особенности каждой ISA и сделайте выбор в пользу наиболее вам подход€щей.


—кидки 50% в Merion Academy

¬ыбрать курс