threads (was Re: [gclist] Re: gclist-digest V3 #84)
Tue, 27 Jun 2000 17:16:00 -0700 (PDT)
r> If it comes to that, operating system threads are not a single
r> thing: Solaris has two layers of threads, one "mediumweight" and
r> the other "lightweight" multiplexed on the lower layer.
Yep. Solaris separates the world into processes, LWPs, and threads.
The former two exist at the OS level; a process may contain multiple
LWPs. Threads then map many-to-many onto LWPs.
r> (Actually, I don't understand Solaris threads as well as I like.
r> In particular, I don't know whether POSIX threads are a third kind
r> of thread, or a rebranding of one of the other kinds.)
Solaris threads and POSIX threads both sit atop LWPs, and share a fair
amount of internal code. If you have Solaris source code access,
you'll notice that there's quite a bit of magic in libc to handle Java
runtime issues, too.
Perhaps it might be best to continue this discussion on
comp.programming.threads, as I see a lot of points that have been made
over and over, and little relevance to garbage collection.