Matthew Dillon, David Xu, and Joerg Sonnenberger have been having an extended conversation on kernel@ about RTLD, TLS, and other things – look for the “kernel library interfacing layer” topic if you want to browse it. All three of these guys are heavyweight kernel programmers, so it goes in-depth.
One Reply to “Deep programming thread”
Comments are closed.
Mini guide to not-understanding-it slightly less:
TCB = Thread Control Block
TLS = Thread-Local Storage.
RTLD = run-time link-editor
The %eax, %gs, etc, are i386 processor registers, in assembly notation. (The AT&T/gas variety, as opposed to Intel/Nasm syntax.) A little assembly is necessary (in libc) for the rather narrow syscall kernel interface, pushing arguments to the kernel and getting back a return value and the eventual ‘errno’.
The argument appears to be how to best implement forward/backward compatibility in kernel/library/userland, so future kernel interface changes won’t have to spell doom for old binaries.