Наверх
29 комментариев 01/10/2013

В чем разница между х86 и х64? Почему пишут х86, а не х32? Вся правда о х32, х64, х86!

В чем разница между х86 и х64? Почему пишут х86, а не х32? Вся правда о х32, х64, х86!

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

Расскажи, что представляет собой х86?

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

 

System x32,x64,x86

В начале своего пути х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 МБ.

System x32,x64,x86_1

29 комментариев

по хронологии
по рейтингу сначала новые по хронологии
1

Статья копипаст с википедии, только более доступным языком.

Максимум на блоги тянет, но я там видал и по лучше.

2

В принципе, ее главным достоинством была и остаётся возможность воспринимать до 32 ГБ ОЗУ

Вы хотели сказать до 256TB (с возможностью дальнейшего расширения до 16EB)?

Запись x32 же вообще некорректна. Архитектура называется x86, а x32 придумали надмозги по аналогии с x64 (=x84_64). 32-битную ОС называют 32-битной ОС, а никак не x32.

3

А большее потребление оперативной памяти в х64 не ведёт к большей производительности системы?

5

Скажем так — у меня на ноуте 2 гб оперативки. Стояла винда 8 х64. При одновременной работе eclipse, chrome и sdtu reader пошаговая стратегия на экране заставляла работать над долготерпением. Поставил х86 — более-менее нормально.

6

Ага, с завода стояла :) Сначала разберитесь, потом устанавливайте.

7

Кто... С завода? Ноут у меня был с freeDOS. Может, прикажете на нём сидеть? :)

8

Оно, скорее, связанно не с возростанием производительность, а с увеличением длины адресов ячеек памяти (указателей). Это если совсем примитивно, неточно и в тонкости компилирования не углубляться.

9

Как-то статья выглядит незаконченной ... Как будето автро не все рассказал ...

тот же Apache на 32-бит потреблял 20 МБ ОЗУ, а уже на 64-бит ОС — приблизительно 50 МБ.

и сразу занавес ..

10

Мне всё интересно, как процессоры работают на физическом уровне. Понятно, что транзисторами созданы логические процессы на физическом уровне, а вот как заставить кусок полупроводника сложи 2 + 2 мне не понятно))

11

Начни для себя с понимания как работает АЛУ

Хинт: двойка в бинарной форме - 10, 10+10=100

12

Прочитайте книгу "Код" Чарльза Петцольда. Там описано доступным языком.

13

Не нужно только плодить сущности и интуитивно называть x32 и x64. Привычных наименований уже вполне достаточно, чтобы не изобретать свои сокращения.

14

Еще бы не мешало упомянуть про чисто 64-битные процессоры типа Itanium с архитектурой IA-64

15

Для ленивых:

х86 это архитектура микропроцессора и аппаратная платформа, которая применима и 32-битным и к 64-битным программам.

И если x86 это архитектура процессора, то x32 и x64 это его разрядность, а также количество информации, которую процессор в силах обработать за один такт.

16

Насколько я знаю, а я достаточно много читал по этой теме, х86 архитектура процессоров от Intel, которая названа так из-за наименования процессоров, которое оканчивалось на 86, в общем то эта архитектура совместима только с 32-bit системами, intel пыталась создать новую архитектуру, которая могла бы работать с 64-bit адрессным пространством, для работы с 32-bit пространством был внедрен режим эмуляции, который оказался слишком медленным, из-за чего +ряд недочётов данная архитектура оказалась не востребованной, а вот компания AMD создала не безызвестную amd64 под которую написаны системы 64-bit, и фишка в том что у этого принципа было изначально другое название, а именно x86-64, потому что они добавили надстройку над х86 в результате проц мог работать в обоих режимах, так что х86 - сугубо 32-bit, в то время как amd64 - 64-bit и, в случае надобности, режим работы как x86; а такого понятия как x32 нет, собственно как понятие x64 ошибочно, но достаточно широко используется обычными пользователями, что создаёт запутанность из-за незнания тонкостей в именовании, а именно x86 - исключительно наименование архитектуры, а х64 - разрядность операционки или процессора, построенного на архитектуре amd64 (однако в кругах ИТ, насколько мне известно, не так часто применяют само понятие x64, а применяют либо 64-bit об операционке либо amd64 о процессоре если это amd или же в случае с intel иногда заменяют на х86-64, для выделения того что это не AMD, a Intel)

17
Михаил Кириллов

О школа, школа…

Главным недостатком x32 является невозможность поддержки более чем 4 ГБ ОЗУ.

Гуглим технологию PAE (Physical Address Extension), которая позволяет работать с памятью больше 4ГБ. (Даже 3,2 если точнее). У меня на работе стоят 2 Windows Server 2003 на стареньких Intel Pentium 4, 2,4 Гг Northwood 478Pin, которые прекрасно могут работать с оперативкой до 64 Гб (Винда может, там мамка столько не держит). Также это могут маки, линуксы и прочие. Малкософт для десктопов отмазывается какимито ограничениями в драйверах. Кому интересно, читать здесь: http://blogs.technet.com/b/markrussinovich/archive/2008/07/21/3092070.aspx

Так что это давно не проблема железа.

А преимущество х64 скорее в возможности «мапирования» физических файлов на виртуальную память больше 4 Гб. Это для видео и игрушек в основном.

18

> преимущество х64 скорее в возможности «мапирования» физических файлов на виртуальную память

PAE есть тормозящий костыль, особенно у маздайных (в линухах в своё время Оракл это как-то причесал). Но да, вполне рабочий.

19
Михаил Кириллов

Ну так и я про то, что х64 не про много оперы. Хотя да, позволяет без костылей юзать.

20

О господи…зачем писать о вещах, в которых разбираешься на уровне: черное-белое? 1 гб проваливается?

А теперь по делу. 32 битная система использует для адрессации памяти 2 в 32 бита, что равно 4 гб. Но поскольку в этом же 32 битном диапазоне нужно выделить место для синхронизации устройств. Таким образом объем доступной памяти зависит от Вашего железа может достигать 3,75 гб.

Что касается серверных 32 битных систем, они испольвуют 2*36, так званый РАЕ , в пересчете это 64 гб.

Как вообще можно писать про архитектуры не упоминая об иструкциях, разницах регистрах, стеке в наглядных примерах?

21
Мойдоддр

Блиииииииииииииииин, ты еще больше все запутал

22

главный недостаток статьи, что ее писали люди, только отдаленно слышавшие о этой всей малине. все, что можно смешано в кучу — разрядность процессоров с разрядностью операционок (зачем?!), приставка «х» и к архитектуре и к разрядности, адресацию памяти с объемом оперативной памяти… в итоге она наплодит еще тучу ламеров, которые будут выяснять отношения на рутрекере в ветке со зверем…

Автор23

Ребята, как говориться: "Первый блин комом!".

Все советы и подсказки буду учтены и приняты к статьям в будущем.

Спасибо всем за fid back, для меня он очень важен.

24
Михаил Кириллов

Спасибо всем за fid back

Feedback (англ. «обратная связь»)

25

Кстати, если я не ошибаюсь, то преимущество х64 в том, что ОДНО приложение может использовать больше 2 Гб оперативной памяти.

26

Вы меня, студента технического ВУЗа, совсем запутали)

27
Мойдоддр

В мои школьные годы мое творчество дальше последней страницы в тетрадке не выходило, чего и автору желаю.

28
Господин Нагорный

Спасибо за комменты, они оказались гораждо полезнее статьи. :)

29
Александр

"x" - это разрядность, архитектура это - "i". Правильнее было бы х32, но i86. Кто и зачем передвинул эти два разных понятия - неизвестно, но отсюда всё и началось, биты и байты под одну маркировку, где "B", где "b", ЭВМ в компьютер, счёты в калькулятор, ёмкость в ватты, литры в километры.

Добавить комментарий

Такой e-mail уже зарегистрирован. Воспользуйтесь формой входа или введите другой.

Вы ввели некорректные логин или пароль

Извините, для комментирования необходимо войти.

Modal box