Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
| |
Косвенно и мучительно: 01.02.18 01:45 Число просмотров: 2640
Автор: dl <Dmitry Leonov>
|
> Итак, спекулятивное исполнение произошло, но неудачно из-за > MMU, результаты отброшены, конвейер сбросился. Результат > какбэ в кеше, но напрямую мы его вытащить не можем... и > как-то его вытаскивают... КАК? Непонятно.
Косвенно и мучительно:
"Наше приложение начинает читать адреса от 0 и выше в собственном адресном пространстве (имеет полное право), замеряя время, требующееся на чтение каждого адреса, и читая их не по порядку, чтобы не натренировать тот же спекулятивный доступ
На адресе 98 время доступа вдруг оказывается в несколько раз ниже, чем на других адресах
Таким образом мы понимаем, что кто-то уже недавно читал что-то по этому адресу, в результате чего он попал в кэш. Кто бы это мог быть? Ах, да, это наш дорогой процессор. По адресу 15000, соответственно, лежит значение 98."
|
<site updates>
|
Жизнь после Meltdown и Spectre 07.01.18 18:55
Publisher: dl <Dmitry Leonov>
|
Жизнь после Meltdown и Spectre Новогодние подарки: часть первая, вторая, третья https://geektimes.ru/post/297029/, https://geektimes.ru/post/297031/, https://geektimes.ru/post/297065/
Пыль, поднятая вокруг случившегося на неделю раньше запланированного обнародования информации об уязвимостях Meltdown (CVE-2017-5754) и Spectre (CVE-2017-5753 и CVE-2017-5715), чуть улеглась, так что можно делать некоторые оценки сложившейся ситуации.
Счастливчикам, выпавшим на прошедшей неделе из новостного потока, имеет смысл ознакомиться с весьма доходчивым описанием Олега Артамонова [ https://geektimes.ru/post/297029/ ]. Если совсем коротко и на пальцах, принципиальный источник всех проблем кроется в сочетании механизма спекулятивного выполнения команд и предсказания ветвлений с использованием процессорного кэша.
В случае Meltdown ситуация усугубляется игнорированием процессором во время этого самого спекулятивного выполнения команд прав доступа к памяти (из тех соображений, что операция все равно откатится), в результате...
Полный текст
|
|
Помогите разобраться, pls! 29.01.18 01:32
Автор: HandleX <Александр М.> Статус: The Elderman
|
Subj, почитал "доходчивое описание Олега Артамонова", и до меня так и не дошло, к сож.
Итак, спекулятивное исполнение произошло, но неудачно из-за MMU, результаты отброшены, конвейер сбросился. Результат какбэ в кеше, но напрямую мы его вытащить не можем... и как-то его вытаскивают... КАК? Непонятно.
|
| |
Косвенно и мучительно: 01.02.18 01:45
Автор: dl <Dmitry Leonov>
|
> Итак, спекулятивное исполнение произошло, но неудачно из-за > MMU, результаты отброшены, конвейер сбросился. Результат > какбэ в кеше, но напрямую мы его вытащить не можем... и > как-то его вытаскивают... КАК? Непонятно.
Косвенно и мучительно:
"Наше приложение начинает читать адреса от 0 и выше в собственном адресном пространстве (имеет полное право), замеряя время, требующееся на чтение каждого адреса, и читая их не по порядку, чтобы не натренировать тот же спекулятивный доступ
На адресе 98 время доступа вдруг оказывается в несколько раз ниже, чем на других адресах
Таким образом мы понимаем, что кто-то уже недавно читал что-то по этому адресу, в результате чего он попал в кэш. Кто бы это мог быть? Ах, да, это наш дорогой процессор. По адресу 15000, соответственно, лежит значение 98."
|
| | |
О как... Спасибо! 05.02.18 12:18
Автор: HandleX <Александр М.> Статус: The Elderman
|
|
|
|