On Sun, 26 Sep 2004 01:11:56 -0400
"Steven T. Hatton"
I was under the impression that that's pretty much what's going on with the TLS model discussed in Drepper's paper. There is a global set of indexes mapped to the running threads. The only thing preventing threads from stepping on eachother's storage is good behavior. I believe the main emphasis of the TLS model is to provide a way to maintaining per-thread 'static' storage for each function that uses static variables.
Since all threads run in the context of the parent, virtually any memory used by an individual thread could be stepped on by another thread, including stack. TLS provides th appearance of static storage that can be set up at compile-time, and is relatively thread-private. The alternative mechanism that I mentioned is a global data structure, that could be easily trashed by misbehaving threads. -- Jerry Feldman
Boston Linux and Unix user group http://www.blu.org PGP key id:C5061EA9 PGP Key fingerprint:053C 73EC 3AC1 5C44 3E14 9245 FB00 3ED5 C506 1EA9