在Linux中动态进行二进制修补后的其他线程中的Invalide ICache(使用IPI?)

时间:2015-09-06 04:42:39

标签: linux x86-64 interrupt

我正在尝试找到一种在Linux中编程IPI的方法,看看它是否可用于刷新跨多个核心的指令缓存(x86_64)。刚刚在[1]找到了类似的Windows功能。 Linux中是否有相同的功能?我是否需要成为内核模式才能发布IPI?有没有办法从用户土地那里做到这一点?

[1] https://msdn.microsoft.com/en-us/library/windows/desktop/ms683148(v=vs.85).aspx

1 个答案:

答案 0 :(得分:3)

你正在以太低的抽象级别来看待它。只需使用cacheflush()系统调用 - http://man7.org/linux/man-pages/man2/cacheflush.2.html

即可