Messages in this thread | | | Date | Fri, 17 Dec 1999 16:15:37 -0800 | From | Brian Pomerantz <> | Subject | Re: RasterMan on linux and threads |
| |
On Fri, Dec 17, 1999 at 11:23:48PM -0500, Stephen Frost wrote: > > > > hmm - when did that change ? i thought that was the case and was baked > > up on hat asumtion by someone else a few weeks ago (primarily the > > reason being to make sure the threads share caches for speed reasons > > and to make sure cache concurrency issues are moe easiyl dealt with... > > well thats what i unerstood... i may be wrong (2.2 or 2.3 may have > > changed that) > > No, pthreads changed that, from my understanding. linuxthreads did > it all in one thing w/o ever actually calling the kernel 'clone'. pthreads > properly calles 'clone' and therefore each thread gets it's own PID and as > such can be scheduled on any CPU. (Well, that's not the direct reason, but > you know what I mean). >
Not quite. Linuxthreads has always used clone and is an attempt to implement the POSIX threading spec. There has been a number of pthread implementations over the years that were strictly user space. I think there is a GNU threads or something like that which is still a user-space pthread implementation.
> > > hmmm - when did that change - i know solarids has them run on multiple > > cpu's though... > > Solaris implemented it kernel-level to begin with. The first > threading in Linux was done all in user-space, IIRC. Which meant that it > couldn't because a single process (to the kernel) won't get multiple CPUs. >
Solaris and True64 (AIX as well?) have both user-space thread control as well as kernel threading which is taken care of by the kernel. With these you can switch between being user-space and kernel threads, though I don't see the wisdom in this. The philosophy of these other platforms are much different than the Linux way of handling threads.
BAPper
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |