Remkomplekty.ru

IT Новости из мира ПК
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Архитектура x86 и x64

В чем разница между х86 и х64?

Многие пользователи часто задаются вопросами: «Какую систему мне ставить?», «В чем разница между х86 и х32?» и т. д. Давайте же разложим все по полочкам.

х86 — это архитектура процессора с одноимённым набором команд, впервые реализованная в процессорах компании Intel. Название образовано от двух цифр, которыми заканчивались названия процессоров Intel ранних моделей — 8086, 80186, 80286 (i286), 80386 (i386), 80486 (i486). Через какое-то время цифровые обозначения новых процессоров стали сменяться именами. Так публика узнала о Pentium и Celeron, но платформа x86 не изменялась вплоть до 2000-х годов, но об этом чуточку попозже.

В начале своего пути х86 архитектура, которая была впервые представлена на i8086, применялась на 16-разрядных процессорах (может хранить 2^16 уникальных значений), имела 16-битные инструкции и внутреннюю 16-битную шину, позже добавили еще внешнюю 8-разрядную шину данных. Дальше события развивались довольно просто — производители увеличивали скорость, количество транзисторов, набор команд и т. д., и так вплоть до выхода 80386(i386) — процессора, который на то время знаменовал собой революцию в мире процессоров x86. Это был первый 32-разрядный процессор, который мог использовать кэш-память, расположенную на внешнем чипе.
Вплоть до анонса AMD64 (аппаратная платформа) архитектура не сильно менялась.
После выхода AMD64 и Intel 64 х86 она подверглась серьезным изменениям.
Процессоры архитектуры поддерживают два режима работы: Long Mode («длинный» режим) и Legacy Mode («наследственный», режим совместимости с 32-битным x86).
Основные достоинства архитектуры x86-64:

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

«Что такое x32?»

Это 32-битная операционная система, которая ставится на 32-разрядные процессоры. Если брать в качестве примера ОС Microsoft, то первая x32 была Windows 95, которая в полной мере использовала возможности данного процессора и архитектуры (x86). Главным недостатком x32 является невозможность поддержки более чем 4 ГБ ОЗУ. Примечательно, что система в состоянии оперировать только 3 ГБ памяти и 1 ГБ просто проваливается.
Еще существует довольно распространённая ошибка: когда пишут совместимость программ, то указывают x86, подразумевая 32-битную платформу. Это не совсем корректно и только вводит в заблуждение. Лучше всего указывать x86_32bit или x86_64bit. Либо сокращать до интуитивно понятных x32 или x64.

что собой представляет x64?

x86_64bit — это 64-битная операционная система, которая ставится на 64-разрядные процессоры с архитектурой x86-64. «64-битный лейбл» звучит возбуждающе, но в практическом плане это всего лишь хитрый маркетинговый трюк, скрывающий не только достоинства, но и недостатки. В принципе, ее главным достоинством была и остаётся возможность воспринимать до 32 ГБ ОЗУ, что существенно увеличивает производительность. Еще одним плюсом данной ОС есть то, что под ней процессоры на архитектуре х86-64 (Celeron, Core 2, Core i3, Core i5, Core i7) задействуют весь потенциал кристалла. Это возможно благодаря режиму Long Mode. Недостатком же есть увеличение потребляемой оперативной памяти программами, например, тот же Apache на 32-бит потреблял 20 МБ ОЗУ, а уже на 64-бит ОС — приблизительно 50 МБ.

64-битные x86 процессоры

Эволюция микропроцессоров исторически подразумевала увеличение разрядности целочисленных регистров процессора, т.е. максимального числа бит, образующих числа, над которыми можно было выполнять элементарные арифметические действия путём исполнения соответствующих команд. Также от этого параметра зависит объём линейно (без всяческих ухищрений, замедляющих работу) адресуемой оперативной памяти, к которой может обращаться процессор.
Самый первый микропроцессор Intel 4004 был 4-битным, а основатель семейства x86, т.е. первый процессор, использующий наиболее популярный до сих пор базовый набор команд, Intel 8086 был 16-битным. Эпоха 32-битных микропроцессоров началась с 1985 года с процессором Intel 386, с тех пор вплоть до Intel Pentium4 и AMD AthlonXP включительно система команд процессоров только дополнялась (MMX, SSE/SSE2/SSE3, 3Dnow!), но, несмотря на увеличение разрядности внешних шин и шин кэшей вплоть до 256-бит в некоторых случаях, число разрядов целочисленных регистров общего назначения оставалось равным 32.
Тем временем, практически все высокопроизводительные процессоры более поздних, нежели x86, архитектур (преимущественно — варианты RISC) уже давно были 64-битными. (Первый такой процессор, MIPS R3000, появился в 1994 году и был известен в основном по рабочим станциям и серверам SGi). Более того, Intel продвигала уже второе поколение собственных изначально 64-битных процессоров с архитектурой IA64(базирующейся на технологии VLIW) с коммерческим названием Itanium, не обладавших программной x86-совместимостью.
Однако в 2002 году компания AMD представила развитие архитектуры x86 под названием AMD64, представляющее собой очередное расширение набора команд x86, но рассчитанное на работу с 64-битными целочисленными регистрами общего назначения. В «железе» этот набор команд впервые был реализован на процессорах семейства AMD K8: Opteron/Athlon64, полностью программно совместимых и с обычными x86 процессорами.
В течении последующих двух лет стало ясно, что полная реализация потенциала этих процессоров возможна только при работе в операционной системе, использующей соответствующий набор команд и 64-битную адресацию памяти, что, в первую очередь, позволяло без всяких ограничений работать с линейными массивами данных объемом более 4Гб.
В первую очередь на новые процессоры были портированы ОС семейства Linux вместе с достаточно представительным набором критичных к скорости процессора и требующих больших объёмов памяти приложений. Скорость и стабильность работы новых процессоров, а также принципиальные трудности с созданием настольного процессора с архитектурой Intel IA64 сподвигли компанию Microsoft заняться портированием своих ОС на эту платформу.
С этого момента стало ясно, что набор команд AMD64 станет новым индустриальным стандартом, и Intel не осталось ничего другого, как добавить в свои процессоры полный аналог набора команд AMD64, в реализации Intel названный EM64T (Extended Memory 64-bit Technology).

Чем принципиально 64-битные x86 процессоры отличаются от 32-битных?
Помимо возможности быстрой работы с целыми 64-битными числами и прямой адресации несравнимо больших объёмов как виртуальной, так и физической памяти, новый индустриальный стандарт для x86 процессоров ликвидировал три принципиальных недостатка этой архитектуры:
1)Удвоение числа целочисленных регистров общего назначения — по этому параметру все потомки Intel 386 очень сильно отставали от современных RISC и VLIW процессоров. Использование компилятором этих регистров позволяет заметно улучшить эффективность реализации многих алгоритмов.
2)Использование для операций с плавающей точкой не стека, а регистров, используемых в наборе команд SSE2. Очень заметно отражается на производительности, но также требует перекомпиляции программного обеспечения.
3)DEP — Data Execution Protection (защита от передачи на выполнение содержимого сегмента данных при возникновении ошибки переполнения), также называется EVP (Enhanced Virus Protection), сильно затрудняет работу определённых классов вредоносных программ, в первую очередь — червей и троянцев. Не требует перекомпиляции ПО, поддерживается и 32-битными ОС Microsoft, начиная с WindowsXP SP2 и Wndows 2003 Server SP1.

Что нужно для работы 64-битных x86 приложений на моём ПК?
1)64-битный x86 процессор. На момент написания FAQ это были процессоры AMD с поддержкой технологии AMD64 и Intel c EM64T, соответственно. Конкретно речь идёт о AMD Opteron/Athlon64/Turion 64(мобильный аналог Athlon64)/Sempron 64/Phenom64. У Intel поддержка EM64T присутствует у процессоров Celeron D 3X1/3X6, Pentium4 5X1/5X6/6XX, Pentium D, Pentium XE (не Pentium4 XE!), всех Xeon DP с 800МГц с шиной и XeonMP c 667МГц шиной, а также у большинства будущих процессоров Intel за исключением Pentium M и Сeleron M.

Читать еще:  Архитектура корпоративных приложений

Дополнение от января 2008 года — на данный момент набор команд AMD64/EM64T окончательно стал стандартом для всех производимых мобильных, настольных и серверных x86 процессоров Intel и AMD.

Также надо убедиться, что процессор корректно опознаётся BIOS’ом материнской платы (это означает, что в него загружен необходимый микрокод, несоблюдение этого условия может привести к серьёзным проблемам в работе компьютера). В некоторых ситуациях может потребоваться обновление BIOS материнской платы. В первую очередь это касается процессоров Intel, поскольку не все LGA775-материнские платы изначально поддерживали такие процессоры.
2)Операционная система.
На момент написания FAQ доступны следующие ОС:
Microsoft Windows XP Professional x64 Edition, Microsoft Windows 2003 Server x64 Editions (Standart/Enterprise/Datacenter), Windows Server 2008, также на платформу AMD64 перенесены Sun Solaris и различные варианты Linux и FreeBSD,(детальное рассмотрение особенностей unix-подобных ОС выходит за рамки данного FAQ), Windows Vista также имеет x64 версии всех редакций кроме начальных.
3)Драйверы. Все драйверы, работающие в ядре системы должны быть 64-битными, обратной совместимости не предусмотрено. Для наиболее распространённых комплектующих (видеокарты nVidia GeForce и ATi Radeon, чипсеты и дисковые контроллеры Intel, VIA, nVidia) такие драйверы уже написаны.

Будут ли работать обычные приложения на 64-битной ОС Windows?
1)32-битные приложения для Microsoft Windows — да, будут, при этом в некоторых ситуациях возможен прирост производительности по сравнению с выполнением на том же компьютере, но под 32-битной ОC(особенно если приложение использует очень большие объёмы оперативной памяти), но при этом 32-битные приложения не могут обращаться к 64-битным DLL и элементам Active Controls и наоборот. (На практике это выразилось в том, что в составе 64-х битных Windows Internet Explorer оставлен 32-битным для корректной работы со страницами, содержащими ActiveX элементы.)
2) 16-битные приложения для Microsoft Windows — нет, за исключением нескольких программ-инсталляторов.
3) DOS-приложения — нет. (На момент написания FAQ стало известно о портировании на 64-битные версии Windows прекрасно зарекомендовавшего себя OpenSource эмулятора DosBox, что почти полностью снимает возможные проблемы)
4)Приложения Windows для IA64(Itanium) — нет.

Что всё это даст мне в данный момент и что это может дать в будущем?
Для обычных пользовательских повседневных программ перенос их в данный момент на 64-битную платформу не даёт какого-либо качественно скачка в производительности. Исключением, (да и то относительным) являются только некоторые новейшие высокотехнологичные игры.
Наибольшую пользу от перехода на 64-бита получают программы для работы с базами данных, причём чем больше объём используемых данных, тем более заметен выигрыш, программы для CAD/CAE (автоматизированное проектирование, моделирование и т.п.), а также программы для создания цифрового контента (обработка изображений, звука, видео), более подробную информацию уже, как правило, можно узнать на сайте фирмы-разработчика используемого вами ПО — как правило, из сроков готовности 64-битных версий секретов никто не делает.
Из программ, портирование которых на 64-бит Windows завершено или близится к завершению стоит упомянуть Microsoft SQL Server 2000 и 2005, Cakewalk Sonar 4.0, CryTek FarCry, Epic Unreal Tournament 2004, SiSoft Sandra 2005 Полный список ПО, которое находится на разных стадиях переноса под Windows x64 можно найти здесь.

Сравнительная таблица ограничений по максимальному объёму используемой оперативной памяти и числу процессоров для 32 и 64-битных версий операционных систем от Microsoft:

64 разрядная windows 7 или 32 бита, x64 и x86 в чем разница?

Что значит x64 и x86 в чем разница

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

Как узнать какая у меня разрядность системы?

В свойствах компьютера или при помощи программы Securable (_https://www.grc.com/securable.htm), также с помощью нее можно узнать поддерживает ли ваш процессор 64 разрядную операционную систему.

Какая разница и что это дает?

Шестидесяти четырех битная система может увидеть и работать с большем объемом памяти, 32 она же уже x86 устаревшая архитектура процессора работает лишь с 3 гигабайтами, до нее была 8, 16 битные системы, все мы наверно помним 8 битную Денди (не с очень то красивой графикой) и 16 битную Sega mega drive (по красочней чем на денди графикой), ну а потом уже Sony Playstation 32, тогда еще появилась Nintendo 64 но особой популярностью, 64 разрядность не пользовалась, так как на тот момент не писались в таком масштабе программы и драйвера под нее. Но на сегодняшней момент все изменилось, и производители стали активно разрабатывать приложения и драйвера, под эту систему, а почему именно сейчас?, а не тогда когда появилась Windows XP 64 не пользующаяся особой популярностью по причине отсутствия приложений и поддержки драйверов различными устройствами, а все потому что не было необходимости для обычного пользователя, так как нам хватало и той оперативной памяти с которой могла работать 32 разрядная ОС, это максимальных 3 Gb.

Так что пришло время, поднялись требования программ к ресурсам системы. Не цифры разрядности дают прирост производительности, а объем оперативной памяти и как программа может этот объем использовать, та как сама по себе разрядность не дает скорости, если вы установили себе 64 ОС и установили программу поддерживающую эту разрядность, сам факт этого не даст значительного прироста, а вот работа программы с вашей ОП уже может значительно ускорить работу программы, как это происходит, все дело в том что программы до этого использовали в качестве буфера, на виртуальном жестком диске, и обращение к этому дампу значительно медленнее чем обращение к оперативной памяти, сейчас же идея приложения заключается в использование места под дамп именно в оперативной памяти компьютера, тем самым уменьшить время на затраты при обращении к нему.

Вот я надеюсь хоть как то смог мало мальски для неопытных людей разобрать что к чему в этих цифрах. Так что можно подвести вывод, если вы офисный сотрудник и у вас кроме офисных программ больше ничего не установлено то вам вообще все равно что использовать, но лучше 32, так как у вас будет не так много папок Programm files ))), объясню все дело в в том что если вы установите себе 64 битную ОС то при установке приложений 32 битных вы получите вторую папку Programm files (x86) так как все программы хранятся отдельно по разрядности. По этому для офиса или использования в домашних условиях для не продвинутых пользователей и не геймеров я бы рекомендовал 32.

Читать еще:  Современные архитектурные системы

Если вы уже ПРОюзер и Игроман то 64 система это для вас, так как на сегодняшний момент играм требуется уже больше оперативной памяти чем 3 Гб, да и профессиональные программы как фотошоп или видео редакторы уже могут использовать в своих целях большой объем оперативной памяти.

x86, x32, x64 — Что это всё значит?

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

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

Откуда есть пошло

Вам ещё не надоел этот подзаголовок? 🙂

В далёком 1978 году был выпущен первый в мире 16-разрядный микропроцессор, Intel 8086 . В последующие два десятилетия компанией Intel было создано множество моделей процессоров, которые объединяло две вещи:

1. Полная совместимость с 8086 на уровне команд 2. Число 86 в конце названия

Из этих двух признаков и было выведено наименование x86 . Это не название архитектуры процессора, нет. Это лишь указание на то, что процессор поддерживает все команды, которые поддерживал старичок 8086, умеет исполнять 16-разрядный код и может работать в так называемом реальном режиме доступа к памяти, а не только в защищённом.

Несложно понять, что под понятие x86 подходят не только реликтовые 16-разрядные экземпляры, но и более современные 32, 64, да хоть миллионо-разрядные. И это стало проблемой, ведь для использования преимуществ 32 и 64-битных процессоров необходимо писать программы именно под эти разрядности. Поначалу проблем не возникало из-за того, что на 32 битах работали уже другие операционные системы, такие как Windows, а 16 бит остались уделом старичка DOS и его ровесников. Поэтому и 16, и 32-битное ПО маркировали как написанное для x86.

Тем не менее, Intel соизволила дать архитектуре своих 32-битных процессоров официальное название: IA-32 . К тому времени на горизонте уже замаячила 64-битная архитектура, которую вполне логично было назвать IA-64 . Intel так и сделала. Как потом стало ясно, зря.

И куда пришло

Ещё один замыливший глаза подзаголовок.

Первые в мире серийно выпускаемые 64-битные процессоры продавались под маркой Intel Itanium. Архитектуре этой серии дали официальное название IA-64. Предназначались они только для серверов. Возможно, в дальнейшем предполагалось выпускать варианты Itanium’ов и для домашних ПК, но если такие планы и были, то сбыться не могли. А всё почему?

Программы, собранные специально для IA-64, работали на этих процессорах замечательно, все преимущества 64 бит были в наличии. Вот только мало их было, таких программ, до смешного мало. Зато для IA-32 их было уже очень много. Никто не станет закупать процессоры, на которых нужные программы не будут работать, а разработчики большинства нужных программ ленивы, и не станут переписывать свои творения под архитектуру, которой никто не пользуется. Получается замкнутый круг, разорвать который может лишь разработчик этого нового процессора, добавив возможность выполнять на нём не только новые, но и старые программы. Потому ведь и с 8086 совместимость сохраняется до сих пор.

Но с IA-64 вышла неудача. Она кардинально отличалась от IA-32 (настолько, что ARM и IA-32 на её фоне кажутся близнецами), и для совместимости со старым ПО использовала режим эмуляции. Очень, очень медленный режим. Достаточно медленный, чтобы даже самые толерантные к медленному софту компании думали трижды перед покупкой сервера на базе Itanium. Было и множество других проблем: слишком горячие (требуется мощное охлаждение), слишком прожорливые (в плане электроэнергии), и так далее. Серия провалилась с треском.

И вот мы подошли к ключевой точке этой истории, с которой и началась подлинная чехарда названий. В 2003 году давний конкурент Intel, компания AMD представила собственный вариант 64-битного процессора. В отличие от Itanium’ом, их архитектура не содержала чего-то кардинально нового, это была та же IA-32, но дополненная новыми командами, и работающая с 64-битными числами. Точно так же сама Intel когда-то расширила x86, превратив её в IA-32.

AMD, не долго думая, дала своей новой архитектуре название AMD64 . Ей сопутствовал большой коммерческий успех, ведь 32-битные программы выполнялись так же быстро, как на IA-32. Правда, памяти потребляли гораздо больше, но это было не так важно.

Intel в этот раз не стала изобретать велосипед, а просто взяла AMD64, и с некоторыми упрощениями реализовала в своих новых процессорах.

Но появилась проблема: как называть эту архитектуру в документации? IA-64 — занято провальными Itanium. AMD64 — для Intel несолидно. И понеслась фантазия.

Един во многих лицах

Сама Intel меняла названия новой архитектуры несколько раз. Разработчики ПО и журналисты вносили ещё большую путаницу — редко кто использовал последнее официальное название, часто встречались старые или даже взятые с потолка. По итогам прошедших лет мы имеем:

AA-64 AMD64 x86-64 x86_64 x64 IA-32e EM64T Intel64 Что-то мне подсказывает, что список неполный.

На сегодня официальным названием является Intel64 . Таким образом, главная причина смены названий всё ещё не решена: и AMD64, и Intel64 вводят пользователя в заблуждение. Он ведь не обязан знать, что эти две архитектуры совместимы в обе стороны. Вполне логично предположить, что программа для AMD64 будет работать лишь на процессорах AMD, а на Intel не будет. И наоборот. Но по факту это не так.

Кто есть кто

Вся статья задумана ради этого списка 🙂

x86 — совместимые с Intel 8086 , но обычно имеют в виду IA-32 IA-32, x86-32 — 32-битное подмножество x86 i386 — совместимый с Intel 80386 , (первым 32-битным для IBM PC), синоним IA-32 i486 — совместимый с Intel 80486 , подмножество IA-32 i586 — совместимый с Pentium , подмножество IA-32 i686 — совместимый с Pentium Pro , подмножество IA-32 AMD64, Intel64, x86-64, x86_64, x64, AA-64, IA-32e, EM64T — 64-битное подмножество x86 IA-64 — 64-битная архитектура линейки Intel Itanium, процессоры совместимы с программами IA-32, но не наоборот

На этом пока всё. Подписывайтесь на канал, ставьте лайки, делитесь в соцсетях — будет стимул писать дальше.

Есть вопрос, замечание, предложение, возмущение? Не держите в себе, оставьте комментарий!

Чем архитектура ARM отличается от x86

В наше время существует две самые популярные архитектуры процессоров. Это x86, которая была разработана еще 80х годах и используется в персональных компьютерах и ARM — более современная, которая позволяет сделать процессоры меньше и экономнее. Она используется в большинстве мобильных устройств или планшетов.

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

Читать еще:  Ошибка формата потока данных

Что такое архитектура?

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

На данный момент существуют два типа архитектур: CISC (Complex Instruction Set Computing) и RISC (Reduced Instruction Set Computing). Первая предполагает, что в процессоре будут реализованы инструкции на все случаи жизни, вторая, RISC — ставит перед разработчиками задачу создания процессора с набором минимально необходимых для работы команд. Инструкции RISC имеют меньший размер и более просты.

Архитектура x86

Архитектура процессора x86 была разработана в 1978 году и впервые появилась в процессорах компании Intel и относится к типу CISC. Ее название взято от модели первого процессора с этой архитектурой — Intel 8086. Со временем, за неимением лучшей альтернативы эту архитектуру начали поддерживать и другие производители процессоров, например, AMD. Сейчас она является стандартом для настольных компьютеров, ноутбуков, нетбуков, серверов и других подобных устройств. Но также иногда процессоры x86 применяются в планшетах, это довольно привычная практика.

Первый процессор Intel 8086 имел разрядность 16 бит, далее в 2000 годах вышел процессор 32 битной архитектуры, и еще позже появилась архитектура 64 бит. Мы подробно рассматривали разрядность процессоров в отдельной статье. За это время архитектура очень сильно развилась были добавлены новые наборы инструкций и расширения, которые позволяют очень сильно увеличить производительность работы процессора.

В x86 есть несколько существенных недостатков. Во-первых — это сложность команд, их запутанность, которая возникла из-за длинной истории развития. Во-вторых, такие процессоры потребляют слишком много энергии и из-за этого выделяют много теплоты. Инженеры x86 изначально пошли по пути получения максимальной производительности, а скорость требует ресурсов. Перед тем, как рассмотреть отличия arm x86, поговорим об архитектуре ARM.

Архитектура ARM

Эта архитектура была представлена чуть позже за x86 — в 1985 году. Она была разработана известной в Британии компанией Acorn, тогда эта архитектура называлась Arcon Risk Machine и принадлежала к типу RISC, но затем была выпущена ее улучшенная версия Advanted RISC Machine, которая сейчас и известна как ARM.

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

В отличие от x86, разработчики изначально пытались получить минимальные затраты на ресурсы, они имеют меньше инструкций процессора, меньше транзисторов, но и соответственно меньше всяких дополнительных возможностей. Но за последние годы производительность процессоров ARM улучшалась. Учитывая это, и низкое энергопотребление они начали очень широко применяться в мобильных устройствах, таких как планшеты и смартфоны.

Отличия ARM и x86

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

Производство

Производство x86 vs arm отличается. Процессоры x86 производят только две компании Intel и AMD. Изначально эта была одна компания, но это совсем другая история. Право на выпуск таких процессоров есть только у этих компаний, а это значит, что и направлением развития инфраструктуры будут управлять только они.

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

Количество инструкций

Это главные различия архитектуры arm и x86. Процессоры x86 развивались стремительно, как более мощные и производительные. Разработчики добавили большое количество инструкций процессора, причем здесь есть не просто базовый набор, а достаточно много команд, без которых можно было бы обойтись. Изначально это делалось чтобы уменьшить объем памяти занимаемый программами на диске. Также было разработано много вариантов защит и виртуализаций, оптимизаций и многое другое. Все это требует дополнительных транзисторов и энергии.

ARM более прост. Здесь намного меньше инструкций процессора, только те, которые нужны операционной системе и реально используются. Если сравнивать x86, то там используется только 30% от всех возможных инструкций. Их проще выучить, если вы решили писать программы вручную, а также для их реализации нужно меньше транзисторов.

Потребление энергии

Из предыдущего пункта выплывает еще один вывод. Чем больше транзисторов на плате, тем больше ее площадь и потребление энергии, правильно и обратное.

Процессоры x86 потребляют намного больше энергии, чем ARM. Но на потребление энергии также влияет размер самого транзистора. Например, процессор Intel i7 потребляет 47 Ватт, а любой процессор ARM для смартфонов — не более 3 Ватт. Раньше выпускались платы с размером одного элемента 80 нм, затем Intel добилась уменьшения до 22 нм, а в этом году ученые получили возможность создать плату с размером элемента 1 нанометр. Это очень сильно уменьшит энергопотребление без потерь производительности.

За последние годы потребление энергии процессорами x86 очень сильно уменьшилось, например, новые процессоры Intel Haswell могут работать дольше от батареи. Сейчас разница arm vs x86 постепенно стирается.

Тепловыделение

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

Производительность процессоров

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

Выводы

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

А как вы относитесь к этим x86 и ARM? За какой технологией будущее по вашему мнению? Напишите в комментариях! Кстати, Линус Торвальдс предпочитает x86.

На завершение видео о развитии арихтектуры ARM:

Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector
×
×