3 ms·
1. contemporary central processing units have large instruction and data caches. 2. ptrace() modifies the currently debugged program. 3. if the program curren
by Annatar 10y ago
1. contemporary central processing units have large instruction and data caches.
2. ptrace() modifies the currently debugged program.
3. if the program currently being debugged is sufficiently small, it might end up in the processor's instruction cache.
4. instruction cache invalidation, at least on some processors like MC68000 family, causes crashes.
5. since ptrace() effectively performs the equivalent of self-modifying code, how is instruction cache invalidation avoided?