Я ищу аккуратный способ ловушки и возни с инструкцией CPUID процессов Linux. Поиграл с ptrace() и исправил все коды операций cpuid во всех исполняемых областях mmap'ed, созданных процессом, заменив их на int3. Не очень хорошо сработало, поскольку байты кода операции CPUID довольно часто появляются как части других более длинных кодов операций.
Итак, в основном я ищу способ, который позволит мне установить точку останова не на конкретный адрес памяти, а вместо этого на каждый вызов кода операции. У кого-нибудь есть хорошая идея, как это сделать?