<!-- MHonArc v2.4.4 --> <!--X-Subject: [MUD-Dev] Re: [Java] multithreading: update and a question --> <!--X-From-R13: @nguna T Kbfcr <lbfcrNunjnvv.rqh> --> <!--X-Date: Wed, 15 Jul 1998 18:53:09 -0700 --> <!--X-Message-Id: Pine.GSO.3.95q.980715154725.23263A-100000@uhunix1 --> <!--X-Content-Type: text/plain --> <!--X-Reference: 35AC1B7D.10A17A2C#freehold,crocodile.org --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, [MUD-Dev] Re: [Java] multithreading: update and a question</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:yospe#hawaii,edu"> </head> <body background="/backgrounds/paperback.gif" bgcolor="#ffffff" text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000"> <font size="+4" color="#804040"> <strong><em>MUD-Dev<br>mailing list archive</em></strong> </font> <br> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] <br clear=all><hr> <!--X-Body-Begin--> <!--X-User-Header--> <!--X-User-Header-End--> <!--X-TopPNI--> Date: [ <a href="msg00232.html">Previous</a> | <a href="msg00234.html">Next</a> ] Thread: [ <a href="msg00234.html">Previous</a> | <a href="msg00206.html">Next</a> ] Index: [ <A HREF="author.html#00233">Author</A> | <A HREF="#00233">Date</A> | <A HREF="thread.html#00233">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>[MUD-Dev] Re: [Java] multithreading: update and a question</H1> <HR> <!--X-Subject-Header-End--> <!--X-Head-of-Message--> <UL> <LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI> <LI><em>Subject</em>: [MUD-Dev] Re: [Java] multithreading: update and a question</LI> <LI><em>From</em>: Nathan F Yospe <<A HREF="mailto:yospe#hawaii,edu">yospe#hawaii,edu</A>></LI> <LI><em>Date</em>: Wed, 15 Jul 1998 15:51:37 -1000</LI> <LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI> </UL> <!--X-Head-of-Message-End--> <!--X-Head-Body-Sep-Begin--> <HR> <!--X-Head-Body-Sep-End--> <!--X-Body-of-Message--> <PRE> On Tue, 14 Jul 1998, Vadim Tkachenko wrote: Surprised JCL hasn't snapped this yet... :Hello, :Just read the article about Java/Solaris implementation of :multithreading and have some questions. :Okay, they say, there are 3 MT models: :one-to-one: one user thread corresponds to one kernel thread, this <snip> :many-to-one: all the user thread map to one kernel thread (process), <snip> :many-to-many: there are N user threads and M kernel threads, and the <snip> :around, and the article claims that Solaris is the only OS which :supports this kind of thing (they say Windows, OS/2 and AIX have :one-to-one model). From the SGI developer's pages (requires a password): The POSIX specification evolved over several years and 10 drafts. Early drafts exist as real implementations - DCE contains an implementation of Draft 4 for example. Although POSIX is a standard it still contains options and an application has -- to take appropriate steps to ensure real portability on compliant systems. The pthreads interfaces deliberately permit several implementation strategies: Many-to-one - uses a single kernel execution vehicle to execute the pthreads by multiplexing between them and being very careful to avoid blocking in the kernel and starving runnable pthreads. The default DCE package uses this model. This scheme doesn't scale to multiprocessors. Switching between pthreads is always in user space and therefore relatively cheap. Some implementation synchronisation details are simpler and the implementation can be portable. There is a cost in complexity when dealing with blocking system calls. One-to-one - uses one kernel execution vehicle per pthread. This scales to MP systems and makes the implementation fairly simple. Context switches between pthreads though are done through the kernel and each pthread is a comparatively costly beast. Many-to-few - uses a pool of kernel execution vehicles to run the pthreads. This model scales to MP systems and can use user space context switching. The major cost is implementation complexity. [This is the SGI pthreads model.] - Looks like SGI's got the same thing, based on this. -- Nathan F. Yospe - Aimed High, Crashed Hard, In the Hanger, Back Flying Soon Jr Software Engineer, Textron Systems Division (On loan to Rocketdyne Tech) (Temporarily on Hold) Student, University of Hawaii at Manoa, Physics Dept. yospe#hawaii.edu nyospe#premier.mhpcc.af.mil <A HREF="http://www2.hawaii.edu/~yospe/">http://www2.hawaii.edu/~yospe/</A> </PRE> <!--X-Body-of-Message-End--> <!--X-MsgBody-End--> <!--X-Follow-Ups--> <HR> <!--X-Follow-Ups-End--> <!--X-References--> <UL><LI><STRONG>References</STRONG>: <UL> <LI><STRONG><A NAME="00219" HREF="msg00219.html">[MUD-Dev] [Java] multithreading: update and a question</A></STRONG> <UL><LI><EM>From:</EM> Vadim Tkachenko <vt#freehold,crocodile.org></LI></UL></LI> </UL></LI></UL> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg00232.html">[MUD-Dev] Re: [Java] multithreading: update and a question</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00234.html">[MUD-Dev] Re: [Java] multithreading: update and a question</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00234.html">[MUD-Dev] Re: [Java] multithreading: update and a question</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00206.html">[MUD-Dev] [OT] Private emails</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00233"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00233"><STRONG>Thread</STRONG></A></LI> </UL> </LI> </UL> <!--X-BotPNI-End--> <!--X-User-Footer--> <!--X-User-Footer-End--> <ul><li>Thread context: <BLOCKQUOTE><UL> <LI><STRONG>[MUD-Dev] Re: [Java] multithreading: update and a question</STRONG>, <EM>(continued)</EM> <ul compact> <ul compact> <LI><strong><A NAME="00235" HREF="msg00235.html">[MUD-Dev] Re: [Java] multithreading: update and a question</A></strong>, Vadim Tkachenko <a href="mailto:vt#freehold,crocodile.org">vt#freehold,crocodile.org</a>, Thu 16 Jul 1998, 04:40 GMT </LI> </ul> </ul> </LI> <LI><strong><A NAME="00219" HREF="msg00219.html">[MUD-Dev] [Java] multithreading: update and a question</A></strong>, Vadim Tkachenko <a href="mailto:vt#freehold,crocodile.org">vt#freehold,crocodile.org</a>, Wed 15 Jul 1998, 03:02 GMT <UL> <LI><strong><A NAME="00231" HREF="msg00231.html">[MUD-Dev] Re: [Java] multithreading: update and a question</A></strong>, J C Lawrence <a href="mailto:claw#under,engr.sgi.com">claw#under,engr.sgi.com</a>, Wed 15 Jul 1998, 18:43 GMT <UL> <LI><strong><A NAME="00234" HREF="msg00234.html">[MUD-Dev] Re: [Java] multithreading: update and a question</A></strong>, Vadim Tkachenko <a href="mailto:vt#freehold,crocodile.org">vt#freehold,crocodile.org</a>, Thu 16 Jul 1998, 04:17 GMT </LI> </UL> </LI> <LI><strong><A NAME="00233" HREF="msg00233.html">[MUD-Dev] Re: [Java] multithreading: update and a question</A></strong>, Nathan F Yospe <a href="mailto:yospe#hawaii,edu">yospe#hawaii,edu</a>, Thu 16 Jul 1998, 01:53 GMT </LI> </UL> </LI> <LI><strong><A NAME="00206" HREF="msg00206.html">[MUD-Dev] [OT] Private emails</A></strong>, Richard Woolcock <a href="mailto:KaVir#dial,pipex.com">KaVir#dial,pipex.com</a>, Tue 14 Jul 1998, 18:05 GMT <LI><strong><A NAME="00205" HREF="msg00205.html">[MUD-Dev] Re: Affordances and social method (Was: Re: Wired Magazine...)</A></strong>, Maddy <a href="mailto:maddy#fysh,org">maddy#fysh,org</a>, Tue 14 Jul 1998, 13:24 GMT <UL> <li><Possible follow-up(s)><br> <LI><strong><A NAME="00220" HREF="msg00220.html">[MUD-Dev] Re: Affordances and social method (Was: Re: Wired Magazine...)</A></strong>, Damion Schubert <a href="mailto:zjiria#texas,net">zjiria#texas,net</a>, Wed 15 Jul 1998, 04:38 GMT </LI> </UL> </LI> <LI><strong><A NAME="00203" HREF="msg00203.html">[MUD-Dev] Amit's Games Programming Page</A></strong>, Ling <a href="mailto:K.L.Lo-94#student,lboro.ac.uk">K.L.Lo-94#student,lboro.ac.uk</a>, Tue 14 Jul 1998, 11:01 GMT </UL></BLOCKQUOTE> </ul> <hr> <center> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] </center> <hr> </body> </html>