Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Sep 2000 16:15:42 +0200
From:      "Ralf S. Engelschall" <rse@engelschall.com>
To:        freebsd-hackers@freebsd.org
Subject:   Re: makecontext & friends ?
Message-ID:  <20000908161542.A87619@engelschall.com>

next in thread | raw e-mail | index | archive | help

In article <20000908151942.A15852@lamu.hermes.si> you wrote:

> are there any plans to implement makecontext() & friends
> functions in FreeBSD? 

I don't know of any plans myself, but I would appreciate that we support this
standardized ucontext(3) API in FreeBSD. The API is actually not the problem,
the question is on what should this API internally be based? On an own
mechanism or on an existing mechanism (jmp_buf, etc)?

> Is there any other way to implement user-level threads?
> (I know it can be done in assembler, but this is not 
> portable)

Sure, it can. See my GNU Portable Threads under
http://www.gnu.org/software/pth/. We have a port under devel/pth,
too. It bases its user-land threads on ucontext(3) if available or on
setjmp(3)'s jmp_buf, etc. All without any assembler things. For details
read my USENIX paper under http://www.gnu.org/software/pth/rse-pmt.ps.

> Using pthreads is not an option for me, although pthreads
> are implemented as userlevel threads in FreeBSD, but not
> on most other Unixes.

If you need maximum portability, then GNU Pth certainly is an option for
you.
                                       Ralf S. Engelschall
                                       rse@engelschall.com
                                       www.engelschall.com


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000908161542.A87619>