*BSD News Article 83645


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!news.mira.net.au!news.vbc.net!vbcnet-west!news13.agis.net!agis!newsgod1.agis.net!agis!news4.agis.net!agis!www.nntp.primenet.com!nntp.primenet.com!dciteleport.com!newsfeed.internetmci.com!feed1.news.erols.com!howland.erols.net!news.bbnplanet.com!cam-news-hub1.bbnplanet.com!uunet!in1.uu.net!ott.istar!istar.net!gateway.qnx.com!not-for-mail
From: doug@qnx.com (Doug Santry)
Newsgroups: comp.unix.bsd.freebsd.misc
Subject: Re: Threading
Date: 26 Nov 1996 14:51:06 -0500
Organization: QNX Software Systems
Lines: 44
Message-ID: <57fhna$l8j@qnx.com>
References: <554o8n$9hb@wormer.fn.net> <3289939D.414A@wgold.demon.co.uk> <1996Nov13.165401.2044@wavehh.hanse.de> <56ffr0$o01@Mercury.mcs.net>
NNTP-Posting-Host: qnx.com

In article <56ffr0$o01@Mercury.mcs.net>,
Tim Daneliuk <tundra@tundraware.com> wrote:
>In article <1996Nov13.165401.2044@wavehh.hanse.de>,
>Martin Cracauer <cracauer@wavehh.hanse.de> wrote:
>>James Mansion <james@wgold.demon.co.uk> writes:
>>
>>>I'm interested in systems that have multi-thread facilities - I'm
>>>porting some C++ software across them, and looking at them as
>>>development platforms.
>>
>>>I'm using LinuxThreads on Linux 2.0.x at the moment (plus various
>>>others eg Win32 etc).
>>
>>>I've looked at www.freebsd.org but can't find any information on
>>>rfork(2) (?) or thread libraries - can someone point me at a
>>>reference or summarise?
>>
>>On systems of the FreeBSD-2.2-family (that are snapshots and -current
>>until a few days ago and a ALPHA release RSN) you can go to
>>/usr/src/lib/libc_r and do a `make install` there. You have to have
>>the sources and rebuild them, they are not normally installed on
>>binary snapshots or distributions.
>>
>>libc_r is a library that includes a pthreads package (derived from MIT
>>pthreads) and replacements for parts of the C library to make them
>>thread-save.
>>
>>I've been called you can move the library (and include files) over to
>>2.1.5 and use them there, but I didn't try that by myself.
>>
>
>However, these are really just user-space threads, right?  That is, the kernel
>itself is still not multi-threaded as I understand it.  This means that
>you have the API illusion of threading, but when a thread blocks in user
>space, the whole process context in which it is running is also blocked.

I have a kernel-managed threads package for 2.1 that I wrote.  You can 
malloc after a thread creation and everything.  email me if you are
interested.  Somebody has it available on an ftp site somewhere but I
forget where.  I could tar it up for you and mail it.  I was going to
put a pthread wrapper around it but FreeBSD never used my code so I
figured why bother if nobody is going to use it.

DJS