Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
如果我想挂钩sys_read那么我可以使用sysent[SYS_read].sy_call来挂钩该函数。
但是我怎样才能挂钩mi_switch?除了运行时内核内存修补之外没有其他方法吗?
通过运行时内存修补,我假设我应该添加一条指令并从 mi_switch 调用我的系统调用。
一个可能但非常肮脏的技巧可能是设置 kdb_active 并调用 kdb_jumpbuf() 来操作 kdb_jmpbufp。然后让 kdb_reenter() 中的 longjmp() 在你的函数中结束。