You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GDB中获取AArch64架构的tpidr_el0系统寄存器值

在GDB中获取AArch64架构的tpidr_el0寄存器值

针对你在AArch64架构下无法通过info registers或info registers all找到tpidr_el0寄存器的问题,有以下几种直接的解决方法:

  • 直接打印寄存器值:执行命令 print $tpidr_el0,GDB支持直接通过寄存器名访问该系统寄存器,输出结果就是线程控制块(TCB)的地址。
  • 查看系统寄存器组:如果上述命令未生效,尝试执行 info registers system,这个命令会列出所有系统级寄存器,tpidr_el0会包含在其中。

调试TLS变量的额外技巧

拿到tpidr_el0的值后,若已知目标TLS变量的偏移量,可以通过内存访问命令直接查看变量内容,比如:

print *(int *)($tpidr_el0 + 0x10)

(注:0x10为示例偏移量,需替换为实际变量的TLS偏移)

内容的提问来源于stack exchange,提问作者li junlong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 14:32:32