Deep programming thread

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”

  1. 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.

Comments are closed.