Сообщение Re[9]: Meltdown and Spectre от 08.01.2018 13:28
Изменено 08.01.2018 13:29 ononim
Re[9]: Meltdown and Spectre
O>>Можно, но это сильно загрубит разрешение такого измерителя времени. Помни — хакеру нужно измерить время вычитки одного слова из памяти.
Pzz>Скорость чтения из памяти очень сильно отличается от скорости чтения из кеша. Полагаю, таймер, который считает с точностью до нескольких десятков, если не сотен, команд, является достаточно точным для этой цели.
Pzz>А еще у интела есть такие замечательные команды, которые читают мимо кеша — чтобы кеш не загрязнять ради того, что больше не потребуется. Так вот, предвыборку в кеш они не запускают, но если данные и до них лежат в кеше, небось, ими не брезгуют (это надо бы проверить, это лишь мое предположение). Так вот, если это правда так, такую командочку можно и в цикле запустить...
Брр. Цикл нужен для подсчета времени. Команда чтения из памяти, какая бы она ни была — должна крутиться на другом ядре.
Распарсить цикл в десяток команд чтобы понять чем занимается подозрительный тред не так уж сложно. В х64 винде SEH через дизасм работает и все щастливы.
Pzz>Скорость чтения из памяти очень сильно отличается от скорости чтения из кеша. Полагаю, таймер, который считает с точностью до нескольких десятков, если не сотен, команд, является достаточно точным для этой цели.
Pzz>А еще у интела есть такие замечательные команды, которые читают мимо кеша — чтобы кеш не загрязнять ради того, что больше не потребуется. Так вот, предвыборку в кеш они не запускают, но если данные и до них лежат в кеше, небось, ими не брезгуют (это надо бы проверить, это лишь мое предположение). Так вот, если это правда так, такую командочку можно и в цикле запустить...
Брр. Цикл нужен для подсчета времени. Команда чтения из памяти, какая бы она ни была — должна крутиться на другом ядре.
Распарсить цикл в десяток команд чтобы понять чем занимается подозрительный тред не так уж сложно. В х64 винде SEH через дизасм работает и все щастливы.
Re[9]: Meltdown and Spectre
O>>Можно, но это сильно загрубит разрешение такого измерителя времени. Помни — хакеру нужно измерить время вычитки одного слова из памяти.
Pzz>Скорость чтения из памяти очень сильно отличается от скорости чтения из кеша. Полагаю, таймер, который считает с точностью до нескольких десятков, если не сотен, команд, является достаточно точным для этой цели.
Pzz>А еще у интела есть такие замечательные команды, которые читают мимо кеша — чтобы кеш не загрязнять ради того, что больше не потребуется. Так вот, предвыборку в кеш они не запускают, но если данные и до них лежат в кеше, небось, ими не брезгуют (это надо бы проверить, это лишь мое предположение). Так вот, если это правда так, такую командочку можно и в цикле запустить...
Брр. Цикл нужен для подсчета времени. Команда чтения из памяти, какая бы она ни была — должна крутиться на другом ядре _вне_ этого цикла.
Распарсить цикл в десяток команд чтобы понять чем занимается подозрительный тред не так уж сложно. В х64 винде SEH через дизасм работает и все щастливы.
Pzz>Скорость чтения из памяти очень сильно отличается от скорости чтения из кеша. Полагаю, таймер, который считает с точностью до нескольких десятков, если не сотен, команд, является достаточно точным для этой цели.
Pzz>А еще у интела есть такие замечательные команды, которые читают мимо кеша — чтобы кеш не загрязнять ради того, что больше не потребуется. Так вот, предвыборку в кеш они не запускают, но если данные и до них лежат в кеше, небось, ими не брезгуют (это надо бы проверить, это лишь мое предположение). Так вот, если это правда так, такую командочку можно и в цикле запустить...
Брр. Цикл нужен для подсчета времени. Команда чтения из памяти, какая бы она ни была — должна крутиться на другом ядре _вне_ этого цикла.
Распарсить цикл в десяток команд чтобы понять чем занимается подозрительный тред не так уж сложно. В х64 винде SEH через дизасм работает и все щастливы.