The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

Исходное сообщение
"Раскрыты две новые уязвимости механизма спекулятивного выпол..."
Отправлено Ordu, 22-Май-18 18:24 
> Идеи всегда можно отнести к разным категориям.
> Например, идея "ходить на работу на руках" как и "эмуляция фон-Неймановской архитектуры
> современными процессорами" - относится к категории "бред"

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

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

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

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

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

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

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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