ideas about threading lib switching

Simon 'corecode' Schubert corecode at fs.ei.tum.de
Wed Apr 11 09:56:53 PDT 2007


Hey,

I think we all agree that we want to have the ability to switch between threading libs.  But for this not to result in chaos, it must be guaranteed that only one of the threading libs is used in one process.

Additionally, I'd like it to be easily switchable, on a per-run basis probably.  So I was thinking of something like this:

Have a generic "proxy" lib called libpthread.so.0 or so, which defines the available functions and where all binaries can be linked against.  This lib however does not provide any functionality.  Instead, there would be some way that this lib (or rtld, or so)  decides on execution time (or whenever it is being runtime linked) which real threading lib to load.  Some sort of objformat, just for libs.

However, I don't know how we can do this.  Does anybody have input, ideas?  One way would be to use rtld/libmap, like in FreeBSD, but I don't 100% like this approach.  I'd like to find something more elegant.  But I'm kind of stuck here, maybe somebody has some ideas to contribute?

Did I even make sense or made myself clear?

cheers
 simon
--
Serve - BSD     +++  RENT this banner advert  +++    ASCII Ribbon   /"\
Work - Mac      +++  space for low €€€ NOW!1  +++      Campaign     \ /
Party Enjoy Relax   |   http://dragonflybsd.org      Against  HTML   \
Dude 2c 2 the max   !   http://golden-apple.biz       Mail + News   / \
Attachment:
signature.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pgp00005.pgp
Type: application/octet-stream
Size: 252 bytes
Desc: "Description: OpenPGP digital signature"
URL: <http://lists.dragonflybsd.org/pipermail/kernel/attachments/20070411/60950f20/attachment-0017.obj>


More information about the Kernel mailing list