FreeBSD Threading Documentation

Alfred Perlstein alfred at freebsd.org
Mon Feb 11 07:18:11 PST 2008


* Olaf Wagner <wagner at luthien.in-berlin.de> [080210 23:35] wrote:
> On Sun, Feb 10, 2008 at 07:13:25PM -0800, Alfred Perlstein wrote:
> > * Olaf Wagner <wagner at luthien.in-berlin.de> [080210 18:37] wrote:
> > > I haven't found much, so I think I'll have to ask here after all:
> > > 
> > > Is there any overview article or design document about the
> > > different threading implementations in FreeBSD?
> > 
> > There have been a few approaches taken over the years,
> > an N-1(libc_r), N-M(libkse) and N-N (libthr).
> > 
> > Currently FreeBSD supports pthreads using libthr which
> > is pretty much the same way that Solaris and Linux support
> > pthreads.
> 
> That's about how much I had already figured out :-)
> I am looking for something a little bit longer (let's
> say about 5-12 pages) which discusses the design and compares 
> two or more of the solutions. Or is the source code the
> only available documentation?
> 
> The FreeBSD documentation project has amassed such a wealth
> of information, but I couldn't find anything related to threads,
> which does not seem a very uncommon topic to me.
> 
> The reason because I'm asking is that I've started to use
> FreeBSD's system threading libraries for CM3 instead of the
> built-in user threads system, and there are several interesting
> effects (hangs, assertion failures, ...) with one or the other
> of the libraries, which may either be located in M3 or in C
> code.

I'm not aware of a document like that.

If you work with the current thread maintainers you might be able
to get assertion hooks and further debug assistance.

Good luck,
-- 
- Alfred Perlstein


More information about the freebsd-threads mailing list