LINUX.ORG.RU

Процессоры Intel Core 2 содержат опасные ошибки


0

0

Theo de Raadt призвал в ближайшее время воздержаться от покупок процессоров Intel Core 2, так как данные процессоры содержат ошибки, которые могут позволить любому пользователю системы вызвать переполнение буфера.

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

Для полного списка официальных ошибок, см. Intel Core 2 65nm LGA 775 specification update.

>>> Theo de Raadt: "Intel Core 2"

Ответ на: комментарий от robot12

>В общем RISC архитектуру, ввиду малочисленности команд, вероятность ошибки намного ниже

А мне казалось, CISC убил RISC... Где сейчас их используют-то хоть?

anonymous
()
Ответ на: комментарий от anonymous

> VIA - разве что в автомобильный компьютер, да и то ничего кроме проигрывания DVD я бы ему не доверил :D

Дома оно потянет всё кроме навороченных игр. Которые (игры) таки да никому не нужны.

> МЦСТ - это такой воображаемый процессор, который невоображаемо крут. Но ошибки там искать сложно, разве что это будут воображаемые ошибки :D

R500 вполне себе настоящий и ставится в компы "Эльбрус90-микро". Там даже линукс работает, кстати.

pentagon
()

А мне вот еррата понравилась:
AI92. Invalid Instructions May Lead to Unexpected Behavior
Просто и со вкусом. И явно что пользовательский код
может грохнуть систему через это.

anonymous
()

А я всегда говорил, что AMD лучше.

Sikon ★★★
()
Ответ на: комментарий от anonymous

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

dn2010 ★★★★★
()
Ответ на: комментарий от dikiy

>Особенно злобно и ужасно выглядит ошибка с REP MOVS

Неужели находятся маргиналы, которые используют это тормозилово? Уже на i486 строковые команды официально были объявлены устаревшими (и тогда же стали выполняться медленнее, чем mov/dec/jnz)

KRoN73 ★★★★★
()
Ответ на: комментарий от anonymous

> А мне казалось, CISC убил RISC... Где сейчас их используют-то хоть?

Embedded сплошь и рядом на risc.

mv ★★★★★
()

А ели серьезно, этот Тео напоминает мне Каспера. У этого тоже каждый день мировые катастрофы, вызванные вирусом. И только его антихакер спасёт мир.

wa
()
Ответ на: комментарий от DenDangerous

> Все на CELL!

Да, да, на СеЛЛ ! Начни с себя.

wa
()
Ответ на: комментарий от KRoN73

>> Неужели находятся маргиналы, которые используют это тормозилово? Уже на i486 строковые команды официально были объявлены устаревшими (и тогда же стали выполняться медленнее, чем mov/dec/jnz)

Дык часть их них только на i486 и появилась. и сразу тормозные? а я их юзал(((

ASTAROT
()
Ответ на: комментарий от madcore

>> Хорошо что я не выкинул свой верный Z80 :) > В нём тоже были документированные баги.

зато там не было MMU что бы на основе этих багов иски можно было вчинять :-)

dmiceman ★★★★★
()
Ответ на: комментарий от KRoN73

> Неужели находятся маргиналы, которые используют это тормозилово? Уже на i486 строковые команды официально были объявлены устаревшими (и тогда же стали выполняться медленнее, чем mov/dec/jnz)

Уже на Pentium Pro и выше появился механизм оптимизации блоковых передач rep movs, называющийся Fast Strings.

ROB_CR_BKUPTMPDR6 register implements the Fast String Enable bit. When copying large blocks of data from one area of memory to another on the P6 processors, setting this bit can improve the speed of the copy.

sysenter
()
Ответ на: комментарий от ASTAROT

>Дык часть их них только на i486 и появилась. и сразу тормозные? а я их юзал(((

Новых строковых что-то не припомню. Да и вообще на i486 появилось только две новых команды для прикладных задач.

movsd кстати на нём работал быстрее аналогов. А вот уже на первопне было модно копировать через FPU

madcore ★★★★★
()
Ответ на: комментарий от anonymous

> А мне казалось, CISC убил RISC... Где сейчас их используют-то хоть?

ARM: http://ru.wikipedia.org/wiki/ARM . Телефоны и КПК. Различные промышленные компьютеры. У нас АЦП с RISC-процессором стоит.

Китайский Godson RISC?

acheron ★★★★
()
Ответ на: комментарий от anonymous

>У AMD к сожалению так низя :(

С дуба рухнул?

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от acheron

> Китайский Godson RISC?

это mips, а вот считать ли mips risc'ом -- это уже второй вопрос

vadiml ★★★★★
()

km, опять вы с грязным пиаром недоОС.

ошибки фиксятся новыми версиями биоса(с новым микрокодом).

У Theo уже есть _реально рабочий_ эксплоит хотя бы под одну из
приведённых в ссылках ошибку хотя бы под одну ОС?

PS: а когда в openbsd smp дотянется до уровня хотя бы до 5й ветки freebsd?

anonymous
()
Ответ на: комментарий от RazorX

> ДВК-2М наше всё ))))

Я вполне понять могу Вашу ненависть к врагу но... Процессоры - очень сложные устройства. В процессоре К1801ВМ2 (который стоял в ДВК) последнюю ошибку (деление на минус ноль) выловили через год после начала массового производства. А ведь там было всего около 70 команд.

Интел-АМД выпускают процессоры с сотней ошибок и ничего. Типа так и надо. А REP MOVS это действительно - охренеть. Впору отзывать процессоры. До того был офигенный баг в первом пне из за которого отзывали процессоры (плавающее умножение).

Beria1937
()
Ответ на: комментарий от RazorX

>да ему (процу) даже это доверить страшно, тем более что он под мультимедию и не затачивался

угу и ускорителя интернета в нем тоже нет, поэтому отстой

Reset ★★★★★
()

> For instance, AI90 is exploitable on some operating systems (but not OpenBSD running default binaries).

> AI90. Page Access Bit May be Set Prior to Signaling a Code Segment Limit Fault. If code segment limit is set close to the end of a code page, then due to this erratum the memory page Access bit (A bit) may be set for the subsequent page prior to general protection fault on code segment limit.

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

Впрочем, баги AI65, AI79, AI43, AI39 достаточно серьезные.

Relan ★★★★★
()
Ответ на: комментарий от madcore

>>Хорошо что я не выкинул свой верный Z80 :)

>В нём тоже были документированные баги.

Если вы про недокументированные команды, то побольше бы таких тараканчиков. Вуаля и новая инструкция процессора. А вообще-то это не баги а фичи, хотя потенциально на разных версиях процессоров могут работать по-разному. А вообще это не баг, потому что нефига подсовывать процессору коды команд, которых нет в спецификации.

И вообще, классный был Spectrum. Базовая архитектура (32k/48k) вообще не менялась. Все устройства одинаковые, любые dirty hacks работают везде одинаково. Операционных систем с тучей драйверов, многоздачностью и т.д. не надо. Сказка...

Небольшие отличия в реализациях конечно были, но это совсем мелочи (типа то что должно быть подключен к порту 254 на самом деле подключено к любому четному порту и т.д.).

P.S. Я тоже еще не выкинул.

anonymous
()
Ответ на: комментарий от anonymous

>cisc убили risc

Не смешите мои тапочки, то что они воцарились на десктопе всего лиш последовательность смешных недоразумений и совпадений, вместо x86 это могли бы быть хоть альфа и мипсы(интел когда увидала плачевное состояние i686 и вправду залицензировала мипс у уже увядающей sgi). Альфы же актуально могли захватить рынок если бы не дубовый маркетинг.

Как вы видите щяс же нужды в CISC как в нем таковом нету, кроме как запускать венду, хотя она была эдак в 60х когда о сегоднящних безбожных богомипсах(/...) могли только мечтать. Уже как 20 лет никто не строит cisc в той драдиционной манере как было сделано с m68k и интелями. m68k как мы все знаем полностью и успешно отбросила копыта везде где можно,а x86 уже как 20 успешно к этому идет, и видимо придет когда вся венда будет имплементирована в железе(и со всеми глюками).

В RISC процах же ошибок не бывает=D В них бывают особенности имплементации/архитектуры=D. Что конечно много приятнее мертвозапаяной в кристале прямой и влоб невозможности делать того что процессор делать должен в случае CISC/x86.

anonymous
()
Ответ на: комментарий от anonymous

>>В нём тоже были документированные баги. >Если вы про недокументированные команды,

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

>Все устройства одинаковые,

Точнее, одинаковое их отсутствие. Это и отсутствие развития его и погубило за бугром, а у нас всевозможные расширения появились слишком поздно, разномастно и приживались тяжело.

>Небольшие отличия в реализациях конечно были, но это совсем мелочи

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

madcore ★★★★★
()
Ответ на: комментарий от anonymous

> Если вы про недокументированные команды, то побольше бы таких тараканчиков. Вуаля и новая инструкция процессора. А вообще-то это не баги а фичи, хотя потенциально на разных версиях процессоров могут работать по-разному. А вообще это не баг, потому что нефига подсовывать процессору коды команд, которых нет в спецификации.

Недокументированые команды были, но их было мало, остальные пустышки вообще не работали, а срабатывали как NOP, но исполнялись по тактам дольше.

> И вообще, классный был Spectrum. Базовая архитектура (32k/48k) вообще не менялась. Все устройства одинаковые, любые dirty hacks работают везде одинаково. Операционных систем с тучей драйверов, многоздачностью и т.д. не надо. Сказка...

Вообще спектрум к концу 2000-го года изменился сильно... Делались всякие General Sound... памяти до 4-х метров, винты подключали... Дошло до того, что со спектрума реально было лазить в FIDO и интернете. Конечно рендеринг страниц только в текстовом виде. Да и то... это банальный был телнет на юникс станцию на которой запускали links.

>Небольшие отличия в реализациях конечно были, но это совсем мелочи (типа то что должно быть подключен к порту 254 на самом деле подключено к любому четному порту и т.д.).

Ерунда, это говорит только о том, что было не полное декодирование адресного пространства, фактически устройство вешалось на младший бит. Я пытался декодировать как можно точнее, не 16 бит адресного пространства задействовал конечно, но как минимум 8.

Barzzzer
()
Ответ на: комментарий от anonymous

> И вообще, классный был Spectrum. Базовая архитектура (32k/48k) вообще не менялась.

Да ну. После ZX-Spectrum был Spectrum QL. Который принципиально другой. Если ты о нём ничего не знал, этго не значит, что архитекрута не менялась.

> Все устройства одинаковые, любые dirty hacks работают везде одинаково.

Не всегда.

> Небольшие отличия в реализациях конечно были, но это совсем мелочи (типа то что должно быть подключен к порту 254 на самом деле подключено к любому четному порту и т.д.

Во-первых, неполная дешифрация порта характерна только для отечественных клонов. Их назвать спектрумами не поворачивается язык. Во-вторых, нифига себе мелочи.

wa
()

Мне плохо понятно, как компиляторы живут с ошибками процов?

Неужели компилятор учитывает ошибки при компиляции кода или компиляторы просто не развиваются по сравнению с процами?

Возникает вопрос: если ошибки процов просто так ен всплывают, то зачем нужны cisc процы, если компиляторы не используют их возможностей?

yantux
()

Мне плохо понятно, как компиляторы живут с ошибками процов?

Неужели компилятор учитывает ошибки при компиляции кода или компиляторы просто не развиваются по сравнению с процами?

Возникает вопрос: если ошибки процов просто так ен всплывают, то зачем нужны cisc процы, если компиляторы не используют их возможностей?

yantux
()
Ответ на: комментарий от Barzzzer

> Вообще спектрум к концу 2000-го года изменился сильно...

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

> памяти до 4-х метров

Это в розовых мечтах. Реально - не более мегабайта.

> Дошло до того, что со спектрума реально было лазить в FIDO и интернете.

Какая чепуха. На спектруме TCP-IP стека-то не было никогда. Один человек портировал TCP-IP на Z80, но этого мало. FIDO там тоже никогда не было и быть не могло. Начиная с того, модемы для спектрума не совместимы с обычнаыми, заканчивая тем, что фидошного софта никто не портировал и портировать не мог. ФИДО была очень консервативной сетью - чситый ДОС, палёный голый дед, более никто ничего не признавал.

wa
()

Linus Torvalds: So Intel and AMD actually tend to fix the bugs a lot more aggressively than you'd see for some single-vendor thing, simply because they don't control the stack the way other architectures generally do.

I'd expect other CPU's to generally have more errata than most commodity x86 chips.

Линус Торвалдс : я думаю, что отличные от x86 процессоры, имеют ещё больше проблем, и эти проблемы даже не фиксятся.

wa
()
Ответ на: комментарий от yantux

> Мне плохо понятно, как компиляторы живут с ошибками процов?

Нормально живут. Важность проблемы раздувать не надо только.

wa
()
Ответ на: комментарий от Relan

> все современные ОС используют флатовые сегменты,

ну-ну, попробуй использовать флатовый сегмент при поддержке NUMA (2 или более ядра и/или память и проц с возможностью горячей замены)

MaratIK
()
Ответ на: комментарий от pentagon

>R500 вполне себе настоящий и ставится в компы "Эльбрус90-микро". Там даже линукс работает, кстати.

Линукс работает у меня на и на 386DX работал, что теперь? Переходим на 386-е :D

anonymous
()
Ответ на: комментарий от wa

>Это в розовых мечтах. Реально - не более мегабайта.

32 в последних моделях с 20МГц-овым процессором.

>Один человек портировал TCP-IP на Z80, но этого мало. FIDO там тоже никогда не было и быть не могло.

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

jackill ★★★★★
()
Ответ на: комментарий от wa

>Мне плохо понятно, как компиляторы живут с ошибками процов?

Примерно так же как жертва насильника и насильник, вообщем спокойно

>Неужели компилятор учитывает ошибки при компиляции кода или компиляторы просто не развиваются по сравнению с процами?

Если бы не учитывали бы, то и их небыло бы.

>Возникает вопрос: если ошибки процов просто так ен всплывают, то зачем нужны cisc процы, если компиляторы не используют их возможностей?

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

anonymous
()
Ответ на: комментарий от jackill

Джэкил, вы несете бред.

Зайди в фидо и спроси были ли люди со спекрумами, а далее обломись, может и наклепал отдельный джедай в одиночку половину софта современного компа для деда, но что-бы половина??!!

Вообще да и сам спектрум был мучением и люди убегали с него на x86 и прочее с радостью.

anonymous
()

епт, не парьтесь вы с процами, ставьте се OpenBSD и будет вам рай...

anonymous
()
Ответ на: комментарий от jackill

> 32 в последних моделях с 20МГц-овым процессором.

Каким-каким ? Прессы начитался ? Ьреда мечталей ? До 20 Mhz Z80A не разгонялся никак. Хоть под жидким азотом. 32 мега ? Это невозмлжно электрически. Столько модулей не напаять, а адресовать их это вообще невозможно. Даже 16-и разрядная IBM PC не могла более 2-х мегов. Акстись.

> Половина советского фидо было на спектрумах и жило прекрасно.

Бред полный. Ты просто пишешь о том, в чём не разбираешься. Пробовал тем, что назвается у спекторумов модемом, звонить на что-то отличное от спектрумосвких модемов ? Нет. Было несколько виртуальных, в смысле существовавших только в прессе, ББС. Может быть, когда-то несколько их них и работали. Но это очень убого. Никаким ФИДО там не пахло.

> И для голого деда был порт.

Голого деда не было нормального порта даже на Windows и Linux. Спектрум такую программу даже не потянул бы.

wa
()
Ответ на: комментарий от wa

>К концу 2000-го года он был мёртв. Отдельные зомбирующие и ностальгирующие личностиесть и сейчас, это не жизнь. Пик массовых смертей Спектрумов в России пришёлся на середину 90-х.

спектрум то мертв, а вот z80 живее всех живых, сцуко, до сих пор юзается в миниатс, в полиграфии я его тоже видел (в фотопроявителе), да и много где еще, видать надежен как танк, обкатан, и кобылу на ходу не меняют.

anonizmus
()
Ответ на: комментарий от madcore

> фидоподобные сетки ZXNet

Только не фидоподобные, а BBS-подобные. Это существенная разница. Существовали они более на бумаге изданий того времени, чем в реальности. Очень маленький период жизни у них был. Очень.

wa
()
Ответ на: комментарий от wa

>Каким-каким ? Прессы начитался ? Ьреда мечталей ? До 20 Mhz Z80A не разгонялся никак. Хоть под жидким азотом.

Z80H?

>32 мега ? Это невозмлжно электрически. Столько модулей не напаять, а адресовать их это вообще невозможно.

А тебя не смущает, что z80 сам вообще не может более 64кб адресовать, однако 128К и более официально существуют? Адресовать это не проблема. Распаять тоже - были клоны, в которые сувались пц-шные SIMMы.

>Даже 16-и разрядная IBM PC не могла более 2-х мегов.

8086/88 _самостоятельно_ может адресовать 1МБ, 286 - 16МБ. Откуда такие цифры? Но к 8086 прикручивались объёмы бОльшие мегабайта, только доступ к ней был сделан черезжопно(EMS, если память не изменят).

madcore ★★★★★
()

По поводу Spectrum и 'сказки'. Имелось в виду, что существует базовая архитектура, которая достаточно проста в освоении и использовании (Именно Speccy, который 48k). То, что в рамках этой архитектуры сложно расширить функциональность компьютера вопрос уже другой.

Да, были звуковые чипы (напоминающие MIDI), была поддержка дисков, опять же за счет дополнительных контроллеров/плат расширения и т.д. (особенно 'самопаяных' в России/СССР). Но самое интересное в том, что нет стандартной сложной ОС, есть только ПЗУ с поддержкой бызовых функций. Поэтому вся работа с устройствами почти полнотью ложится на прикладную программу (исключение, наверное, только диски и принтер). По большому счету более одной проги в Speccy запихнуть сложно так что полноценная ОС не нужна (хотя часто используют какое-то подобие библиотек).

В 90-x появилось дохрена и больше клонов вроде Scorpio и т.д., но вопрос "сильно ли они расширили возможности?" По-моему не очень. Тот же Scorpio - 2 лишние строчки внизу экрана (или не у него?), дисковод (прикручивается и к обычному Spectrum'у), аудио чип (пищалка в принципе есть), PC-ная клавиатура (нахрена она нужна на Speccy). Единственный большой плюс - дохрена ОЗУ. Да еще одна несовместимость бывает - процессор в 7 Mhz, но обычно легко лечится переключателем назад в 3,5.

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

Я это к тому: сейчас развелось бешенное количество железа, операционных систем, виртуальных машин (o_O) и т.д. Я понимаю, что у всех них есть свои преимущества/недостатки, что для каждой задачи подойдет какое-то свое решение. Не пора ли "подкрутить в нужных местах гайки" (в частности обновить и немножечко ужесточить POSIX)? Например, ввести optional стандарт на GUI, мультимедиа и т.д. Спектрум, например, продержался лет 30 почти без изменения архитектуры (народу более-менее хватало). Ведь по большому счету: разнообразие на системном уровне (ОС, железо) простым смертным не особенно нужно. Важно разнообразие в прикладном ПО. Если в системное ПО и железо будет стабильным, отлаженным и надежным, можно будет заняться именно разработкой прикладного ПО, которое будет работать везде (ну или хотя бы компилироваться везде) (вот она 'сказка'!). А то жуть - одна команда пишет какой-нибудь libavcodec, другая команда пытается его запихнуть в ffmpeg, третья пытается добавить поддержку ffmpeg в венде, четвертая в xine и т.д. (да еще и у каждого свои ошибки).

И еще одно введение стандартов не обязательно ограничит способы реализации. Например, в *nix есть понятие файла и каталога и интерфейс работы с файлами и каталогами (чтение/запись/создание и т.д.), но ведь это не означает, что может быть реализована только одна ФС.

anonymous
()
Ответ на: комментарий от madcore

> Z80H

Z80H - 8 мегагерц штатная частота. Его гнали до 16, но компьютеров на таком процессоре я не припомню, если только чьи-то эксперименты, не имеющие смыcла.

> А тебя не смущает, что z80 сам вообще не может более 64кб адресовать, однако 128К и более официально существуют?

Ну, я имею представление, как адресуется оставшаяся часть. Сегментами по 16 килобайт, которые физичеки были модулями. Но более 4-х мегов в такую адресацию не укладывается, извините.

> были клоны, в которые сувались пц-шные SIMMы.

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

> 8086/88 _самостоятельно_ может адресовать 1МБ, 286 - 16МБ. Откуда такие цифры?

Из жизни. Покажи мне реально работающую 286 с 4-мя мегами. Не было таких. Не навесить на 286-ю более 2-ух мегов, не тянула.

wa
()
Ответ на: комментарий от ASTAROT

>Дык часть их них только на i486 и появилась

Строковые? На 486?? Пример в студию! Даже, ЕМНИП, на i386 в них ничего нового не добавлялось.

>и сразу тормозные?

Уже на i486 строковые операции эмулировались, а не обрабатывались непосредственно ядром, поэтому были очень медленные. ЕМНИП, например, REP MOVS был от 4 тактов на каждый цикл (и выше - в зависимости ещё от каких-то параметров)

KRoN73 ★★★★★
()
Ответ на: комментарий от anonizmus

>спектрум то мертв, а вот z80 живее всех живых, сцуко, до сих пор юзается в миниатс, в полиграфии я его тоже видел (в фотопроявителе), да и много где еще, видать надежен как танк, обкатан, и кобылу на ходу не меняют.

Года два как последний завод по производству Z80 закрыли. А Z80 я лично видел в каком-то модеме.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.