Windows x64 или x86 - какой ставить? Смотреть что такое "X86" в других словарях В операционной системе что такое 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:

Общие ограничения по объёму используемой памяти 32-Bit 64-Bit
Полное виртуальное адресное пространство 4 ГБ 16 TБ
Виртуальное адресное пространство для 32-битного процесса 2 ГБ (3 ГБ c ключом загрузки /3ГБ) 4 ГБ если программа откомпилирована с ключом /LARGEADDRESSAWARE (2 ГБ без этого)
Виртуальное адресное пространство для 64-битного процесса Не применимо 8 TБ
Paged pool(Выгружаемый стек) 470 МБ 128 ГБ
Non-paged pool(Невыгружаемый стек) 256 МБ 128 ГБ
System Page Table Entry(PTE) 660 МБ to 900 МБ 128 ГБ
Ограничения по физическому объёму памяти и количеству процессоров 32-Bit 64-Bit
Windows XP Professional 4 ГБ / до 2 CPU 128 ГБ / до 2 CPU
Windows Server 2003, Standard Edition 4 ГБ / до 4 CPU 32 ГБ / до 4 CPU
Windows Server 2003, Enterprise Edition 64 ГБ / до 8 CPU 1 TБ / до 8 CPU
Windows Server 2003, Datacenter Edition 64 ГБ / 8 - 32 CPU 1 TБ / 8 - 64 CPU
Windows Server 2008, Web Edition 4 ГБ / до 4 CPU 32 ГБ / до 4 CPU
Windows Server 2008, Standart Edition 4 ГБ / до 4 CPU 32 ГБ / до 4 CPU
Windows Server 2008, Enterprise Edition 64 ГБ / до 8 CPU 2 TБ / до 8 CPU
Windows Server 2008, Datacenter Edition 64 ГБ / до 32 CPU 2 TБ / до 64 CPU
Windows Server 2008, HPC Edition - 128 ГБ / до 4 CPU

Cведения о максимально поддерживаемых объемах памяти для 64-битных версий Windows Vista можно найти .

(real mode)

Классический режим адресации, использованный в первых моделях семейства. Использует сегментированную модель памяти, организованную следующим образом: адресное пространство в 1MiB разбивается на 16-байтовые блоки, называемые параграфами. Всего параграфов в 1 MiB - 65536, что позволяет пронумеровать их 16-разрядными числами. Сегменты памяти имеют размер 65536 байт, и всегда начинаются на границе параграфа. Адрес ячейки памяти состоит их двух частей: номера параграфа, с которого начинается сегмент и смещения внутри сегмента и обычно записывается как SSSS:OOOO, где S и O - шестнадцатеричные цифры. SSSS называется сегментной компонентой адреса, а OOOO - смещением. Адрес ячейки, выдаваемый на шину, представляет собой сегментную компоненту умноженную на 16 плюс смещение. Сегментная компонента помещается в специальный регистр, называемый сегментным, а смещение в регистр IP(регистр инструкций). Микропроцессоры 8086/8088, 80186/80188 и 80286 имели четыре сегментных регистра, т.е могли работать одновременно с четырьмя сегментами памяти, имеющими определенное назначение. В 80386 добавили еще два, не имеющих специального назначения.

  • Сегментные регистры и их назначение:
    • CS - Сегмент кода. Используется для выборки команд программы;
    • DS - Сегмент данных. Используется по умолчанию для доступа к данным;
    • ES - Дополнительный сегмент. Является получателем данных в командах обработки строк;
    • SS - Сегмент стека. Используется для размещения программного стека;
    • FS - Дополнительный сегментный регистр. Специального назначения не имеет. Появился в процессоре 80386;
    • GS - Аналогично предыдущему, но в новых процессорах с 64-битной архитектурой имеет особый статус: может использоваться для быстрого переключения контекстов.

Несмотря на то, что сегментные регистры имеют специальные назначения, архитектура допускает при обращении к данным заменить один сегмент на любой другой. Сегменты кода, стека и получателя строк всегда используют регистры CS, SS и ES и не могут быть изменены. Общий объем памяти, адресуемый в реальном режиме составляет 1048576 байт (0000:0000-F000:FFFF(00000-FFFFF)-логический адрес(физический адрес) в шестнадцатеричной системе счисления). Сегментный подход позволяет разделить всю память на 16 сегментов, начинающихся с адресов, кратных 64 Кбайт. Эти 16 сегментов называют страницами памяти. Обычно деление на страницы используется для совместного функционирования устройств, интерфейсы которых отображены на адресное пространство памяти; тогда каждое такое устройство использует одну страницу памяти, и адрес ячейки в адресном пространстве устройства будет совпадать со смещением в сегменте памяти компьютера. Так в компьютерах IBM PC страницы c 11 по 15 используются как «видеопамять»(адресное пространство видеоадаптера), а шестнадцатая страница(размещающаяся в адресах FFFF:0000 - FFFF:FFFF) получила название «области верхней памяти» (High Memory Area), которую впоследствии MS-DOS использовала для размещения своего ядра и буферов ввода-вывода, оставив больше «обычной» памяти прикладным программам. Таким образом реально доступная пользователю память составляет 640 Кбайт(первые 10 страниц).

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

Защищённый режим (protected mode)

Более совершенный режим, первые появившийся в процессоре 80286 и в дальнейшем многократно улучшавшийся. Имеет большое количество подрежимов, по которым можно проследить эволюцию семейства ЦП. В этом режиме поддерживается защита памяти, контексты задач и средства для организации виртуальной памяти. Аналогично реальному режиму, тут также используется сегментированная модель памяти, однако уже организованная по другому принципу: деление на параграфы отсутствует, а расположение сегментов описывается специальными структурами (таблицами дескрипторов), расположенными в оперативной памяти. Помимо базового адреса сегмента дескрипторы содержат размер сегмента (точнее, максимально доступное смещение) и различные атрибуты сегментов, использующиеся для защиты памяти и определения прав доступа к сегменту для различных программных модулей. Существует два типа дескрипторных таблиц: глобальная и локальная. Глобальная таблица описывает сегменты операционной системы и разделяемых структур данных. Локальная таблица может быть определена для каждой конкретной задачи (процесса). Сегменты памяти также выбираются все теми же сегментными регистрами; однако вместо номера параграфа сегментный регистр содержит специальную структуру (селектор), содержащую индекс дескриптора в таблице. Сам же дескриптор загружается из памяти во внутренний программно недоступный регистр (кеш), привязанный к каждому сегментному регистру и автоматически загружаемый в момент его модификации.

Каждый программный модуль, выполняемый в защищенном режиме определяется его сегментом кода, опысываемым регистром CS, который и определяет его привилегии по доступу к данным и другим модулям. Существует 4 уровня привилегий 0,1,2 и 3, называемых кольцами защиты. Кольцо 0 наиболее привилегированное. Оно предназначено для модулей ядра операционной системы. Кольцо 3 - наименее привилегированное, и предназначено для пользовательских программ. Кольца 1 и 2 используются лишь некоторыми операционными системами. Сегменты данных также имеют атрибуты прав доступа, дающие доступ только коду, имеющему такие же или более высокие привилегии. Система колец позволяет гибко распределять доступ к коду и данным.

Процессор 80386, появившийся в 1985 году, в отличие от своих предшественников стал 32-битным. В нем появилась возможность адресовать до 4GiB памяти, что позволило создавать сегменты памяти размером во все адресное пространство. Поэтому новые операционные системы использовали вырожденную модель организации памяти, когда все сегменты начинаются с нулевого адреса. Такая модель получила название плоской (flat memory model), и адрес задается одним целым 32-разрядным числом (хотя по сути он является смещением внутри вырожденного сегмента), а сами сегменты используются исключительно для организации защиты по кольцам привилегий.

Режим виртуального 8086 (virtual 8086 mode, V86)

Является подрежимом защищенного, но использует адресную модель, аналогичную реальному режиму. Применяется для запуска старых программ 8086 в среде современных операционных систем. В отличие от реального режима, где все программы имеют доступ ко всей памяти (кольцо 0), в режиме V86 программа выполняется в кольце 3 (наименее привилегированном), а особые ситуации и прерывания обрабатываются обычными процедурами защищенного режима.

Смешанные режимы

Сегментное MMU современных процессоров, несмотря на кардинальные различия двух его основных режимов, в обоих работает схожим образом. Это позволяет организовывать нестандартные режимы не описанные в официальной документации, но иногда очень полезные при написании программ. Поскольку известно, что внутренние кэши дескрипторов используются во всех режимах, и именно они используются для адресации памяти, при понимании логики их работы возможна загрузка в них нестандартных значений для текущего режима. В частности, можно создать дескрипторную таблицу в реальном режиме, установить флаг PE, загрузить сегментные регистры уже в защищенном режиме, а потом тут же сбросить флаг PE. До следующей перезагрузки сегментного регистра его кеш дескриптора будет содержать значение, соответствующее защищенному режиму, и если он был загружен должным образом, появится возможность адресации до 4GiB памяти. Подобные нестандартные режимы получили общее название Unreal mode и активно используются BIOS "ами персональных компьютеров. Следует отметить, что в процессоре 80286 также была возможность загрузки нестандартных значений дескрипторного кеша при помощи недокументированной команды LOADALL; что было особенно актуально, поскольку процессор 80286 не позволял сбрасывать флаг PE (из защищенного режима выходили с помощью сброса процессора, что сказывалось на производительности).

Страничная организация памяти

В процессорах начиная с 80386 появилось мощное MMU , позволяющее организовать отображение страниц памяти , что было еще одним поводом перехода на плоскую модель с приходом 32-разрядных вычислений. Используя трансляцию страниц операционная система может создать собственное линейное адресное пространство для каждого процесса; также каждая страница имеет атрибуты прав доступа. Только в отличие от сегментов, таких уровней существует только 2: пользователь и супервизор. Но для большинства современных операционных систем этого вполне достаточно. Следует отметить, что страничное MMU доступно только в защищенном режиме.

Расширения

PAE

В более поздних 32-разрядных процессорах (начиная с Pentium Pro) появилось PAE (Physical Address Extension) - расширение адресов физической памяти до 36 бит (возможность адресации 64 Гбайт ОЗУ). Это изменение не затронуло разрядности задач - они остались 32-битными.

MMX

Дополнительный «мультимедийный» (англ. Multi-Media eXtensions ) набор инструкций, выполняющих по несколько характерных для процессов кодирования/декодирования потоковых аудио/видеоданных действий за одну машинную инструкцию. Впервые появился в процессорах Pentium MMX. Обеспечивает только целочисленные вычисления.

SSE

3DNow!

Набор инструкций для потоковой обработки вещественных чисел одинарной точности. Поддерживается процессорами AMD начиная с K6-2. Процессорами Intel не поддерживается.

Инструкции 3DNow! используют регистры MMX в качестве операндов (в один регистр помещается два числа одинарной точности), поэтому, в отличие от SSE, при переключении задач не требуется отдельно сохранять контекст 3DNow!.

64-битный режим

К началу 2000-х годов стало очевидно, что 32-битное адресное пространство архитектуры x86 ограничивает производительность приложений, работающих с большими объёмами данных. 32-разрядное адресное пространство позволяет процессору осуществлять непосредственную адресацию лишь 4 Гб данных, этого может оказаться недостаточным для некоторых приложений, связанных, например, с обработкой видео или обслуживанием баз данных.

Для решения этой проблемы Intel разработала новую архитектуру IA-64 - основу семейства процессоров Itanium . Для обеспечения обратной совместимости со старыми приложениями, использующими 32-разрядный код, в IA-64 был предусмотрен режим эмуляции. Однако на практике данный режим работы оказался чрезвычайно медленным. Компания AMD предложила альтернативное решение проблемы увеличения разрядности процессора. Вместо того, чтобы изобретать совершенно новую систему команд, было предложено ввести 64-разрядное расширение к уже существующей 32-разрядной архитектуре x86. Первоначально новая архитектура называлась x86-64, позже она была переименована в AMD64 . Первоначально новый набор инструкций поддерживался процессорами семейств Opteron , Athlon 64 и Turion 64 компании AMD. Успех процессоров, использующих технологию AMD64, наряду с вялым интересом к архитектуре IA-64, побудили Intel лицензировать набор инструкций AMD64. При этом был добавлен ряд специфических инструкций, не присутствовавших в изначальном наборе AMD64. Новая версия архитектуры получила название EM64T .

В литературе и названиях версий своих продуктов компании Microsoft и Sun используют объединённое именование AMD64/EM64T, когда речь заходит о 64-разрядных версиях их операционных систем Windows и Solaris соответственно. В то же время, поставщики программ для операционных систем GNU/Linux , BSD используют метки «x86-64» или «amd64», Mac OS X использует метку «x86_64», если необходимо подчеркнуть, что данное ПО использует 64-разрядные инструкции.

Виртуализация

Процессоры

Процессоры Intel

16-разрядный процессор i8086, был создан в июне 1978 года. Сначала работал на частотах 4,77 МГц, затем на 8 и 10 МГц. Изготавливался по технологии 3 мкм и имел 29 000 транзисторов.

Чуть позже, в 1979 году, был разработан i8088, который работал на тех же частотах, что и i8086, но использовал 8-разрядную шину данных (внутренняя шина процессора осталась 16-разрядной) для обеспечения большей совместимости с имевшейся в то время в ходу периферией. Благодаря более низкой цене, широко использовался в ранних системах IBM PC вместо 8086.

/80188

Кроме того, в ядро Pentium II был добавлен блок MMX.

Celeron

Celeron - упрощённая модификация процессоров Pentium II / III / IV / Core / Core 2 для построения недорогих компьютеров. Первый Celeron (ядро Covington, частоты 266/300 МГц) представлял собой Pentium II, лишенный кеша второго уровня и пластикового картриджа. Печатная плата также была упрощена. Такая упаковка получила название SEPP (Sinlge Edge Processor Package). В результате эти процессоры демонстрировали удручающе низкую производительность, хотя стоили очень недорого и легко прибавляли до 50 % частоты при разгоне. Все последующие варианты этого процессора имели интегрированный полночастотный кеш второго уровня. Основные отличия процессоров Celeron в объёме этого кэша и частоте шины, а также часто в увеличенной латентности доступа к кэш-памяти по отношению к оригинальному процессору.

Любопытный факт: вторая модификация Celeron (ядро Mendochino, частоты 300..533 МГц) на многих задачах демонстрировала более высокую производительность, чем равночастотный Pentium II. Это объяснялось тем, что маленький (128 Кбайт) кеш Mendochino располагался на одном кристалле с ядром и работал на частоте ядра, в то время как большой (512 Кбайт) кеш Pentium II находился достаточно далеко от ядра и работал на половинной частоте. Больше таких промашек фирма Intel не допускала, и все последующие Celeron гарантированно медленнее полноценных процессоров того же поколения.

Pentium III (i686)

Pentium III, изготовленный изначально по технологическому процессу 0,18 мкм, отличается от P2 главным образом добавлением инструкций SSE . Поздние процессоры этой серии изготавливались по технологическому процессу 0,13 мкм, получили интегрированную в кристалл ядра полночастотную кэш-память (сначала 256 Кбайт, затем - 512 Кбайт) и послужили прообразом процессоров архитектуры Pentium M . Выпускались в конструктивах как SECC/SECC2 (Slot 1), так и FCPGA-370 (PGA-370).

Pentium 4

Принципиально новый процессор с гиперконвейеризацией (hyperpipelining) - с конвейером, состоящим из 20 ступеней. Согласно заявлениям Intel, процессоры, основанные на данной технологии, позволяют добиться увеличения частоты примерно на 40 процентов относительно семейства P6 при одинаковом технологическом процессе (при «правильной» загрузке процессора). На практике же, первые модели работали даже медленнее, чем Pentium III. Позже дополнены поддержкой 64-битного кода.

Core / Core 2

После провала последнего поколения процессоров Pentium 4 на ядре Tejas, было решено обратиться к другой ветви продукции. В основе новых процессоров лежит переработанное ядро Pentium M . Таким образом, ядро P6, использованное ещё в процессорах Pentium Pro , продолжило свою эволюцию, нарастив частоту со 150 МГц до 3,2 ГГц и обзаведясь новой системной шиной, поддержкой многоядерности, мультимедийных инструкций.

Процессоры Core - это решение для ноутбуков, одно- и двухъядерное, исполняющее 32-битный код.

Процессоры Core 2 выпускаются как в настольном, так и мобильном исполнении, включают ряд микроархитектурных улучшений и способны исполнять 64-битный код. Количество ядер варьируется от одного до четырёх.

Core i3/Core i5/Core i7 /Core i9

Дальнейшее развитие идей, заложенных в процессорах Core 2. Сохранив основную конструкцию процессорных ядер, появившийся первым Core i7 получил модульную структуру, позволяющую легко варьировать их количество, встроенный контроллер памяти (трёхканальной DDR3 в высшем сегменте и двухканальной DDR3 в массовом) и новую шину, соединяющую процессор с чипсетом. Микроархитектурные улучшения позволяют Core i7 показывать повышенную производительность в сравнении с Core 2 на равных частотах. Большое внимание было уделено вопросу энергоэффективности нового процессора.

Позже появились более дешевые Core i5/i7 с двухканальным контроллером памяти и четырьмя ядрами, затем - Core i3/i5 с двумя ядрами и встроенным видеоядром. Ожидается и анонс более мощных процессоров с трехканальным контроллером памяти и шестью ядрами - Core i9.

Atom

Недорогие сверхэкономичные одно- и двухядерные процессоры, предназначенные для использования в так называемых сетевых компьютерах - нетбуках и неттопах (компьютерах, в которых вычислительная мощность пожертвована в пользу экономичности, бесшумности и малогабаритности). В основе - модифицированное ядро от первых Pentium, которое адаптировали под новый техпроцесс, добавили возможность исполнения 64-битного кода и мультимедийных инструкций, а также кэш-память второго уровня и поддержку многопоточного исполнения (SMT, аналог Hyper Threading). Для упрощения конструкции было решено отказаться от внеочередного исполнения команд, что не лучшим образом сказалось на производительности.

Xeon

Семейство процессоров, ориентированных на серверы и многопоточные вычисления .

Первый представитель этого семейства базировался на архитектуре Pentium II, представлял собой картдридж с печатной платой, на которой монтировались ядро, кэш-память второго уровня и тег кэша. Монтировался в гнездо Slot 2.

Современные Xeon-ы базируются на архитектуре Core2/Core i7.

Процессоры AMD

Am8086 / Am8088 / Am186 / Am286 / Am386 / Am486

Клоны соответствующих процессоров от Intel. Обычно выпускались с максимальной частотой на ступеньку выше, чем у оригинала. Так, Am386DX выпускался с максимальной частотой 40 МГц, тогда как i386DX - 33 МГц. Вплоть до 486DX2-66 других различий между процессорами не было. Программно отличить эти процессоры было невозможно.

5x86

Клон i486. В то время, как Intel для i486 остановился на частоте 100 МГц, AMD выпускала процессоры с частотами до 133 МГц. Также они отличались увеличенным объёмом кэша первого уровня (16 Кбайт) и множителем (×4).

Аналоги Pentium. Первые процессоры, разработанные фирмой AMD самостоятельно. Несмотря на превосходство в целочисленных операциях над аналогами от Intel (в ядре данного процессора применялся ряд технологий шестого поколения), производительность блока вычислений с плавающей запятой значительно уступала по производительности процессорам Pentium с аналогичной тактовой частотой. Кроме того, наблюдалась плохая совместимость с ПО некоторых производителей. Недостатки K5 были чрезвычайно преувеличены в различных сетевых и других неформальных обсуждениях и на долгое время способствовали (в целом - несправедливому) ухудшению репутации продукции AMD у пользователей.

Выпущен в апреле 1997 года. Принципиально новый процессор AMD, основанный на ядре, приобретённом у NexGen. Данный процессор имел конструктив пятого поколения, однако относился к шестому поколению и позиционировался как конкурент Pentium II . Включал в себя блок MMX и несколько переработанный блок FPU . Однако данные блоки всё равно работали на 15-20 % медленнее, чем у аналогичных по частоте процессоров Intel. Процессор имел 64 Кбайт кэша первого уровня.

В целом сравнимая с Pentum II производительность, совместимость со старыми материнскими платами и более ранний старт (AMD представила К6 на месяц раньше, чем Intel представила P-II) сделали его достаточно популярным, однако проблемы с производством у AMD значительно испортили репутацию данного процессора.

K6-2

Дальнейшее развитие ядра К6. В этих процессорах была добавлена поддержка специализированного набора команд 3DNow! . Реальная производительность, однако, оказалась существенно ниже, чем у аналогичных по частоте Pentium II (это было вызвано тем, что прирост производительности с ростом частоты у P-II был выше благодаря внутреннему кэшу) и конкурировать К6-2 смогли лишь с Celeron. Процессор имел 64 Кбайт кэша первого уровня.

K6-III

Более успешная в технологическом плане, чем K6-2, попытка создания аналога Pentium III . Однако маркетингового успеха не имела. Отличается наличием 64 Кбайт кэша первого уровня и 256 Кбайт кэша второго уровня в ядре, что позволяло ему на равной тактовой тактовой частоте обгонять по производительности Intel Celeron и не очень существенно уступать ранним Pentium III.

Аналог K6-III с технологией энергосбережения PowerNow! . Изначально предназначался для ноутбуков , но устанавливался и в настольные системы.

Аналог К6-III+ с урезанным до 128 Кбайт кэшем второго уровня.

Athlon

Очень успешный процессор, благодаря которому фирма AMD сумела восстановить почти утраченные позиции на рынке микропроцессоров. Кэш первого уровня - 128 Кбайт. Первоначально процессор выпускался в картридже с размещением кэша второго уровня (512 Кбайт) на плате и устанавливался в разъём Slot A , который механически, но не электрически совместим с интеловским Slot 1 . Затем устанавливался в разъём Socket A и имел 256 Кбайт кэша второго уровня в ядре. По быстродействию - примерный аналог Pentium III.

Duron

Конкурент Celeron поколений Pentium III / Pentium 4. Отличается от Athlon объёмом кэша второго уровня (всего 64 Кбайт), зато интегрированным в кристалл и работавшем на частоте ядра. Производительность заметно выше, чем у аналогичных Celeron, и при выполнении многих задач соответствует Pentium III.

Athlon XP

Продолжение развития архитектуры Athlon. По быстродействию - аналог Pentium 4. По сравнению с обычным Athlon, добавлена поддержка инструкций SSE.

Sempron

Более дешёвый (за счёт уменьшенного кэша второго уровня) вариант процессоров Athlon XP и Athlon 64.

Первые модели Sempron являлись перемаркированными чипами Athlon XP на ядре Thoroughbred и Thorton, имевшими 256 Кбайт кэша второго уровня, и работавшими на 166 (333 DDR) шине. Позднее под маркой Sempron выпускались (и выпускаются) урезанные версии Athlon 64/Athlon II, позиционируемые как конкуренты Intel Celeron. Все Sempron имеют урезанный кеш 2-го уровня; младие модели Socket 754 имели заблокированные Cool&quiet и x86-64 ; Socket 939 модели имели заблокированный двухканальный режим работы памяти.

Opteron

Первый процессор, поддерживающий архитектуру x86-64 .

Athlon 64

Первый несерверный процессор, поддерживающий архитектуру x86-64.

Athlon 64 X2

Продолжение архитектуры Athlon 64, имеет 2 вычислительных ядра.

Athlon FX

Имел репутацию «самого быстрого процессора для игрушек». Является, по сути, серверным процессором Opteron 1xx на десктопных сокетах без поддержки registered-memory. Выпускается малыми партиями. Стоит значительно дороже своих «массовых» собратьев.

Phenom

Дальнейшее развитие архитектуры Athlon 64, выпускается в вариантах с двумя (Athlon 64 X2 Kuma), тремя (Phenom X3 Toliman) и четырьмя (Phenom X4 Agena) ядрами.

Phenom II

Первый выпуск - на базе ядра Joshua, доставшегося VIA вместе с командой разработчиков Cyrix .

Второй выпуск - с ядром Samuel, разработанным на базе так и не вышедшего IDT WinChip -3. Отличался отсутствием кэш-памяти второго уровня и, соответственно, крайне низким уровнем производительности.

Третий выпуск - с ядром Samuel-2, улучшенной версией предыдущего ядра, оснащённой кэш-памятью второго уровня. Процессор выпускался по более тонкой технологии и имел сниженное энергопотребление. После выпуска этого ядра бренд «VIA Cyrix III» окончательно уступил место «VIA С3».

Четвёртый выпуск - с ядром Ezra. Был также вариант Ezra-T, адаптированный для работы с шиной, предназначенной для процессоров Intel с ядром Tualatin . Дальнейшее развитие в направлении энергосбережения.

VIA C7

Дальнейшее развитие VIA C3. Ядро Esther (C5J), корпусировка - nanoBGA2 (21×21 мм), впаивается прямо на плату . Добавлены аппаратная поддержка Secure Hash SHA-1 и SHA-256 и шифрования RSA , поддержка NX-bit , поддерживаются MMX , SSE , SSE2 и SSE3 . Дальнейшее снижение энергопотребления при рабочих частотах до 2 ГГц. Собственная системная шина (VIA V4 800 МГц) для связи с чипсетом. Выпускается также в мобильном (VIA C7-M) и десктопном (VIA C7-D) исполнении.

VIA Eden ESP

Интегрированное решение, включающее в себя процессор VIA C3 c ядром Nehemiah C5P и северный мост чипсета со встроенной UMA-графикой. Отличается крайне низким энергопотреблением (до 7 Вт при частоте 1 ГГц). Выпускается с частотами от 300 МГц (VIA Eden ESP 3000) до 1 ГГц (VIA Eden ESP 10000). Совместимые южные мосты - VT8235M, VT8237R+ (с поддержкой SATA), VT8251 (2×1 PCI-E) и VIA 686B.

VIA CoreFusion

Дальнейшее развитие идей VIA Eden ESP. Выпускается в двух вариантах - VIA Mark и VIA Luke, отличающихся интегрированным видеоядром, поддерживаемым типом памяти и рабочими частотами. Для VIA Mark - это S3 Graphics ProSavage4 / SDR PC133 / 533/800 МГц, а для VIA Luke - VIA UniChrome Pro / DDR PC3200 / 533/800/1000 МГц. Совместимые южные мосты: VT8235M, VT8237R+ (с поддержкой SATA), VT8251 (2×1 PCI-E) и VIA 686B.

VIA Nano

Первый x86-64 процессор VIA на ядре Isaiah. Контактно-совместим с VIA C7. Выпускается с частотами от 1 ГГц до 1,8 ГГц. Энергопотребление модели 1,6 ГГц - до 17 Вт при полной загрузке. Среди нововведений - внеочередное исполнение инструкций. Позиционируется как конкурент Intel Atom .

Процессоры NEC

Выпускала серию процессоров, часть из которых (ядро V20/V30) была программно совместима как с , так и с . Переключение между режимами работы осуществлялось при помощи трёх дополнительных инструкций. Аппаратно они выглядели как сильно ускоренная версия или .

Процессоры на основе ядра V33 не имели режима эмуляции 8080, зато поддерживали, при помощи двух дополнительных инструкций, расширенный режим адресации.

Процессоры NexGen

Nx586

В марте 1994 был представлен процессор NexGen Nx586. Он позиционировался как конкурент Pentium, однако изначально не имел встроенного сопроцессора. Использование собственной шины повлекло за собой необходимость применения собственных чипсетов, NxVL (VESA Local Bus) и NxPCI 820C500 (PCI), и ни с чем несовместимого процессорного гнезда. Чипсеты разрабатывались совместно с VLSI и Fujitsu. Nx586 был суперскалярным процессором и мог исполнять по две инструкции за такт. Кэш L1 был раздельным (16 Кбайт под инструкции + 16 Кбайт под данные). Контроллер кэша L2 был интегрирован в процессор, сам же кэш находился на материнской плате. Так же, как и Pentium Pro, Nx586 внутри был RISC-процессором. Отсутствие поддержки инструкций CPUID в ранних модификациях этого процессора приводило к тому, что программно он определялся как быстрый 386 процессор. С этим же было связано то, что Windows 95 отказывался устанавливаться на компьютеры с такими процессорами. Для решения этой проблемы применялась специальная утилита (IDON.COM), представлявшая Nx586 для Windows как 586 class CPU. Nx586 выпускался на мощностях IBM.

Был также разработан сопроцессор Nx587 FPU, который монтировался на заводе поверх кристалла процессора. Такие «сборки» получили маркировку Nx586Pf. При обозначении производительности Nx586 использовался P-rating - c PR75 (70 МГц) до PR120 (111 МГц).

Следующее поколение процессоров NexGen, которое так и не было выпущено, однако послужило основой для AMD K6.

Сегодня уже никто не удивится тому факту, что любимая семейная фотография, хранимая и оберегаемая от коварных неожиданностей в виде, например, воды от незадачливых соседей с верхнего этажа, забывших закрыть кран, может представлять собой какой-то непонятный набор цифр и, вместе с тем, оставаться семейной фотографией. Домашний компьютер стал столь же банальной вещью, что и «ящик» с голубым экраном. Не удивлюсь, если скоро домашний ПК будет приравниваться к бытовой электротехнике. Кстати, «двигатель прогресса», всем знакомая Intel, это нам и пророчит, продвигая идею цифрового дома.
Итак, персональный компьютер занял свою нишу во всех сферах жизни человека. Его появление и становление как неотъемлемого элемента уклада жизни уже стало историей. Когда мы говорим о ПК, то имеем в виду IBM PC-совместимые системы, и вполне справедливо. Мало кто из читателей вообще своими глазами видел не IBM PC-совместимую систему, тем более пользовался такой.

Все компьютеры IBM PC и совместимые с ними основываются на процессорах с архитектурой х86. Честно говоря, иногда мне кажется, что это не только процессорная архитектура, а архитектура всего ПК, вроде идеологии строения системы в целом. Сложно сказать, кто кого тянул за собой, то ли разработчики периферийного оборудования и конечных продуктов подстраивались под архитектуру х86, или, наоборот, они прямо или косвенно формировали пути развития х86 процессоров. История х86 — не ровная асфальтированная дорожка, а совокупность различных по «степени тяжести» и гениальности шагов разработчиков, сильно переплетающихся с экономическими факторами. Знание истории процессоров х86 вовсе не обязательно. Сравнивать процессор сегодняшней реальности с его давними предками попросту бессмысленно. Но чтобы отследить общие тенденции развития и попытаться сделать прогноз, экскурс в историческое прошлое архитектуры х86 необходим. Конечно, серьезный исторический труд может занять не один том, и претендовать на объективный и широкий охват темы бессмысленно. Поэтому вдаваться в перипетии «лайф-тайма» каждого поколения процессоров х86 не будем, а ограничимся важнейшими событиями во всей эпопее х86.

1968 год
Четверо сотрудников компании Fairchild Semiconductor: Боб Нойс, менеджер и изобретатель интегральной микросхемы в 1959 году, Гордон Мур, возглавлявший научные исследования и конструкторские разработки, Энди Гроув, специалист в области химических технологий, и Артур Рок, осуществлявший финансовую поддержку, основали фирму Intel. Это название образовано от Integral Electronic.


1969 год
Бывшим директором маркетингового отдела Fairchild Semiconductor Джерри Сандерсом и несколькими его единомышленниками была основана фирма AMD (Advanced Micro Devices), занявшаяся производством микроэлектронных устройств.

1971 год
При выполнении одного из заказов на микросхемы оперативной памяти сотрудник Intel Тед Хофф предложил создать универсальную «умную» ИМС. Разработку возглавил Федерико Феджин. В итоге родился первый микропроцессор Intel 4004.

1978 год
Весь период до этого — предыстория, хотя и неотрывная от случившихся далее событий. В этом году началась эра х86 — фирмой Intel был создан микропроцессор i8086, который имел частоты 4.77,8 и 10MHz. Смешные частоты? Да, это частоты современных калькуляторов, но с них все начиналось. Чип изготавливался по 3-мкм технологии и имел внутренний 16-битный дизайн и 16-битную шину. То есть появились 16-битная поддержка и, следовательно, 16-разрядные операционные системы и программы.
Чуть позже, в том же году, был разработан i8088, основным отличием которого являлась 8-разрядная внешняя шина данных, обеспечивавшая совместимость с 8-разрядной обвязкой и памятью, использовавшейся ранее. Также доводом в его пользу была совместимость с i8080/8085 и Z-80, относительно низкая цена. Как бы там ни было, но в качестве ЦП для своего первого ПК IBM выбрала i8088. С тех пор процессор Intel станет неотъемлемой частью персонального компьютера, а сам компьютер долго будут именовать IBM PC.

1982 год
Объявлен i80286. «Двести восемьдесят шестой» стал первым процессором х86, проникшим на советское и постсоветское пространство большим количеством. Тактовые частоты 6, 8, 10 и 12 МГц, производился по 1.5-мкм техпроцессу и содержал около 130000 транзисторов. Данный чип имел полную 16-битную поддержку. Впервые с появлением i80286 появилось такое понятие, как «защищенный режим», но тогда еще разработчики программного обеспечения не использовали его возможности в полной мере. Процессор мог адресовать более 1 Мб памяти, переключившись в защищенный режим, но назад вернуться можно было после полного перезапуска, а сегментированная организация доступа к памяти требовала значительных дополнительных усилий при написании программного кода. Из этого вытек тот факт, что i80286 использовался скорее как быстрый i8086.

Производительность чипа по сравнению с 8086 (а особенно по сравнению с i8088) увеличилась в несколько раз и достигала 2.6 миллионов операций в секунду. В те годы производители стали активно использовать открытую архитектуру IBM PC. Тогда же начался период клонирования процессоров архитектуры х86 от Intel сторонними производителями. То есть чип выпускался другими фирмами в виде точной копии. Intel 80286 стал основой новейшего по тем меркам ПК IBM PC/AT и его многочисленных клонов. Основными преимуществами нового процессора оказались повышенная производительность и дополнительные режимы адресации. И главное — совместимость с существующим программным обеспечением. Естественно, процессор был также лицензирован сторонними производителями…
В том же году фирма AMD заключает с Intel лицензионное соглашение и на его основе начинает производство клонов процессоров x86.

1985 год
В этом году произошло, наверное, самое значительное событие в истории процессоров с архитектурой х86 — компанией Intel был выпущен первый процессор i80386. Он стал, можно сказать, революционным: 32-разрядный многозадачный процессор с возможностью одновременного выполнения нескольких программ. В сущности, самые современные процессоры представляют собой ничто иное, как быстрые 386-е. Современное программное обеспечение использует ту же архитектуру 386, просто современные процессоры делают то же самое, только быстрее. Intel 386™ стал большим шагом вперед по сравнению с i8086 и i80286. В сущности, самые современные процессоры представляют собой ничто иное, как быстрые 386-е. Современное программное обеспечение использует ту же архитектуру 386, просто современные процессоры делают то же самое, только быстрее. Intel 386™ стал большим шагом вперед по сравнению с i8086 и i80286. Intel 386™ имел значительно улучшенную систему управления памятью по сравнению с i80286, а встроенные средства многозадачности позволили разработать операционную систему Microsoft Windows и OS/2.

В отличие от i80286 Intel 386™ мог свободно переключаться из защищенного режима в реальный и обратно и имел новый режим — виртуальный 8086. В этом режиме процессор мог выполнять несколько различных программных нитей одновременно, так как каждая из них выполнялась на изолированной «виртуальной» 86-й машине. В процессоре были введены дополнительные режимы адресации памяти с переменной длиной сегмента, что значительно упростило создание приложений. Процессор производился по 1-мкм технологическому процессу. Впервые процессор Intel был представлен несколькими моделями, которые образовали семейство 386-х. Здесь и начинается знаменитая маркетинговая игра компании Intel, позднее вылившаяся в разделение одного разработанного ядра на два торговых варианта, в некотором круге пользователей и специалистов называемое: «Pentium для богатых, Celeron для бедных». Хотя что здесь плохого — и волки сыты, и овцы целы.
Были выпущены следующие модели:

386DX с частотой 16, 20, 25 и 33 МГц имел 4 ГБ адресуемой памяти;
386SX с частотой 16, 20, 25 и 33 МГц в отличие от 386DX имел 16, а не 32-битную шину данных, и соответственно 16 Мб адресуемой памяти (подобным образом в свое время процессор i8088 был «создан» из i8086 за счет уменьшения разрядности внешней шины для обеспечения совместимости с имеющимися внешними устройствами);
386SL в октябре 1990 года — мобильная версия процессора Intel 386SX с частотой 20 и 25MHz.

1989 год
Корпорация Intel выпускает свой очередной процессор — Intel 486™ DX с частотой 25, 33 и 50 МГц. Intel 486 ™ DX стал первым процессором в семействе 486 и имел значительный (более чем в 2 раза при той же частоте) прирост производительности по сравнению с семейством 386. У него появился кэш первого уровня объемом 8 Кб, интегрированный в чип, а максимальный размер L2-кэша увеличился до 512 Kb. В i486DX был интегрирован блок вычислений с плавающей точкой (FPU — Floating Point Unit), который раньше выполнялся в виде внешнего математического сопроцессора, устанавливаемого на системную плату. Кроме того, это первый процессор, ядро которого содержало пятиступенчатый конвейер. Таким образом, команда, прошедшая первую ступень конвейера, продолжая обрабатываться на второй, высвобождала первую для следующей инструкции. По своей сути, процессор Intel 486™DX представлял собой быстрый Intel 386DX™, объединенный с математическим сопроцессором и 8 кБ кэш-памяти на одном кристалле. Такая интеграция позволила увеличить скорость коммуникаций между блоками до очень высоких значений.
Фирмой Intel была развернута рекламная кампания с лозунгом «Intel: The Computer Inside». Пройдет время, и она превратится в знаменитую рекламную кампанию «Intel Inside».

1991 год
Был создан собственный процессор фирмы AMD — Am386™. Этот был частично построен под действием лицензии, частично по собственной разработке и работал на максимальной частоте 40 МГц, что превышало аналогичный показатель процессора Intel.
Немного ранее произошли первые судебные разбирательства между Intel и AMD по поводу намерения AMD продавать свой клон Intel 386™. Крепко укрепившая свои позиции Intel перестала нуждаться в раздаче лицензий сторонним производителям и делиться пирогом собственного приготовления ни с кем не собиралась. В результате AMD впервые вступила на рынок х86 процессоров как конкурент. За ней последовали и другие компании. Так началось продолжающееся до сих пор великое противостояние двух гигантов (остальные конкуренты сошли с дистанции), которое дало миру много хорошего. Негласным лозунгом конкурентов Intel стала фраза: «то же, что у Intel, но за меньшую цену».
В то же время Intel выпускает i486SX, в котором для удешевления продукта отсутствует блок FPU (интегрированный сопроцессор), что, конечно же, негативно сказалось на производительности. Других отличий от i486DX не было.

1992 год
С выходом процессора Intel 486DX2 впервые был использован коэффициент умножения частоты шины. До этого момента внутренняя частота ядра была равна частоте внешней шины данных (FSB), но появилась проблема ее наращивания, так как локальные шины периферии (в то время VESA VL-bus), да и сами периферийные устройства проявляли нестабильность работы при частоте, превышающей 33 МГц. Теперь при частоте шины FSB 33 МГц тактовая частота ядра составляла 66 МГц за счет умножения на 2. Такой прием надолго вошел в историю и используется поныне, только множитель в современных CPU может превышать 20. Intel 486™ DX2 надолго стал популярным процессором и продавался в огромных количествах, впрочем, как и его клоны от конкурентов (AMD, Cyrix и другие), которые теперь уже имели некоторые отличия от «интеловского оригинала».

1993 год
В свет вышел первый суперскалярный процессор х86, то есть способный выполнять более одной команды за такт — Pentium (кодовое название P5). Это достигалось наличием двух независимых параллельно работающих конвейера. Первые процессоры имели частоту 60 и 66 МГц и получили 64-разрядную шину данных. Впервые кэш-память первого уровня была разделена на две части: отдельно для инструкций и данных. Но одним из самых значительных нововведений был полностью обновленный блок вычислений с плавающей точкой (FPU). Фактически до этого на платформе x86 еще не было настолько мощного FPU, и лишь через многие годы после выхода Intel Pentium конкуренты смогли достичь его уровня производительности. Также впервые в процессор был включен блок предсказания ветвлений, с тех пор активно развивающийся инженерами.

Суть заключается в следующем: в любой программе присутствует множество условных переходов, когда в зависимости от условия выполнение программы должно пойти по тому или иному пути. В конвейер можно поместить только одну из нескольких ветвей перехода, и если он оказывается заполненным кодом не той ветви, то его приходится очищать и заполнять заново несколько тактов (в зависимости от количества ступеней конвейера). Для решения этой проблемы и используются механизмы предсказания ветвлений. Процессор содержал 3,1 млн. транзисторов и изготавливался по 0.8-мкм процессу. Все эти изменения позволили поднять производительность нового процессора на недосягаемую высоту. В действительности же оптимизация кода «под процессор» первое время была редкой и требовала применения специальных компиляторов. И еще долго новейшему процессору приходилось выполнять программы, предназначенные для процессоров семейств 486 и 386.
В том же году появилось второе поколение Pentium на ядре P54, в котором были устранены все недостатки Р5. При изготовлении использовались новые технологические процессы 0.6, а позднее и 0.35-мкм. До 1996 года новым процессором были охвачены тактовые частоты от 75 до 200 МГц.
Первый Pentium сыграл важную роль в переходе на новые уровни производительности персонального компьютера, дал толчок и определил ориентиры развития на будущее. Но при большом рывке в производительности он не привнес никаких кардинальных изменений в архитектуру х86.

1994 год
Появившиеся Intel 486™DX4, AMD Am486DX4 и Cyrix 4х86 продолжили линейку 486-х и использование умножения частоты шины данных. Процессоры имели утроение частоты. Процессоры DX4 от Intel работали на 75 и 100 МГц, а Am486DX4 от AMD достиг 120 МГц. В процессорах стала широко применяться система управления энергопотребления. Других принципиальных отличий от 486DX2 не обнаружилось.

1995 год
Анонсирован Pentium Pro (ядро P6). Новая процессорная шина, три независимых конвейера, оптимизация под 32-битовый код, от 256 Kb до 1 Mb L2-кэша, интегрированного в процессор, причем работающего на частоте ядра, усовершенствованный механизм предсказания ветвлений — по количеству нововведений новый процессор чуть ли не бил рекорды, ранее установленные Intel Pentium.

Процессор позиционировался на использование в серверах и имел очень высокую цену. Самое примечательное, что вычислительное ядро Pentium Pro фактически не было ядром архитектуры х86. Машинные коды x86, поступающие в CPU, внутри декодировались в RISC-подобный микрокод, и уже именно его исполняло ядро процессора. Набор CISC-команд, как набор команд процессора х86, подразумевал переменную длину команд, что определяло сложность нахождения каждой отдельной команды в потоке и, следовательно, создавало трудности в разработке программ. CISC-команды являются сложными и комплексными. RISC-команды упрощенные, короткие, требующие значительно меньшее время на выполнение команды с фиксированной длиной. Использование RISC-команд позволяет значительно увеличить распараллеливание процессорных вычислений, то есть использовать больше конвейеров и, следовательно, уменьшать время исполнения команд. Ядро P6 легло в основу трех следующих процессоров Intel — Pentium II, Celeron, Pentium III.
В этом году состоялось также знаковое событие — компания AMD купила фирму NexGen, имеющую к тому времени передовые архитектурные разработки. Слияние двух инженерных команд позже принесет миру процессоры х86 с отличной от Intel микроархитектурой и даст толчок новому витку жестокой конкуренции.
На Микропроцессорном Форуме впервые был представлен новый процессор MediaGX от Cyrix, и его отличительной особенностью являются интегрированные контроллер памяти, графический ускоритель, интерфейс шины PCI и производительность, соизмеримая с производительностью Pentium. Это была первая попытка такой плотной интеграции устройств.

1996 год
Появился новый процессор AMD К5 с суперскалярным RISC-ядром. Однако RISC-ядро с его набором команд (ROP-команд) скрыты от программного обеспечения и конечного пользователя, а команды х86 преобразуются в RISC-команды. Инженеры AMD использовали уникальное решение — команды х86 частично преобразуются еще во время помещения в кэш-память процессора. В идеале процессор K5 может выполнять до четырех команд х86 за один такт, но на практике в среднем за такт обрабатываются только 2 инструкции.

Кроме того, традиционные для RISC-процессоров изменения порядка вычислений, переименование регистров и другие «приемы» позволяют увеличить производительность. Процессор К5 явился детищем объединенной команды инженеров AMD и NexGen. Максимальная тактовая частота так и не превысила 116 МГц, но производительность К5 была выше, чем у процессоров Pentium с такой же тактовой частотой. Поэтому в маркетинговых целях впервые в практике маркировки CPU был использован рейтинг производительности (Performance Rating), который явно противопоставлялся тактовой частоте равных по производительности Pentium. Но процессор все-таки не мог достойно потягаться с ним, так как Pentium уже тогда достиг частоты 166 МГц.
В том же году увидел свет Intel Pentium MMX. Главное нововведение процессора P55C — дополнительные команды MXX к набору команд, который почти не претерпевал изменений со времен создания процессоров третьего поколения. Технология MMX — это использование команд, ориентированных на работу с мультимедиаданными. Специальный набор команд SIMD (Single Instruction — Multiple Data — одна команда — множественные данные) повышает производительность при выполнении векторных, циклических команд и обработке больших массивов данных — при применении графических фильтров и различных спецэффектов.

По сути это 57 новых инструкций, призванных ускорить обработку видео и звука. Остальными изменениями ядра стали уже типичные увеличение объема кэш-памяти, улучшение схем работы кэш-памяти и других блоков. Производился процессор по 0.35-мкм процессу, 4.5 млн. транзисторов. Максимальная частота 233 МГц.
Начался выпуск суперскалярных процессоров Cyrix 6х86 на ядре М1, который на самом деле являлся процессором 5-го поколения, отличительной особенностью которого были «глубокие» конвейеры и использование классических х86 команд без каких-либо дополнительных наборов инструкций.
В конце года, пока в Intel велась разработка PentiumII, снова заявила о себе AMD, выпустив процессор шестого поколения К6. В основу AMD-K6 легло ядро, разработанное инженерами компании NexGen для процессора Nx686 и существенно доработанное в AMD. Как и К5, ядро К6 оперировало не х86 инструкциями, а RISC-подобным микрокодом. Процессор поддерживал команды MMX и 100-мегагерцевую системную шину и имел увеличенный до 64 Кб объем кэш-памяти первого уровня. Вскоре стало ясно, что PentiumII окажется К6 не по зубам.

с 1997 года до наших дней…
К 1997 году уже сложились направления инженерных разработок архитектуры х86 ведущих производителей. Следующий этап в развитии процессоров x86 можно охарактеризовать как противостояние архитектур, которое продолжается и поныне. На дистанцию по крупному счету вышли: захватившая 90 % рынка Intel, упорно с ней бьющаяся AMD, многократно проигрывающая в производственных мощностях, и Cyrix, которая впоследствии будет куплена компанией VIA, а затем и вовсе, не выдержав конкуренции, канет в неизвестность. Остальные производители не смогут достойно конкурировать и будут вынуждены искать другие ниши на рынке. Намечен переход от CISC к RISC-подобным микрокомандам в меньшей степени у Intel, в большей у AMD. Причем на вход и выход процессоров х86 по-прежнему поступают CISC-команды. А почему, собственно, стали вводить в х86 процессоры с родной ей CISC-архитектурой внутреннюю RISC-архитектуру, позволяющую углублять распараллеливание выполнения команд? Да просто из CISC-архитектуры х86 еще во времена четвертого поколения было выжато все, и способов повышать производительность на уровне базисных наборов команд не осталось.

Принципиально новых изменений и прорывов в развитии архитектуры с тех пор не было, хотя современные процессоры быстрее, например, «386-го» в сотни раз. Инженеры оттачивают и совершенствуют уже существующие микроархитектуры ядер, а новые представляют собой лишь переработанные старые. Все усовершенствования и попытки повысить производительность сводятся к оптимизации существующих решений, введению различных исправлений и «костылей» для хромающих FPU, системы организации конвейеров и кэшей. Избитыми, но все же действенными средствами является постоянное увеличение объема кэш-памяти и частоты шины FSB. Современные процессоры имеют до 2 Мб кэш-памяти, работающей на частоте ядра, а частоты системных шин достигают 800 МГц, и то с использованием множителя, так как реальная генерируемая частота всего 200 МГц. За последние 7 лет в процессоры х86 были введены следующие «новшества-подпорки»: кэш-память окончательно переехала на кристалл процессора и переведена на частоту ядра, введены и постоянно совершенствуются блоки предсказания ветвлений как компенсация увеличению длины (количества стадий) конвейера, механизм динамического изменения порядка исполнения инструкций, уменьшающий количество холостых тактов, механизм предвыборки данных для более рационального использования кэш-памяти. Множатся дополнительные наборы команд: SSE, SSE2, SSE3, 3DNow!, 3DNow Professional. Если MMX еще можно было с натяжкой назвать дополнительным набором инструкций х86, то все последующие наборы вряд ли, так как к командам х86 добавлять уже нечего. Смысл же появления этих наборов заключается в попытке как можно меньше использовать блок вычислений с плавающей точкой (FPU) в таком виде, в каком он есть, так как, обладая высокой производительностью, он отличается малой приспособленностью для высокоточных вычислений, капризностью внутренней архитектуры и ее непредсказуемостью, что усложняет жизнь программистам. То есть фактически ввели специализированный расчетный блок, ориентированный не на вычисления вообще, а на реальные, часто встречающиеся задачи, выполнять которые предлагается в обход классического FPU.

Как-то это больше похоже на борьбу с последствиями интеграции математического сопроцессора в CPU в далеком 1989 году. Во всяком случае, если задуматься и подсчитать, то большую часть времени процессор тратит «на себя» — на всевозможные преобразования, предсказания и многое другое, а не на выполнение программного кода.
Глядя назад, видно, что не все было гладко. Введение коэффициента умножения и полученная в итоге асинхронность, а также увеличение количества стадий конвейера — все это палки о двух концах. С одной стороны, это позволило увеличить тактовые частоты процессора почти до 4 ГГц (и это еще не предел), с другой — получили узкое место в виде шины FSB и проблему с условными переходами. Но всему свое время, и тогда, видимо, это были разумные решения, так как всегда присутствует очень злой экономический фактор.
Нельзя не отметить, что по-настоящему блистательных успехов за последние годы добились в области полупроводникового производства. Уже освоен 90-нанометровый технологический процесс изготовления процессоров х86, который позволяет достигать близких к СВЧ-диапазону тактовых частот, а количество транзисторов в кристалле достигает 170 млн (Pentium 4 EE).
Мы привыкли считать, что процессор — это главное устройство в ПК и что именно он задает тон глобальной компьютеризации. А ведь победоносное шествие архитектуры х86, длящееся более четверти века, началось не конкретно с процессора, а с конечного пользовательского устройства в целом — IBM PC. Тогда еще в компании IBM не догадывались, какое блистательное будущее ждет этот ПК и, не придав проекту никакого значения, сделали его открытым для всех. Именно открытости концепции, успеху программного обеспечения и MS DOS обязан успех IBM PC. А процессор в нем мог стоять любой архитектуры, но так уж получилось, что IBM выбрала i8088 и i8086, а потом уже все закрутилось, завертелось… Но из процессора х86 в итоге не получилось эдакого универсального вычислителя на все случаи жизни или «умного» устройства, вездесущего и все способного сделать, как об этом мечтали раньше. Да и «закон» Гордона Мура (каждые 2 года количество транзисторов в кристалле процессора будет увеличиваться вдвое) стал законом только для Intel, которая поставила его на острие своей маркетинговой политики, а отказываться от данного слова ей неудобно, видимо.

Сегодня можно уже твердо сказать, что архитектура х86 зашла в тупик. Вклад ее в популяризацию компьютера как устройства огромен, и с этим никто не спорит. Однако нельзя быть актуальной вечно. Молодой и сильный некогда жеребец стал старой клячей, которую продолжают запрягать в телегу. Аппетиты пользователей ненасытны, и вскоре архитектура х86 не сможет их удовлетворить. Конечно, переход связан с титаническими усилиями в связи с тем, что многомиллионный мировой парк ПК в своем почти абсолютном большинстве использует процессоры архитектуры х86, и что самое важное, использует программное обеспечение для х86 кода. Одним днем все не перевернуть, нужны годы. Но разработки 64-битных процессоров и программ набирают обороты с завидной скоростью, Intel представила Itanium2, а AMD уже почти год выпускает свои Athlon 64, которые имеют совсем не х86 архитектуру, хотя и полностью совместимы с ней и еще могут выполнять все старые программы. Таким образом, можно сказать, что AMD Athlon 64 положил начало уходу от архитектуры х86 и тем самым открыл переходный период.
Как видите, заявления о том, что процессор — самый быстро развивающийся компонент ПК, далеко не беспочвенны. Представьте себе, какими процессорами будут оснащаться компьютеры наших детей. Подумать страшно!

В Одноклассники

Множество пользователей при установке на свой персональный компьютер операционной системы Windows искренне недоумевают, какую из версий платформы выбрать - x64 или x86? И вообще, что на самом деле означают указанные сокращения?

Программы с x64 или x86: разница есть

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

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

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

Пионером в сфере разработки 64-битных вычислительных чипов считается компания AMD. Поэтому разработчики программного обеспечения обобщают подобные процессоры под общим именем "Amd64". Важно понять, что такое обозначение не значит, что игры, в характеристиках которых указан пункт amd64, не будут запускаться на компьютерах под управлением 64-битных процессоров авторства компании Intel.

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

Как узнать x64 или x86 ОС установлена на ПК?

Часто пользователи пытаются определить, какая разрядность или, другими словами, тип операционной системы установлен на их компьютере в настоящий момент. Чтобы решить поставленную задачу, необходимо навести курсор мыши на значок «Компьютер» на рабочем столе (стандартный для системы Windows) и кликнуть по нему один раз правой кнопкой.

Далее в открывшемся контекстном меню следует выбрать «Свойства». После проделанных действий перед вами должно открыться окно с полным списком характеристик вашего компьютера, а также установленной операционной системы. Таким образом, вы сможете увидеть один из пары вариантов: 32-разрядная операционная система или 64-разрядная.

Вот таким нехитрым образом мы разобрались, как проверить, x86 или x64 программы следует устанавливать. Далее необходимо сказать, что особенность 64-битных программ заключена в их невероятной производительности, но с другой стороны - они слишком требовательны по отношению к памяти. Вот оно, подтверждение правила о том, что все хорошо в меру: установка 64-битной операционной системы на слабый ноутбук с парой гигабайт ОЗУ и 32-битным классическим процессором - это ошибка, однако, с другой стороны, 32-разрядные программы и системы не в силах видеть свыше 3 Гб ОЗУ. В случае, если в вашем распоряжении имеется персональный компьютер, оперативная память у которого равна 4 и более гигабайтам, можете смело устанавливать 64-разрядную Windows-платформу, соответственно, программы также должны быть 64-битные. Программы такого типа используют ресурсы, имеющиеся на компьютере, по максимуму, По сути, актуальный вопрос о том, что лучше - windows x86 или x64, сформулирован не вполне корректно, так как обе платформы хороши, а выбор необходимой определяется конфигурацией отдельно взятого компьютера.



Windows x64: подводные камни

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

Мы уже отмечали, что Windows x64 потребляет больше ресурсов, однако следует сказать, что все программы для 64-разрядной среды также начинают «желать большего». И наконец, если вы решите установить неподписанный потребует ряда дополнительных действий.

На другой чаше весов лежит доступ ко всем ресурсам установленной на компьютере ОЗУ. При наличии Windows x64 даже некоторые 32-битные программы могут воспользоваться доступом к 4 ГБ ОЗУ, например игры "Сталкер" и "Готика". Для сравнения: в среде 32-битной операционной системы игры и программы получают доступ к 2 Гб памяти, и в крайне редких случаях - к 3 Гб.

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

Если с дилеммой «x86 или x64: что ставить» вы окончательно определились в пользу последней, однако не хотите расставаться со старыми добрыми программами, вам следует знать, что 99 процентов 32-битных приложений без снижения производительности и любых проблем работают в 64-битной среде. Что касается производительности в играх, то она прежде всего зависит от показателей вашего видеодрайвера.


P.S: все, о чем не успели упомянуть выше

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


Недостижимая граница

Интересно, что у 64-разрядной архитектуры также есть свои пределы касательно воспринимаемой оперативной памяти: x64 не может увидеть более 192 Гб ОЗУ. Еще один любопытный момент: натуральный объем 64-разрядных приложений, как
правило, на 20-40% больше, чем у 32-разрядных аналогов, однако не стоит сразу же бежать за новым жестким диском, ведь данное правило не распространяется на такие развлекательные материалы, как видеоролики (кинофильмы) или музыку.



Число сомнения - 4

Отдельно следует обсудить судьбу ПК с 4 гигабайтами ОЗУ. Вот в чем штука: с одной стороны, 32-разрядные ОС видят только 3 Гб памяти, и выбор в пользу 64х кажется очевидным, однако не забывайте, что Windows x64 просто для того, чтобы заставить себя работать, потребует вдвое больше ОЗУ, чем ее 32-разрядная «сестра», и победа в таком случае кажется весьма неоднозначной. В таких условиях выбор должен определяться не математическим подсчетом, а вашими потребностями и теми задачами, которые вы намерены ставить перед компьютером. И не ждите внешних эффектов, ведь с точки зрения дизайна 32 и 64-разрядные операционные системы идентичны.

Новости от Adobe

Если вы художник или дизайнер, огорчим вас или порадуем недавним заявлением компании Adobe о том, что все современные приложения Adobe CS5 станут исключительно 64-битными. Другими словами, Dreamweaver CS5, Photoshop CS5 и тому подобные знаменитые приложения смогут запуститься исключительно на 64-битной системе. 32-битная платформа их просто не распознает.



Все оказалось просто

Вот мы и разобрались, как узнать, x64 или x86 система у вас установлена, и какой вариант выбрать. Как видите, все оказалось не слишком сложно и отняло всего несколько минут вашего времени. Важно понять, что в данном случае отличия исключительно внутренние, и определить с максимальной точностью, чего именно вы хотите от персонального компьютера, что он для вас - рабочий инструмент или друг, который дарит вам развлечения. Если ПК будет настроен наилучшим образом, его способности преобразятся.

Для многих пользователей операционной системы Windows не секрет, что существует две ее версии по типу разрядности. Это 32 битная и 64. Знать разрядность своей операционной системы нужно каждому, ведь при поиске и скачивании драйверов, программ и игр она учитывается.

Но с обозначениями разрядности системы, а также драйверов и программ существует некоторая путаница. Есть три обозначения двух разрядностей — x32, x64 и x86. По этой причине часто возникает вопрос 32 разрядная версия это x64 или x86?

Ответ на данный вопрос вы найдете в этой статье.

Второе обозначение 32 разрядной версии ПО

Чтобы впредь исключить путаницу обозначений разрядности программного обеспечения, к которому относится операционная система, драйвера, программы и игры, запомните, что существует две основные версии разрядности ПО — это 32 бита и 64 бита. 64 битная версия может обозначаться только как x64, а вот 32 битная может обозначаться как x32, так и x86.

Вот пример обозначения 64 битной версии драйвера для ноутбука на его официальном сайте:

А вот возможные варианты обозначения 32 битной версии:

Обозначение разрядности на сайте с драйверами

Обозначение разрядности в описании программы

Из всего вышеописанного можно сделать вывод, что 32 разрядная версия ПО это x86.

x64 обозначается 64 битная версия какого — либо программного обеспечения. Учтите это при подборе версии драйверов и любых других программ.

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