The OpenNET Project / Index page

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



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Опубликована третья порция эксплоитов АНБ, opennews (ok), 14-Апр-17, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


50. "Опубликована третья порция эксплоитов АНБ"  –1 +/
Сообщение от neon1ks (ok), 15-Апр-17, 10:23 
Зря минусуют. Прикольная комедия. Посмеялся.

Правда у меня возник вопрос, что это за Java такая особенная у нас?

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

80. "Опубликована третья порция эксплоитов АНБ"  –1 +/
Сообщение от ACCA (ok), 15-Апр-17, 21:01 
Ну, если собрать OpenJDK писаный на C++ под Эльбрус, то Java получится очень даже особенная. Начиная с принципиально иной оптимизации компилятора C++ и заканчивая тем, что на Эльбрусе на железном уровне невозможен выход за границы массива/буфера/стека.
  • 1891ВМ8 - EPIC
  • Intel/AMD - multi-core
  • ARM/Atom - SMT RISC

    Китайцы знают только про последние два.

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

    87. "Опубликована третья порция эксплоитов АНБ"  +/
    Сообщение от Аноним (-), 15-Апр-17, 22:44 
    > на Эльбрусе на железном уровне невозможен выход за границы массива/буфера/стека

    Чаво-чаво? Откуда железный уровень вообще может знать об этих самых границах?

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

    89. "Опубликована третья порция эксплоитов АНБ"  +/
    Сообщение от RM (?), 16-Апр-17, 01:07 
    У тех которые VLIW (Эльбрус original, 2С, 4С) - знает. "В архитектуре Эльбрус для разграничения типов данных вместе с каждым словом в памяти хранится его тег. По тегу можно определить является ли данное слово ссылкой или принадлежит к какому-либо специальному типу данных."
    Ответить | Правка | Наверх | Cообщить модератору

    102. "Опубликована третья порция эксплоитов АНБ"  +/
    Сообщение от Аноним (-), 16-Апр-17, 17:16 
    Уже прочитал, ага. Начал понимать, почему они в своём недокомпиляторе полноценную поддержку C++11 не осилили сделать.
    Ответить | Правка | Наверх | Cообщить модератору

    116. "Опубликована третья порция эксплоитов АНБ"  +/
    Сообщение от Аноним (-), 17-Апр-17, 11:18 
    Они хотели сделать процессор для ЯВУ. Буржуи тоже хотели, а некоторые и сейчас мечтают об аппаратном Java-процессоре. Все упёрлись рогами в экономическую неэффективность (раз) и изменчивость мира (два).
    Ответить | Правка | Наверх | Cообщить модератору

    90. "Опубликована третья порция эксплоитов АНБ"  +1 +/
    Сообщение от ACCA (ok), 16-Апр-17, 04:51 
    > Чаво-чаво? Откуда железный уровень вообще может знать об этих самых границах?

    Ну, начать с того, что там невозможно сказать "занести в регистр значение памяти с адреса 0x122200000". Сначала нужно объявить - "по адресу 0x122200000 находится переменная 2 длиной 8 байтов", а только потом ты сможешь сказать "занести в регистр переменную 2".

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

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

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

    114. "Опубликована третья порция эксплоитов АНБ"  +1 +/
    Сообщение от Аноним (-), 17-Апр-17, 11:14 
    Там ключевое не количество команд, а длина линии кэша. Сейчас она, вроде, 512 байт, и растёт с каждым поколением.

    Это стало необходимым после того, как скорость процессора на 2 порядка стала превышать скорость работы памяти.

    Введение кэша потребовало ещё одного изменения: теперь данные из памяти читаются блоками, кратными длине линии кэша. Даже если нужен 1 байт, будет прочитана вся линия. Отсюда же рекомендация выравнивать данные по размеру линии для ускорения доступа.

    Размер линии выбирается таким образом, чтобы пока память читает, процессор успел выполнить всё прочитанное в прошлый раз.

    > Эльбрус не гадает

    x86 тоже. Команды явно указывают размер операндов в памяти.

    xor rax,rax
    @@:
    mov edx,[rbx]
    stosq
    mov [rdi],edx
    add rdi,4
    add rbx,4
    loop @b

    > анализа с неограниченой глубиной

    Неограниченное в дискретных системах? Ты накурился?

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

    117. "Опубликована третья порция эксплоитов АНБ"  +/
    Сообщение от Andrey Mitrofanov (?), 17-Апр-17, 11:36 
    >> Эльбрус не гадает
    > x86 тоже. Команды явно указывают размер операндов в памяти.

    ..., а в Советской России память указывает командам размер[там выше было даже про "тип"?] операндов. {}{}{}{}

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

    118. "Опубликована третья порция эксплоитов АНБ"  –2 +/
    Сообщение от Аноним (-), 17-Апр-17, 11:45 
    В одном случае тип хранится в коде (сегмент кода), в другом - в памяти (сегмент данных).

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

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

    121. "Опубликована третья порция эксплоитов АНБ"  +/
    Сообщение от Аноним (-), 18-Апр-17, 06:05 
    > Чаво-чаво? Откуда железный уровень вообще может знать об этих самых границах?

    Ты не видел поддержку Intel MPX в новых GCC, иначе не задавал бы такие вопросы.

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

    Архив | Удалить

    Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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