【发布时间】:2013-10-04 11:07:21
【问题描述】:
有一次我用 IDA Pro 反汇编了一个 ELF,我发现了一些类似的代码
*mk_fp(\__gs__,12) 或*mk_fp(\__gs__,8) 等等。
这是什么意思?是系统调用还是函数调用?
非常感谢您的帮助
【问题讨论】:
标签: assembly linux-kernel reverse-engineering ida
有一次我用 IDA Pro 反汇编了一个 ELF,我发现了一些类似的代码
*mk_fp(\__gs__,12) 或*mk_fp(\__gs__,8) 等等。
这是什么意思?是系统调用还是函数调用?
非常感谢您的帮助
【问题讨论】:
标签: assembly linux-kernel reverse-engineering ida
我猜mk_fp 的意思是制作远指针,因此这可能是IDA 分别反编译gs:[12] 和gs:[8] 的想法。
在 64 位内核中,gs 段用于存储 per-cpu 内核数据。在32位用户模式下,一般用于线程本地存储。
【讨论】:
libc)定义了布局。