From owner-freebsd-current@FreeBSD.ORG Mon Oct 30 05:22:40 2006 Return-Path: X-Original-To: current@freebsd.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C1DDE16A417; Mon, 30 Oct 2006 05:22:40 +0000 (UTC) (envelope-from prvs=julian=45182861c@elischer.org) Received: from a50.ironport.com (a50.ironport.com [63.251.108.112]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8543543D4C; Mon, 30 Oct 2006 05:22:40 +0000 (GMT) (envelope-from prvs=julian=45182861c@elischer.org) Received: from unknown (HELO [192.168.2.4]) ([10.251.60.124]) by a50.ironport.com with ESMTP; 29 Oct 2006 21:22:40 -0800 Message-ID: <45458C1F.5000006@elischer.org> Date: Sun, 29 Oct 2006 21:22:39 -0800 From: Julian Elischer User-Agent: Thunderbird 1.5.0.7 (Macintosh/20060909) MIME-Version: 1.0 To: Scott Long References: <917908193.20061027102647@serebryakov.spb.ru> <20061027103924.F79313@fledge.watson.org> <45426071.7020403@elischer.org> <602423478.20061028001449@serebryakov.spb.ru> <4542896D.1050001@elischer.org> <20061027231642.GJ30707@riyal.ugcs.caltech.edu> <45429703.8070305@elischer.org> <20061028104741.Q69980@fledge.watson.org> <45442A35.2030803@elischer.org> <20061029090309.T27107@fledge.watson.org> <4544D4FC.4070201@samsco.org> In-Reply-To: <4544D4FC.4070201@samsco.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Lev Serebryakov , Paul Allen , Robert Watson , current@freebsd.org Subject: Re: KSE, libpthread & libthr: almost newbie question X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 30 Oct 2006 05:22:40 -0000 Scott Long wrote: > Robert Watson wrote: >> >> On Sat, 28 Oct 2006, Julian Elischer wrote: >> >>> Robert Watson wrote: >>>> >>>> On Fri, 27 Oct 2006, Julian Elischer wrote: >>>> >>>>> there is class of problems (e.g. some java programs) that have >>>>> THOUSANDS of threads, each representing an active aspect of some >>>>> object. How do you put an rlimit on that without either 1/ stopping >>>>> the program from working or 2/ allowing thousands of threads to >>>>> exist but not screwing other users. >>>> >>>> Does the JVM actually expose thousands of threads to the OS, or does >>>> it actually do its own M:N threading internally based on its >>>> execution model? My impression is the latter, exposing threads to >>>> the OS only when it needs them to consume kernel or CPU resources. >>> >>> I don't know the answer to that question, only that there is a class >>> of program style that uses this model. >> >> FYI, last night following comments about the change away "green >> threads", I ran some simple tests with the 1.4.2 JVM. It appears >> that, at least in my simple test cases, all threads created in the JVM >> are exposed to the OS. Typically this appears to be about n+8 to n+9 >> threads, where n is the number of threads created by the application >> itself, and 8/9 is the number created by the JVM. I assume the >> variance of one is likely the garbage collector kicking in every now >> and then (or something along those lines). >> > > This is correct. The JVM maps all threads directly into the native > threading mechanism provided by the OS. 'Green threads' have been > defunct since Java 1.3, and no other magic happens behind the scenes. > so, why does it use 1:1 threads? who knows what the thinking here was? > Scott > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"