везде прав, только сложность реализации. Сейчас нужно «всего лишь» переключить адресное пространство во время системного вызова. А в вашем случае переписывать кэши и много чего еще.
спасибо, стало понятней. Но для решение достаточно не шарить ntdll, а грузить каждому процессу свой экземпляр или нет? Да это небольшой перерасход оперативной памяти, но это мелочи.
я про spectre многие говорят, типо от нее вообще нельзя избавится у AMD судя по всем получилось. От Meltdown помогает программный патч. хоть и тормозной
Мы можем читать любую память, включая память ядра. Файловый кэш хранится в памяти ядра. Собственно все. Естественно, если файла нету в кэше, то его не удастся прочитать.
механизм чтения я понял, но вроде как читать ядро нельзя с помощью spectre, а как читать другой процесс мне вообще не понятно. У нас же с ним разные линейные адреса.
Все что вы написали не верно.
1. Вероятность прочитать правильно 99.97% (0.9997 если говорить в ТВ)
2. То что мы читаем не обязано быть в кэше, кэш используется для извлечения данных, читать можем что угодно.
3. Читать можно файловый кэш к примеру. Вроде как для js убрали эти примочки, но к примеру запуск flash может быть очень неприятный
Амд сделали патч, без падения производительности.
амд уже пофиксили без потери производительности
1. Вероятность прочитать правильно 99.97% (0.9997 если говорить в ТВ)
2. То что мы читаем не обязано быть в кэше, кэш используется для извлечения данных, читать можем что угодно.
3. Читать можно файловый кэш к примеру. Вроде как для js убрали эти примочки, но к примеру запуск flash может быть очень неприятный