The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Раскрыты две новые уязвимости механизма спекулятивного выпол..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Отдельный RSS теперь доступен для каждого обсуждения в форуме и каждого минипортала.
. "Раскрыты две новые уязвимости механизма спекулятивного выпол..." +6 +/
Сообщение от Orduemail (ok), 22-Май-18, 18:24 
> Идеи всегда можно отнести к разным категориям.
> Например, идея "ходить на работу на руках" как и "эмуляция фон-Неймановской архитектуры
> современными процессорами" - относится к категории "бред"

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

Архитектура фон-Неймана предполагает, что процессор можно условно промоделировать, выделив в нём внутре ALU и CU, а снаружи i/o-девайсы и память, которая предоставляет единое однородное адресное пространство для всех основных задач. То есть линейную память, в которой хранятся код, данные, и работа с памятью никак не зависит от того, что в этой памяти лежит. Можно изменять код обычными инструкциями для работы с памятью, можно выполнять передачу управления на данные -- процессору без разницы. Работа с памятью всегда единообразна, потому что в системе команд есть идея "адреса", инструкции работы с памятью (вне зависимости от того, работают ли эти инструкции с кодом или данными) позволяют использовать эти адреса для того, чтобы ссылаться на _любую_ ячейку памяти.

Это, конечно, упрощённое описание. Если ты почитаешь фон Неймана, ты увидишь, что он сам выделял ещё один тип памяти, помимо линейной оперативки -- внешний накопитель, который использует свою собственную схему адресации ячеек памяти (или правильнее сказать "единиц хранения"?). Но это если, по-хорошему, мелочи.

Эти мелочи со временем начали плодиться. Например, в x86 есть несколько файлов регистров -- регистры общего назначения, регистры FPU/XMM и регистры SSE (вроде я ничего не забыл, да?). Ещё в процессор напихали много ALU (а ещё FPU, MMX и SSE), конвееры, и кучу других улучшений, которые отчасти скрыли под эмуляцией архитектуры фон Неймана, отчасти просто сделали вид, что эти улучшизмы принципиально ничего не меняют. И, наверное, так оно и было.

Но дальше больше. Со временем однородность адресного пространства совершеннейшим образом пошла лесом: появились кеши, и процессору теперь помимо регистров и собственно ОЗУ доступно ещё несколько типов памяти, которые различаются по характеристикам. Но система команд процессора осталась заточена на линейную память, все эти кеши вроде и есть, но нет инструкций позволяющих оперировать значениями в этих кешах. В процессоре может быть несколько инструкций для управления кешом, а может и не быть. Но в любом случае, это управление сводится к "включить/отключить кеширование", "сбросить кеш", "префетч". Вот файл регистров, который ведь тоже, если по-хорошему, выполняет функции кеша, доступен для непосредственной адресации, и программа может обратиться к поизвольному регистру, кодируя адреса этих регистров в машинном коде. А с L1 программа не может таким образом работать, потому как L1 находится под слоем эмуляции фон-неймана, всё сделано таким образом, чтобы программа не замечала бы разницы.

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

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Раскрыты две новые уязвимости механизма спекулятивного выпол..., opennews, 22-Май-18, 12:14  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру