[comp.unix.wizards] UNIX-WIZARDS Digest V12#089

jfjr@mbunix.mitre.org (05/10/91)

  I have sent this out before and have seen nothing. I suspect
we are having site problems or maybe I am just being ignored
If I importune I am sorry.

  My question: How are threads - light weight processes implemented
without going into the kernel - I beleive ISIS does this

                             Jerry Freedman,Jr
                             jfjr@mbunix.mitre.org

lm@slovax.Eng.Sun.COM (Larry McVoy) (05/12/91)

jfjr@mbunix.mitre.org writes:
>   My question: How are threads - light weight processes implemented
> without going into the kernel - I beleive ISIS does this

The short answer to your question is (I think) that all threads will block
when any of them enter the kernel & block.

The longer answer is that anyone can write the context switching code in
userland and allocate multiple stacks (I did this myself as a grad student
just for grins; fun but mostly useless because of the blocking).

There is some example code available on cs.arizona.edu in the sr subdir.
Pick up the tar file, unpack, and look in rts.
---
Larry McVoy, Sun Microsystems     (415) 336-7627       ...!sun!lm or lm@sun.com