书中95页讲到:x86-64上存储TLS 是FS,AArch64 上是TPIDR_EL0。 我想该讲述应该是基于linux的,给读者感觉包含的逻辑可能是: TLS 是cpu 架构决定的。但TLS的实现方式我认为是 os-specific的,用户(或者说编译器)有较大的自由,一定程度上可以类比calling convention,与cpu并无决定关系。如x86-64 linux上使用FS;x86-64 windows上的 64bit mode的进程使用GS寄存器,32bit mode进程使用FS。 理论上,我们可以通过自制的编译器使用某个通用寄存器,如rbx,或某个全局变量,来达到管理TLS的目的,只是脱离os完全自管理的TLS机制性能会较差。
如有谬误,敬请指出!