архитектура i686 что это
Десять имён для одной архитектуры
На пятничном семинаре учебного проекта лаборатории МФТИ-Интел один из студентов задал мне примерно такой вопрос: а почему 64-битный вариант архитектуры процессоров Intel называется x64, а 32-битный — x86? Я начал объяснять, что не всё так просто. Захотелось нарисовать более полную картину. Ведь на самом деле это не x64, и даже не x86.
386-ые, Пентиумы и Коры
На самом деле названий для этого феномена, около сорока лет присутствующего на сцене процессорных технологий, было придумано несколько. Даже больше, чем хотелось бы. Они появились из разных источников и используются в разных контекстах, разными компаниями и разными сообществами. Конечно же, это вносит некоторую неразбериху.
Я постарался здесь собрать все известные мне названия. Не хочу пытаться доказать, что одна группа имён лучше другой, — меньше использовать их не станут.
8086 и семейство
В 1978 году был выпущен 16-битный процессор Intel, который имел «имя» 8086. За ним были 8088, 80186, 80286, 80386 (плюс вариации), 80486 (плюс вариации). Легко заметить, что (почти) все эти числовые имена оканчиваются на две цифры 86, что дало название всей серии x86. Оно укрепилось, его продолжили использовать и после того, как процессорам перестали давать цифровые имена, а появились Intel Pentium, Celeron, Xeon, Core, Atom и т.д. Совместимые продукты других вендоров, таких как IBM, AMD, Cyrix, VIA и т.д., также описываются как x86.
По моим наблюдениям, x86 — самый популярный вариант для имени этой архитектуры в Интернете, статьях и прочей литературе, особенно, когда не стоит задачи точно специфицировать разрядность архитектуры или речь явным образом идёт о 32-битном варианте.
Используются также вариации этого названия для 32-битных вариантов, позволяющие более точно указать минимальный набор поддерживаемых инструкций: i386, i486, i586, i686, — например, для различения вариантов сборок бинарных пакетов дистрибутивов Linux.
Пришествие 64 бит
Своими стараниями Intel расширила машинное слово в описанной ранее серии процессоров с 16 до 32 бит. Достигнуть этой архитектуре 64 бит помогла компания AMD, в 2003 году представившая процессор, поддерживающий новые инструкции и регистры и реализующий AMD64.
Для того, чтобы явно указать повышенную битность процессора/кода/пакета, имя x86 стало получать новый суффикс «64». Вот только через какой знак его приписывать не договорились, и иногда видишь x86_64, а порой x86-64. Например, вывод команды uname в Linux использует подчерк. Наконец, у пакетов можно увидеть и суффикс amd64 строчными буквами.
Intel же обозначала это расширение архитектуры сперва IA-32e, затем EM64T. В настоящее время можно встретить оба варианта в различных именах пакетов, документации и прочем. Тем не менее, есть и третье введённое Intel название…
Как это называет Intel
В официальной документации 32-битная архитектура имеет имя IA-32; её 64-битный вариант получил довольно странное с моей точки зрения имя Intel 64. Почему странное — оно создаёт потенциал для путаницы, как мы увидим ближе к концу статьи.
Компании-поставщики софта
Всё вместе
Ложные имена
Как известно, за свою сорокалетнюю историю Intel выпускала (и выпускает сейчас) не только процессоры IA-32. Были и до сих пор присутствуют продукты других архитектур. Они тоже имеют свои имена, иногда несколько созвучные. При этом происходит путаница, от которой хотелось бы предостеречь.
Intel IA-64. Является полным синонимом термина «Intel Itanium». Используется для обозначения 64-битной архитектуры, несовместимой ни с IA-32, ни с 64-битным её вариантом ни по набору команд, ни по принципам работы. Да, существуют аппаратные и программные прослойки для запуска IA-32 приложений на Итаниуме, но это — тема для отдельного и интересного рассказа. Кстати, и для Itanium есть ещё одно обозначение — IPF, используемое изредка как суффикс.
К сожалению, линейки таких семейств процессоров Intel, как i432, i860, i960 или не дожили до наших дней, или же имеют крайне узкую нишу применения. А то глядишь — пришлось бы для каждого из них запоминать ещё по десятку имён.
Что такое i686 в Linux/Unix?
Идентификатор i686 в широком смысле относится к ядру, оптимизированному для работы процессора Intel с использованием микроархитектуры P6, обычно ассоциируемой с процессорами Pentium Pro и Pentium M класса с 1995 года и позже. Дистрибутив Linux для i686 поддерживает большинство реализаций, которые ему предшествовали – например, компьютер i686 обычно отлично работает с дистрибутивами на основе i386.
Стандарт i686 работает под управлением 32-разрядной операционной системы. Конкретные дистрибутивные образы для машин i686 оказываются все более редкими после 2004 года.
Микроархитектура Intel
Процессоры Intel потребительского уровня следовали соглашению о присвоении имен * 86, начиная с чипа 8086, выпущенного в 1978 году. Более поздние итерации включали 16-разрядный i286 в 1983 году, 32-разрядный i386 в 1985 году, 32-разрядный i486 в 1989 году. i586 (оригинальный чип Pentium) в 1993 году, i686 (Pentium Pro) в 1995 году и i786 (Pentium 4 или NetBurst) в 2000 году.
С 2003 года процессоры серии x64, поддерживающие 64-битные операционные системы, стали доминировать на потребительском рынке. Имена классов микроархитектуры не эволюционировали после x64; Нынешняя схема именования Intel направлена на создание процессора.
Другие Архитектуры
Помимо i686, вы, вероятно, столкнетесь с несколькими другими индикаторами, специфичными для процессора:
Когда я должен использовать приложения i686?
Ваш менеджер пакетов определит правильный пакет для вашего ядра. Как правило, вы всегда сможете установить дистрибутивные образы с ядрами, предварительно скомпилированными для архитектуры i386 – вы получите 32-разрядную производительность, но для процессоров Intel она, как правило, всегда Работа. Если вы используете современный компьютер с 64-разрядным процессором Intel, выбор образа x86_64 имеет больше смысла.
Вы найдете прирост стоимости в комплектации i686 (если он доступен!), Если у вас более старый компьютер с процессором Pentium Pro через процессор Pentium 3 или процессор Pentium M. Ядро i686 предлагает некоторые дополнительные функции, встроенные Intel в процессор, которые недоступны базовому ядру i386.
Если вы не можете найти соответствующий дистрибутивный образ, предварительно скомпилированный для стандарта i686, вы всегда можете скомпилировать собственное ядро с нуля.
Архитектура i686 что это
P6 — суперскалярная суперконвейерная архитектура, разработанная компанией Intel и лежащая в основе микропроцессоров Pentium Pro, Pentium II, Pentium III, Celeron и Xeon. В отличие от x86-совместимых процессоров предыдущих поколений с CISC-ядром, процессоры архитектуры P6 имеют RISC-ядро, исполняющее сложные инструкции x86 не напрямую, а предварительно декодируя их в простые внутренние микрооперации.
Первым процессором архитектуры P6 стал анонсированный 1 ноября 1995 года процессор Pentium Pro, нацеленный на рынок рабочих станций и серверов. Процессоры Pentium Pro выпускались параллельно с процессорами архитектуры P5 (Pentium и Pentium MMX), предназначенными для персональных компьютеров. 7 мая 1997 года компанией Intel был анонсирован процессор Pentium II, пришедший на смену процессорам архитектуры P5. [1]
В 2000 году на смену архитектуре P6 на рынке настольных и серверных процессоров пришла архитектура NetBurst, однако архитектура P6 получила своё развитие в мобильных процессорах Pentium M и Core. В 2006 году на смену процессорам архитектуры NetBurst пришли процессоры семейства Core 2 Duo, архитектура которых также представляет собой развитие архитектуры P6. [2] [3]
Содержание
Функциональные устройства
Процессоры архитектуры P6 состоят из четырёх основных подсистем:
К устройствам этой подсистемы относятся:
Процессоры на ядре Tualatin дополнительно содержат блок предвыборки инструкций (Prefetcher), который осуществляет предварительную выборку инструкций на основании таблицы переходов.
Ядро исполнения с изменением последовательности
Исполнение с изменением последовательности, при котором меняется очерёдность исполнения инструкций, так, чтобы это не приводило к изменению результата, позволяет ускорить работу за счёт более оптимального распределения запросов к вспомогательным блокам и минимизации их простоев. К устройствам организации исполнения с изменением последовательности относятся:
К исполнительным устройствам ядра относятся:
Объём L2 процессоров архитектуры P6
Объём (Кб) | Процессоры |
---|---|
0 | Celeron Covington |
128 | Celeron (Mendocino, Coppermine-128), Pentium III (Coppermine для приставки Xbox [4] ) |
256 | Pentium Pro, Pentium III (Coppermine, Tualatin-256), Xeon (Cascades) |
512 | Pentium Pro, Pentium II, Pentium III (Katmai, Tualatin), Xeon (Drake, Tanner) |
1024 | Pentium Pro, Xeon (Drake, Tanner) |
2048 | Xeon (Drake, Tanner, Cascades 2MB) |
Подсистема памяти осуществляет взаимодействие с оперативной памятью. К этой подсистеме относятся:
Исполнение инструкции
Конвейер состоит из 12 стадий [5] :
Исполнение инструкции начинается с её выборки и декодирования. Для этого из кэш-памяти инструкций первого уровня по адресу из буфера предсказания переходов выбирается 64 байта (две строки). Из них 16 байт, начиная с адреса из блока вычисления адреса следующей инструкции, выравниваются и передаются в декодер инструкций, преобразующий инструкции x86 в микрооперации. Если инструкции соответствует одна микрооперация, декодирование проводит один из декодеров простых инструкций. Если инструкции соответствует две, три или четыре микрооперации, декодирование проводит декодер сложных инструкций. Если же инструкции соответствует большее число микроопераций, то они формируются планировщиком последовательностей микроопераций.
После декодирования инструкций производится переименование регистров, а микрооперации и данные помещаются в буфер — станцию резервирования, откуда в соответствии с оптимальным порядком исполнения и при условии определённости необходимых для их исполнения операндов направляются на исполнительные блоки (максимум 5 инструкций за такт). Статус исполнения микроопераций и его результаты хранятся в буфере переупорядочивания микроопераций, а так как результаты исполнения одних микроопераций могут служить операндами других, они также помещаются и в станцию резервирования.
Особенности архитектуры
Первые процессоры архитектуры P6 в момент выхода значительно отличались от существующих процессоров. Процессор Pentium Pro отличало применение технологии динамического исполнения (изменения порядка исполнения инструкций), а также архитектура двойной независимой шины (англ. Dual Independent Bus ), благодаря чему были сняты многие ограничения на пропускную способность памяти, характерные для предшественников и конкурентов. Тактовая частота первого процессора архитектуры P6 составляла 150 МГц, а последние представители этой архитектуры имели тактовую частоту 1,4 ГГц. Процессоры архитектуры P6 имели 36-разрядную шину адреса, что позволило им адресовать до 64 ГБ памяти (при этом линейное адресное пространство процесса ограничено 4 ГБ, см. PAE).
Суперскалярный механизм исполнения инструкций с изменением их последовательности
Процессоры архитектуры P6 имеют конвейер глубиной 12 стадий. Это позволяет достигать более высоких тактовых частот по сравнению с процессорами, имеющими более короткий конвейер при одинаковой технологии производства. Так, например, максимальная тактовая частота процессоров AMD K6 на ядре (глубина конвейера — 6 стадий, 180-нм технология) составляет 550 МГц, а процессоры Pentium III на ядре Coppermine способны работать на частоте, превышающей 1000 МГц.
Двойная независимая шина
Достоинства
Недостатки
Процессоры архитектуры P6
Процессор | Ядро | Технология производства | Годы выпуска |
---|---|---|---|
Pentium Pro | P6 | КМОП/БиКМОП, 500—350 нм | 1995—1998 |
Pentium II | Klamath, Deschutes | КМОП, 350—250 нм | 1997—1999 |
Pentium III | Katmai, Coppermine, Tualatin-256 | КМОП, 250—130 нм | 1999—2002 |
Pentium III-S | Tualatin | КМОП, 130 нм | 2001—2002 |
Celeron | Covington, Mendocino, Coppermine-128, Tualatin-256 | КМОП, 250—130 нм | 1998—2002 |
Pentium II Xeon | Drake | КМОП, 250 нм | 1998—1999 |
Pentium III Xeon | Tanner, Cascades, Cascades 2MB | КМОП, 250—180 нм | 1999—2001 |
Pentium Pro (P6) | Pentium II (Deschutes) | Pentium III (Coppermine) | Pentium IIIS (Tualatin) |
---|---|---|---|
Pentium III Mobile | Celeron (Mendocino) | Celeron (Mendocino) | Celeron (Coppermine-128) |
Схема развития архитектур Intel
Примечания
Ссылки
Характеристики процессоров архитектуры P6
Обсуждение архитектуры i686 и x86-64
К примеру не было проблем с русским в консоли.
А это вообще не относится к разрядности!
На счет того быстрее не быстрее я вообще не заметил разницы на своем компе AMD Athlon 64 X2 Dual Core 4200+,
за исключением того что чуть больше оперативы стало кушать, но не существенно!
Дополнено, не заметно при обычной работе, а при архивировании больших объемов данных и при кодировании видео, выполняется несколько быстрее чем на i686
Например если на кодирование фильма уходит 4 часа на i686, то на x86_64 минут на 10-20 быстрее )))
x86-64 нужен только на серверах и работающим с ресурсоёмкими программами. Для десктопа это выпендрёж, i686 для дома хватит с головой.
malezha
У меня сложилось такое впечатление,что arch для i686 работает шустрее 64 разрядного.Да и с i686 меньше геморроя как показалось.К примеру не было проблем с русским в консоли.Самое главное она быстрее грузится, причём намного чем 64-х. А вы,что думаете по этому поводу?
Архитектура i686 что это
Сообщения: 4432
Благодарности: 993
Имя вендора (Intel, AMD, etc) значения не имеет. Архитектура (набор команд процессору) унифицирована.
——-
— Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)