标签: c linux pthreads
我正在实现一个线程库并阅读glibc / nptl(pthreads)的源代码。最困难的部分是了解如何实现TLS(线程本地存储),因为它的文档记录很差。似乎标准化和实现它的人只是在这个问题上投入了大量的魔力(设计的东西,除非你是一个内核维护者或C语言ISO规范作者,否则是不可能的),然后继续前进。
我遇到的具体问题是_dl_allocate_tls的实现。有关Linux / x86_64上的TLS的任何文档也会有所帮助。谢谢!