I'm in the process of coding of a (sort-of) alternate threading library on top of libc and pthreads. Because of my problems with signal handling, I've become a bit familiar with thread implementation within libc and it seems pretty bulky. Adding my own "thread implementation" on top of this bulk introduces further complexities as it basically duplicates a part of functionality that is already present in libc internals.
I'd like to use the "raw" OS interfaces for threading and signal handling: LWPs and custom "raw" signal handlers which can even be installed through setsigacthandler() [the symbol is even GLOBAL in libc.so, as reported by nm, only undocumented]. Two questions: 1. Where can I find further documentation on those (semi-)public interfaces? 2. Assuming that I can ensure that libc is accessed "as if" from a single-threaded program, what other problems can I expect? I have not yet decided to go down this route - I'd like to know whether it's possible to implement alternative threading mechanisms w/o adapting a huge part of libc? This message posted from opensolaris.org _______________________________________________ opensolaris-code mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/opensolaris-code
