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.

To respond on your own website, enter the URL of your response which should contain a link to this post's permalink URL. Your response will then appear (possibly after moderation) on this page. Want to update or remove your response? Update or delete your post and re-enter your post's URL again. (Find out more about Webmentions.)

Mentions

  • Jonas Sundström